•  
      request #3364 Impossible to login on Tuleap.net with Mylyn tasks
    Infos
    #3364
    Manuel Vacelet (vaceletm)
    2013-05-17 19:32
    2013-05-16 14:47
    2169
    Details
    Impossible to login on Tuleap.net with Mylyn tasks
    as myself, vaceletm
    Mylyn
    6.0
    Empty
    • [ ] enhancement
    • [ ] internal improvement
    Empty
    Stage
    Stéphane Bégaudeau (begaudeaus)
    Closed
    2013-05-17
    Attachments
    Empty
    References
    References list is empty

    Follow-ups

    User avatar
    This bug is fixed, I opened #3399 to tracker the other odd behaviour.

    • Status changed from New to Closed
    • Assigned to changed from None to Stéphane Bégaudeau (begaudeaus)
    • Close date set to 2013-05-17
    • Is an Enhancement or an internal improvement? set to
    User avatar
    I'm not able to update the original submission with the previous content.
    I past the content, click on submit, there is something in progress but no update and no logs
    User avatar
    Hum it seems that original submission was cleared.
    But I don't know if I made a mistake
    User avatar
    I confirm the bug is fixed.
    I managed to replicate the tracker content inside eclipse and I'm using it to post this comment (if you see this, it works!)

    It would be even easier if you could update the "official" site directly.

    Could you give us a pub ssh key so we can add it to the update account ?

    • Original Submission
      Something went wrong, the follow up content couldn't be loaded
      Only formatting have been changed, you should switch to markup to see the changes
    User avatar
    If the comment or the artifact is submitted by an anonymous user, the returned id will be 0.

    We can also return an AnonymousUser in this case but that would be a backward compatibility breakage
    User avatar
    From the stack trace of the exception:
    at org.tuleap.mylyn.task.internal.core.wsdl.soap.v1.CodendiAPIBindingStub.getUserInfo(CodendiAPIBindingStub.java:2815)
    at org.tuleap.mylyn.task.internal.core.net.TuleapSoapConnector.getPersonFromId(TuleapSoapConnector.java:1525)
    at org.tuleap.mylyn.task.internal.core.net.TuleapSoapConnector.populateArtifact(TuleapSoapConnector.java:799)

    We can see that the problem comes from the retrieval of the user info. In the connector we are receiving the comments of an artifact (TuleapSoapConnector.java:799) [1]. The author of one of these comments has the id "0":
    - int submittedBy = artifactComment.getSubmitted_by();

    This identifier is given to us by the tracker SOAP API [2]. Then, we are asking the core SOAP API [3] for the user info for the identifier that we have received (TuleapSoapConnector.java:1525) [4]. Tuleap tells us that this identifier is invalid:
    AxisFault
    faultCode: 0
    faultSubcode:
    faultString: Invalid user id: 0
    faultActor: getUserInfo
    faultNode:
    faultDetail:
    {http://xml.apache.org/axis/}stackTrace:Invalid user id: 0

    Is there a reason why an user identifier received from Tuleap (Tracker SOAP API) would be considered invalid by Tuleap (Core SOAP API)?

    References:
    1: https://github.com/sbegaudeau/mylyn.tasks/blob/tuleap_master/org.tuleap.mylyn.task.core/src/org/tuleap/mylyn/task/internal/core/net/TuleapSoapConnector.java#L799
    2: https://demo.tuleap.net/plugins/tracker/soap/view-wsdl#op.id398250480553
    3: https://demo.tuleap.net/soap/wsdl#op.id398249881351
    4: https://github.com/sbegaudeau/mylyn.tasks/blob/tuleap_master/org.tuleap.mylyn.task.core/src/org/tuleap/mylyn/task/internal/core/net/TuleapSoapConnector.java#L1525
    User avatar
    And after that synchro fails:
    eclipse.buildId=M20130204-1200
    java.version=1.6.0_27
    java.vendor=Sun Microsystems Inc.
    BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
    Command-line arguments:  -os linux -ws gtk -arch x86_64
    
    Error
    Thu May 16 17:08:19 CEST 2013
    Synchronization failed
    
    java.lang.NullPointerException
    
    User avatar
    <p>After having read the doc and entered the right URL it's working, thanks.</p>
    <p>However, I cannot fetch all artifacts (I wanted to add a follow-up to this through eclipse but during synchro ('Default' report in 'Bugs' tracker) I get failure like:</p>
    <pre>
    eclipse.buildId=M20130204-1200
    java.version=1.6.0_27
    java.vendor=Sun Microsystems Inc.
    BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
    Command-line arguments: -os linux -ws gtk -arch x86_64

    Error
    Thu May 16 17:08:19 CEST 2013
    Invalid user id: 0

    AxisFault
    faultCode: 0
    faultSubcode:
    faultString: Invalid user id: 0
    faultActor: getUserInfo
    faultNode:
    faultDetail:
    {http://xml.apache.org/axis/}stackTrace:Invalid user id: 0
    at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
    at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
    at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:604)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1759)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2915)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:625)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:116)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:488)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:819)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:748)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1208)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:525)
    at javax.xml.parsers.SAXParser.parse(SAXParser.java:392)
    at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
    at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
    at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
    at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
    at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
    at org.apache.axis.client.Call.invoke(Call.java:2767)
    at org.apache.axis.client.Call.invoke(Call.java:2443)
    at org.apache.axis.client.Call.invoke(Call.java:2366)
    at org.apache.axis.client.Call.invoke(Call.java:1812)
    at org.tuleap.mylyn.task.internal.core.wsdl.soap.v1.CodendiAPIBindingStub.getUserInfo(CodendiAPIBindingStub.java:2815)
    at org.tuleap.mylyn.task.internal.core.net.TuleapSoapConnector.getPersonFromId(TuleapSoapConnector.java:1525)
    at org.tuleap.mylyn.task.internal.core.net.TuleapSoapConnector.populateArtifact(TuleapSoapConnector.java:799)
    at org.tuleap.mylyn.task.internal.core.net.TuleapSoapConnector.performQuery(TuleapSoapConnector.java:706)
    at org.tuleap.mylyn.task.internal.core.client.TuleapClient.getSearchHits(TuleapClient.java:99)
    at org.tuleap.mylyn.task.internal.core.repository.TuleapRepositoryConnector.performQuery(TuleapRepositoryConnector.java:287)
    at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob.synchronizeQuery(SynchronizeQueriesJob.java:311)
    at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob.synchronizeQueries(SynchronizeQueriesJob.java:268)
    at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob.run(SynchronizeQueriesJob.java:201)
    at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeRepositoriesJob.updateQueries(SynchronizeRepositoriesJob.java:186)
    at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeRepositoriesJob.run(SynchronizeRepositoriesJob.java:142)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)

    {http://xml.apache.org/axis/}hostname:belay

    Invalid user id: 0
    at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
    at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
    at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:604)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1759)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2915)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:625)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:116)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:488)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:819)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:748)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1208)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:525)
    at javax.xml.parsers.SAXParser.parse(SAXParser.java:392)
    at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
    at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
    at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
    at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
    at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
    at org.apache.axis.client.Call.invoke(Call.java:2767)
    at org.apache.axis.client.Call.invoke(Call.java:2443)
    at org.apache.axis.client.Call.invoke(Call.java:2366)
    at org.apache.axis.client.Call.invoke(Call.java:1812)
    at org.tuleap.mylyn.task.internal.core.wsdl.soap.v1.CodendiAPIBindingStub.getUserInfo(CodendiAPIBindingStub.java:2815)
    at org.tuleap.mylyn.task.internal.core.net.TuleapSoapConnector.getPersonFromId(TuleapSoapConnector.java:1525)
    at org.tuleap.mylyn.task.internal.core.net.TuleapSoapConnector.populateArtifact(TuleapSoapConnector.java:799)
    at org.tuleap.mylyn.task.internal.core.net.TuleapSoapConnector.performQuery(TuleapSoapConnector.java:706)
    at org.tuleap.mylyn.task.internal.core.client.TuleapClient.getSearchHits(TuleapClient.java:99)
    at org.tuleap.mylyn.task.internal.core.repository.TuleapRepositoryConnector.performQuery(TuleapRepositoryConnector.java:287)
    at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob.synchronizeQuery(SynchronizeQueriesJob.java:311)
    at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob.synchronizeQueries(SynchronizeQueriesJob.java:268)
    at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob.run(SynchronizeQueriesJob.java:201)
    at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeRepositoriesJob.updateQueries(SynchronizeRepositoriesJob.java:186)
    at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeRepositoriesJob.run(SynchronizeRepositoriesJob.java:142)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
    </pre>
    User avatar
    I just tried on with my credential on "https://tuleap.net/plugins/tracker/?group_id=101" with the same version of Eclipse and the same version of the plugin and it worked for me. Could you please paste here the complete error message which should be available in the error log view (Window -> Show View -> Other -> Error Log) or in the log file in your Eclipse installation folder.