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: [email protected]
> 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
> > À: [email protected]
> > 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
> > > À: [email protected]
> > > 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