Sorry! I found the problem.
The client-config.wsdd I was using, was generated by
org.apache.axis.utils.Admin client deploy.wsdd
However, the result did not include request/responseflow items for the
SimpleSessionHandler in the globalConfiguration part as well, only in
the service part.

For completeness, some more info for people who run into the same
problem in the future:
I used the example deploy.wsdd file from
http://www.fawcette.com/javapro/2003_04/online/wsdl_kjones_04_29_03/default_pf.aspx
The article continues with generating a client-config.wsdd file from
it, which does contain the globalConfiguration request- and
reponseFlow parts. With me, these weren't there and I had to add them
manually to client-config.wsdd.
Adding them to deploy.wsdd in the first place and then auto-generating
the client-config.wsdd as described also works (somehow the server
adds the session ID in the soap header twice, though).

Johan Walters

2005/10/12, Johan Walters <[EMAIL PROTECTED]>:
> First of all, because I'm using webstart my client-config.wsdd is
> packed into a jar with my client code, where Axis should find it, yet
> no headers with session ID's from the client.
>
> Second, I tried storing the client-config.wsdd locally on the client,
> and add it as a system property, like you suggested:
> System.setProperty("axis.ClientConfigFile", configFile.getCanonicalPath());
> Still, no headers with session ID's.
>
> Third, I created a EngingeConfiguration and let it use this same file
> using a FileProvider. Still no headers.
>
> Because all options fail, it makes me belief that my
> client-config.wsdd file IS used, but something else goes wrong. I
> don't know where and I don't know where to look for clues. Any help is
> welcome (and thanks for replies even if they didn't help ;-) )
>
> Johan Walters
>
>
> 2005/10/12, Dorner, Thomas <[EMAIL PROTECTED]>:
> > The client didn´t find the client-config.wsdd
> >
> > You should set the path to client...wsdd with a JVM-Option at the server!
> > Like this:
> >
> > -Daxis.ClientConfigFile=C:/projects/sources/.../WEB-INF/client-config.wsdd
> >
> >
> >
> > Thomas Dorner
> > T-Systems International GmbH
> >
> >
> >
> >
> >
> >
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Johan Walters [mailto:[EMAIL PROTECTED]
> > Gesendet: Mittwoch, 12. Oktober 2005 14:45
> > An: axis-user@ws.apache.org
> > Betreff: Re: finding client-config.wsdd icw WebStart
> >
> > You are right, I meant that I supplied my own client-config.wsdd file to the
> > EngineConfiguration so the axis engine should be using it now for sure.
> > However, the handlers still do not work :-(
> >
> > Had anybody had problems with handlers like this? I defined the
> > SimpleSessionHandler just as in all examples, and I add it to the request
> > and response flow of both server and client. The server does it's job, but
> > the client doesn't. Any idea's why the client is still ignoring the session
> > ID's?
> >
> > Johan
> >
> > 2005/10/11, zze-ELSOKHON Tony RD-BIZZ-ISS
> > <[EMAIL PROTECTED]>:
> > >
> > > Johan;
> > >
> > > When you create a customized EngineConfiguration, Axis uses it directly to
> > configure the client-side engine and stops looking for a client-config.wsdd
> > file.
> > >
> > > Tony
> > >
> > > -----Message d'origine-----
> > > De: Johan Walters [mailto:[EMAIL PROTECTED]
> > > Envoyé: mardi 11 octobre 2005 16:57
> > > À: axis-user@ws.apache.org
> > > Objet: Re: finding client-config.wsdd icw WebStart
> > >
> > > Thank you, after trying creating a EngineConfiguration myself I don't
> > > get errors anymore so I think the client-config.wsdd file is found.
> > >
> > > The problem still is, the handlers that are supposed to return SOAP
> > > headers with the session ID still do not work. It might even well be
> > > the case that my client already found client-config.wsdd before, but I
> > > just assumed it didn't because no SOAP session headers appear.
> > > Every message from the server does contain a soap header with a new
> > > session ID, the client does not include any soap header at all as it
> > > should have. So the server keeps sending new ID's every time.
> > >
> > > Perhaps any ideas why SimpleSessionHandler fails at my client side?
> > >
> > > Johan Walters
> > >
> > >
> > > 2005/10/11, zze-ELSOKHON Tony RD-BIZZ-ISS
> > <[EMAIL PROTECTED]>:
> > > >
> > > > John,
> > > >
> > > > You can still try using an XMLStringProvider. It should work if you
> > figure out the possible encoding problems.
> > > >
> > > > You can also include a client-config.wsdd file in one of the jars that
> > are on the classpath. Axis is able to retrieve it there.
> > > >
> > > > Even better, you can build programmatically a customized Axis
> > configuration engine by implementing the interface
> > org.apache.axis.EngineConfiguration.
> > > > You can find some sample code here:
> > > > http://wiki.apache.org/ws/FrontPage/Axis/AxisClientConfiguration
> > > >
> > > > Regards,
> > > >
> > > > Tony ELSOKHON
> > > >
> > > > -----Message d'origine-----
> > > > De: Johan Walters [mailto:[EMAIL PROTECTED]
> > > > Envoyé: mardi 11 octobre 2005 14:18
> > > > À: axis-user@ws.apache.org
> > > > Objet: finding client-config.wsdd icw WebStart
> > > >
> > > > I'm having a strange problem I cannot figure out.
> > > >
> > > > I am using Axis 1.2. Currently, I have a working webstart
> > > > application that uses axis. It is able to communicate succesfully to
> > > > my server using soap. Now I would like to implement soap-header based
> > sessions.
> > > > In order to do that, I have to supply a client-config.wsdd file to
> > > > the client. There are 4 ways to to this:
> > > >
> > > > 1) Put the client-config.wsdd file in the working directory. Since
> > > > webstart only uses weird cache directories, this is no option.
> > > >
> > > > 2) Put the client-config.wsdd file in the classpath. There is no
> > > > option for inlcuding new directories to the classpath once webstart
> > > > (and thus the VM) is running, right? So no-go here either.
> > > >
> > > > 3) Put the client-config.wsdd file somewhere you like and put the
> > > > parent directory of the file in a system property called
> > > > axis.ClientConfigFile. This gives me the following error (just the
> > > > first few lines):
> > > >
> > > > org.apache.axis.InternalException:
> > > > org.apache.axis.ConfigurationException:
> > > > org.apache.axis.ConfigurationException: No engine configuration file
> > > > - aborting!
> > > > org.apache.axis.ConfigurationException: No engine configuration file
> > > > - abor= ting!
> > > >       at
> > > > org.apache.axis.configuration.FileProvider.configureEngine(FileP=
> > > > rovider.java:175)
> > > >       at org.apache.axis.AxisEngine.init(AxisEngine.java:172)
> > > >       at org.apache.axis.AxisEngine.<init>(AxisEngine.java:156)
> > > >       at org.apache.axis.client.AxisClient.<init>(AxisClient.java:52)
> > > >       at org.apache.axis.client.Service.getAxisClient(Service.java:103)
> > > >       at org.apache.axis.client.Service.<init>(Service.java:112)
> > > >       at client.JarDistributionServiceLocator.<init> .... ... ...
> > > >
> > > > Somehow, the FileProvider failed to load the file.
> > > >
> > > > 4) I created a FileProvider myself, and even tried a
> > > > XMLStringProvider like this:
> > > >
> > > > XP =3D new XMLStringProvider(StringContainingClientConfigWSDD)
> > > > ...
> > > > locator =3D new JarDistributionServiceLocator();
> > > > XP.configureEngine(locator.getEngine());
> > > >
> > > > Both the FileProvider and XMLStringProvider give the following error:
> > > >
> > > > org.apache.axis.InternalException:
> > > > org.apache.axis.ConfigurationException: org.xml.sax.SAXException:
> > > > Fatal Error: URI=3Dnull Line=3D-1: Premature end of file.
> > > > org.xml.sax.SAXException: Fatal Error: URI=3Dnull Line=3D-1:
> > > > Premature end = of file.
> > > >       at
> > > > org.apache.axis.utils.XMLUtils$ParserErrorHandler.fatalError
> > > > (XMLUtils.java:723)
> > > >       at
> > > > com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fata=
> > > > lError(Unknown
> > > > Source)
> > > >       at
> > > > com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportE=
> > > > rror(Unknown
> > > > Source)
> > > >       at
> > > > com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportE=
> > > > rror(Unknown
> > > > Source)
> > > >       at
> > > > com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.deter=
> > > > mineDocVersion(Unknown
> > > > Source)
> > > >       at
> > > > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.pa=
> > > > rse(Unknown
> > > > Source)
> > > >       at
> > > > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.pa=
> > > > rse(Unknown
> > > > Source)
> > > >       at
> > > > com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unkno=
> > > > wn
> > > > Source)
> > > >       at
> > > > com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unkno=
> > > > wn
> > > > Source)
> > > >       at
> > > > com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.pars=
> > > > e(Unknown
> > > > Source)
> > > >       at org.apache.axis.utils.XMLUtils.newDocument(XMLUtils.java:369)
> > > >       at org.apache.axis.utils.XMLUtils.newDocument(XMLUtils.java:388)
> > > >       at
> > > > org.apache.axis.configuration.FileProvider.configureEngine(FileP=
> > > > rovider.java:179)
> > > >       at org.apache.axis.AxisEngine.init(AxisEngine.java:172)
> > > >       at org.apache.axis.AxisEngine.<init>(AxisEngine.java:156)
> > > >       at org.apache.axis.client.AxisClient.<init>(AxisClient.java:52)
> > > >       at org.apache.axis.client.Service.getAxisClient(Service.java:103)
> > > >       at org.apache.axis.client.Service.<init>(Service.java:112)
> > > >       at
> > > > client.JarDistributionServiceLocator.<init>(JarDistributionServi=
> > > > ceLocator.java:12)
> > > >       at client.GridClassLoader.init(GridClassLoader.java:81)
> > > >       at client.GridClassLoader.<init>(GridClassLoader.java:51)
> > > >       at client.Client.main(Client.java:97)
> > > >       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > > >       at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> > > >       at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> > > >       at java.lang.reflect.Method.invoke(Unknown Source)
> > > >       at netx.jnlp.Launcher.launchApplication(Launcher.java:305)
> > > >       at netx.jnlp.Launcher$TgThread.run(Launcher.java:466)
> > > >
> > > > It seems the XML parser crashes instantly. I am out of clues why
> > > > things are not working as they should! The client-config.wsdd file
> > > > is generated by axis using "org.apache.axis.utils.Admin client
> > > > deploy.wsdd" where the handlers are defined in deploy.wsdd. My
> > > > client-config.wsdd itself looks like this:
> > > >
> > > > <?xml version=3D"1.0" encoding=3D"UTF-8"?> <deployment
> > > > xmlns=3D"http://xml.apache.org/axis/wsdd/";
> > > > xmlns:java=3D"http://xml.apache.org/axis/wsdd/providers/java";>
> > > >  <globalConfiguration>
> > > >  <parameter name=3D"adminPassword" value=3D"admin"/>  <parameter
> > > > name=3D"enableNamespacePrefixOptimization" value=3D"true"/>
> > > > <parameter name=3D"disablePrettyXML" value=3D"true"/>  <parameter
> > > > name=3D"sendMultiRefs" value=3D"true"/>  <parameter
> > > > name=3D"sendXsiTypes" value=3D"true"/>  <parameter
> > > > name=3D"attachments.implementation"
> > > > value=3D"org.apache.axis.attachments.AttachmentsImpl"/>
> > > >  <parameter name=3D"sendXMLDeclaration" value=3D"true"/>
> > > > </globalConfiguration>  <handler name=3D"session"
> > > > type=3D"java:org.apache.axis.handlers.SimpleSessionHandler"/>
> > > >  <service name=3D"JarDistribution" provider=3D"java:RPC"
> > style=3D"wrapped"
> > > > use=3D"literal">
> > > >  <requestFlow>
> > > >  <handler type=3D"session"/>
> > > >  </requestFlow>
> > > >  <responseFlow>
> > > >  <handler type=3D"session"/>
> > > >  </responseFlow>
> > > >  <parameter name=3D"allowedMethods" value=3D"getApplication,
> > > > getResource, receiveResults"/>  <parameter name=3D"scope"
> > > > value=3D"session"/>  <parameter name=3D"className"
> > > > value=3D"soap.JarDistribution"/>  <beanMapping
> > > > languageSpecificType=3D"java:soap.Resource"
> > > > qname=3D"ns1:Resource" xmlns:ns1=3D"urn:BeanService"/>  </service>
> > > > <transport name=3D"java"
> > > > pivot=3D"java:org.apache.axis.transport.java.Java=
> > > > Sender"/>
> > > >  <transport name=3D"http"
> > > > pivot=3D"java:org.apache.axis.transport.http.HTTP=
> > > > Sender"/>
> > > >  <transport name=3D"local"
> > > > pivot=3D"java:org.apache.axis.transport.local.LocalSender"/>
> > > > </deployment>
> > > >
> > > > Is there anyone who knows why the mentioned errors occur? Some clues
> > > > or solutions?
> > > >
> > > > Johan Walters
> > > >
> > >
> >
>

Reply via email to