AnsweredAssumed Answered

WSSecurityEngine: Callback supplied no password for: ticket

Question asked by revenge on Apr 1, 2008
Latest reply on Nov 19, 2009 by thierensbart
Hi all,

i've a problem when I have a long time connection to alfresco.

I start the session using this code

      try {
         AuthenticationUtils.startSession(strUsername, strPassword);
         blnAuthenticated = true;

      } catch (AuthenticationFault e) {
         logger.error("Errore durante l'autenticazione ad Alfresco.", e);
      }
      
now i have to process all the files contained in a space

if this process gets a lot of time it throws an exception

AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
faultSubcode:
faultString: WSDoAllReceiver: security processing failed; nested exception is:
   org.apache.ws.security.WSSecurityException: General security error (WSSecurityEngine: Callback supplied no password for: ticket)
faultActor:
faultNode:
faultDetail:
   {http://xml.apache.org/axis/}hostname:myserver

WSDoAllReceiver: security processing failed; nested exception is:
   org.apache.ws.security.WSSecurityException: General security error (WSSecurityEngine: Callback supplied no password for: ticket)
   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 org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
   at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
   at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
   at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
   at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
   at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
   at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
   at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
   at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
   at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source)
   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.alfresco.webservice.content.ContentServiceSoapBindingStub.read(ContentServiceSoapBindingStub.java:421)
   ….
    …

   
i'm actually using
this._store = new Store(Constants.WORKSPACE_STORE, strStore);
this._contentFolder = new Reference(this._store, null, strPath);
this._repositoryService = WebServiceFactory.getRepositoryService();
this._contentService = WebServiceFactory.getContentService();

I invoke WebServiceFactory only one time after starting the session, and i use the variables during all the process

i read that i have to modify the session-timeout value in web.xml
but i think that it could be the wrong way because i need to set the timeout programmatically only for this process without touch the web.xml

is there a way to keep alive the session programmatically?

thanks in advance,

Revenge

Outcomes