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