RE: Error with Tomcat 5.5.9 and Axis 1.2.1
Doesn't Tomcat 5.5.9 suggest JDK 5? If so, and you followed the recommendation then your XML processing has changed. I don't use the XMLSecurity as part of our services and have no ill effects from this warning. (we are using Tomcat 5.5.9 on JDK 1.5.0_03) Quoting Paul Grillo <[EMAIL PROTECTED]>: > Same thing just now happened to me. I can drop the exact same war file I've > been using for weeks on tomcat 5.0.30 (older one) and I get no error. > > When I upgraded to 5.5.9 I get the error Danny reported. > > xmlsec is installed and has been installed in the same place all along (axis > application lib). I can find no evidence of another one of these in > existence in either common/lib, common/endorsed, or server/lib > > Nothing that I can see has changed, except Tomcat 5.5.9 > > I will continue to try to find an answer. Has anybody gotten Happy axis to > work on 5.5.9 with security supported? > > thanks > > -paul > > -Original Message- > From: csj [mailto:[EMAIL PROTECTED] > Sent: Tuesday, September 13, 2005 12:57 PM > To: axis-user@ws.apache.org > Subject: Re: Error with Tomcat 5.5.9 and Axis 1.2.1 > > Danny - > > Sounds/looks as if you dont have xmlsec installed on the server > > http://www.ibiblio.org/maven2/xml-security/xmlsec/1.2.1/ > > ..Chris > > On Tue, 13 Sep 2005, Danny Garcia Hernandez wrote: > > > Hi List, i´m a beginner with tomcat and axis, i was looking on FAQ list > > for someone with a same problem but i don´t find nothing that explain my > > errors. I think configuration is my problema o maybe some > > imcopatibilities between tomcat 5.5.9 and axis 1.2.1. The happyaxis show > > this warnign. > > > > * Found JAXP implementation ( javax.xml.parsers.SAXParserFactory ) > > at an unknown location > > > > * Found Activation API ( javax.activation.DataHandler ) at > > C:\Java\tomcat-5.5.9\webapps\axis\WEB-INF\lib\activation.jar > > > > > > Optional Components > > > > * Found Mail API ( javax.mail.internet.MimeMessage ) at > > C:\Java\tomcat-5.5.9\webapps\axis\WEB-INF\lib\mail.jar > > > > *Warning*: could not find a dependency of class > > org.apache.xml.security.Init from file *XML Security is not > > supported.* > > > > See http://xml.apache.org/security/ {4} > > The root cause was: org/apache/xpath/compiler/FuncLoader > > This can happen e.g. if org.apache.xml.security.Init is in the > > 'common' classpath, but a dependency like activation.jar is only > > in the webapp classpath. > > > > * Found Java Secure Socket Extension ( > > javax.net.ssl.SSLSocketFactory ) at an unknown location > > > > > > I know that this is a warnign message, but i like know the reason of > > this warning?. > > > > Thank in advanced > > Danny > > > > > > > > -- > Chris Johnson > [EMAIL PROTECTED] > > >
Re: Axis - setup/teardown notification?
I don't think Axis provides this (speaking of version 1.2.1). I'm using a javax.servlet.ServletContextListener registered in the web.xml of my custom web application where I have imbedded Axis. Hope it helps, -james Quoting Dave Hoffer <[EMAIL PROTECTED]>: > Does Axis provide any mechanism to notify web services that they are > starting and/or stopping? I would like to provide some resource > initialization when my web service has started and provide some resource > cleanup when it is being stopped for any reason. > > > > What is the preferred way to do this? > > > > -dh > >
Re: Question on the 'start with WSDL' approach
I agree with Guy's point. However, I think Shantanu's point is correct that wsdl2java shouldn't need a 100% of the WSDL. I've worked with Tibco's BusinessWorks project and if memory serves, they used a partial WSDL to generate the service along with some configuration values to complete the binding information. On the flip side, since wsdl2java needed the full wsdl with bindings, we've been able to send that wsdl to our in-house clients before the service was operational. Thus allowing for parallel development. Working with the wsdl as the source is highly recommended. If the notion of manually creating 100% of the wsdl seems daunting, start with a skeleton interface, and run java2wsdl. Then abandon the skeleton as your service matures to it's first release and swap the ANT script targets from java2wsdl to wsdl2java. Hope it helps, -james Quoting Guy Rixon <[EMAIL PROTECTED]>: > I think the Java binding tools have to work with the WSDL binding; the > port-type is not enough. Consider the difference between rpc/literal and > document/literal bindings for the same port-type: the document one puts the > message parts directly inside the SOAP body and the rpc one interposes an > element named after the operation. This affects the parsing and needs to be > coded into the fixed stubs. > > On Wed, 7 Sep 2005, Shantanu Sen wrote: > > > I am looking at the 'start with wsdl' approach of > > building a web service. > > > > If I follow this approach, I can use either an editor > > or any tool to build the abstract part of a WSDL - > > i.e. with no binding or service elements. Ideally, > > since I have defined the abstract interface I should > > be able to run a tool to generate the java artifacts > > and proceed from there. > > > > But the standard WSDL2Java tool does not generate the > > java interface from the portType information unless a > > binding element is added to the WSDL. The tool > > generates complex types that are exchanged in the > > interface methods correctly, but not the actual > > interface from the portType. > > > > I am looking for any inputs about people's experience > > with the 'start with WSDL approach'. Should I hand > > generate a default binding and then use the WSDL2Java > > and move from there? Or is there any better option? > > > > Thanks, > > Shantanu Sen > > > > Guy Rixon [EMAIL PROTECTED] > Institute of AstronomyTel: +44-1223-337542 > Madingley Road, Cambridge, UK, CB3 0HAFax: +44-1223-337523 >
solicit-response-or-notification-operation
It seems that Axis 1.2.1 does not support the solicit-response-or-notification-operation form of wsdl:operation. I've pasted the relavent section from the schema (http://schemas.xmlsoap.org/wsdl/) below. The way I interpret it, an operation can have only an output message. I have a schema that defines an operation like this: The full WSDL (Document/Literal) passes XMLSpy validation. Yet when I run wsgen, the method will disappear from the type interface. I should point out now, that the reason I came across this is that when Axis is given a wsdl:message with no part elements, the resulting messages fail WS-I BasicProfile "envelope" assertions. I will have to continue with an input message that has no part. Is this a known issue? Is there something I can do to the WSDL to create compliant request AND response messages when the wsdl:message has no parts?
Re: Handling custom exceptions
Any production service should be sourced from a WSDL! You will need to define a fault message on your port bindings of the WSDL: . . . . . . Quoting Yashavanth Prakash <[EMAIL PROTECTED]>: > Hi > > I want to know how to send custom exceptions from > server side to client other than cathcing custom > exception and throwing the Axis Fault > > Any related documentation or earlier mails about this > would be very helpful > > Background: > we are building a webservice based component. As the > webservice interacts with other applications which > throw app specific error, we want to pass the same to > the client for further handling > > Any help/suggestions in this regard would be really > helpful > Thanks > Yash > > __ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com >
wsdl2java naming deploy.wsdd
I can't find a parameter to the command line or the ANT (I prefer ANT) task for the name of the generated deploy.wsdd file. Can I choose the name of this file? Thank you, -james
Versioning of Web Services
Does anyone have any good resources you can direct me to regarding versioning of web services? What strategies are recommended in the schema? What about changes in the WSDL messages and port bindings that effect the clients? -- deprecation of methods? -- deployment strategies? I appreciate any links you can send my way! Thanks, -James
Re: Axis 1.1 Vs Axis 1.2
It can be. I have created a document/literal web services that passes all of the WS-I basic profile tests. We start with a WSDL, then generate java via an ANT build process, and implement the service 'BindingImpl' classes. I have only now just begun looking at Axis 1.2. It won't be ready for my production deployment this fall so we are planning on releasing with Axis 1 Hope it helps, -james Quoting [EMAIL PROTECTED]: > Hello, > > I am new to Axis. Could anyone let me know if Axis 1.1 fully compatible > with WS-I BP? Is it good to use? what benefits Axis 1.2 it offers > compared to Axis 1.1. > > > Sorry I don't have access to Internet so I had to send this mail. Just > few hints would help me a lot. > > Your help is highly appreciated! > > Raj > >
Re: Problem: Reload Axis with the Tomcat Manager
I'm on Windows XP with the same Tomcat 5.5.9. I didn't have any trouble until we needed to sublass the pivot. Quoting Thad Humphries <[EMAIL PROTECTED]>: > I am running Tomcat 5.5.9 on Linux (Suse 9.2) with JDK 1.5.0_02. The Tomcat > Manager's reload works fine for me. > > On Thursday 11 August 2005 07:58, Grimm Bernd wrote: > > I want to reload the axis application without restarting tomcat. > > To do this, I use the tomcat manager. >
Re: Problem: Reload Axis with the Tomcat Manager
I don't have an answer for you. But maybe you've heard "misery loves company". I think we are experiencing the effects of the same defect. Here is a link to an archived message of my issue: http://marc.theaimsgroup.com/?l=axis-user&m=112359572112527&w=2 My research into this points the finger at Apache's commons-discovery. Either the problem is in commons-discovery or how Axis is using that project. I searched the apache-commons mailing archives and google but could not find any references to known issues with commons-discovery. I believe if the problem were in commons-discovery, that the user community would be very vocal about that product failing to coexist with Tomcat. I continue to stop-n-start Tomcat until I get a chance to research further. Hope it helps, -james Quoting Grimm Bernd <[EMAIL PROTECTED]>: > Hello, > > I want to reload the axis application without restarting tomcat. > To do this, I use the tomcat manager. > > But after reloading axis with the tomcat manager, axis doesn't work anymore. > I get the following message: > > - Unable to locate a valid EngineConfigurationFactory > WebappClassLoader: Lifecycle error : CL stopped > > and > > javax.servlet.ServletException: Servlet.init() for servlet AxisServlet threw > exception > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:509) > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) > > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:578) > org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) > org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:324) > org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:395) > org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:691) > > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:633) > org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:804) > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) > java.lang.Thread.run(Thread.java:534) > root cause > java.lang.NullPointerException > org.apache.catalina.loader.WebappClassLoader.findResources(WebappClassLoader.java:997) > java.lang.ClassLoader.getResources(ClassLoader.java:825) > > org.apache.commons.discovery.jdk.JDK12Hooks.getResources(JDK12Hooks.java:150) > org.apache.commons.discovery.resource.DiscoverResources$1.getNextResources(DiscoverResources.java:153) > org.apache.commons.discovery.resource.DiscoverResources$1.getNextResource(DiscoverResources.java:129) > org.apache.commons.discovery.resource.DiscoverResources$1.hasNext(DiscoverResources.java:116) > org.apache.commons.discovery.resource.names.DiscoverNamesInFile$1.getNextClassNames(DiscoverNamesInFile.java:186) > org.apache.commons.discovery.resource.names.DiscoverNamesInFile$1.getNextClassName(DiscoverNamesInFile.java:170) > org.apache.commons.discovery.resource.names.DiscoverNamesInFile$1.hasNext(DiscoverNamesInFile.java:157) > org.apache.commons.discovery.resource.names.NameDiscoverers$1.getNextIterator(NameDiscoverers.java:143) > org.apache.commons.discovery.resource.names.NameDiscoverers$1.hasNext(NameDiscoverers.java:126) > org.apache.commons.discovery.resource.classes.ResourceClassDiscoverImpl$1.getNextResource(ResourceClassDiscoverImpl.java:159) > org.apache.commons.discovery.resource.classes.ResourceClassDiscoverImpl$1.hasNext(ResourceClassDiscoverImpl.java:147) > org.apache.axis.configuration.EngineConfigurationFactoryFinder$1.run(EngineConfigurationFactoryFinder.java:120) > java.security.AccessController.doPrivileged(Native Method) > org.apache.axis.configuration.EngineConfigurationFactoryFinder.newFactory(EngineConfigurationFactoryFinder.java:113) > org.apache.axis.transport.http.AxisServletBase.getEngineEnvironment(AxisServletBase.java:273) > org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.java:172) > org.apache.axis.transport.http.AxisServletBase.getOption(AxisServletBase.java:396) > > org.apache.axis.transport.http.AxisServletBase.init(AxisServletBase.java:112) > org.apache.axis.transport.http.AxisServlet.init(AxisServlet.java:156) > javax.servlet.GenericServlet.init(GenericServlet.java:256) > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:509) > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) > > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:578) > org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) > org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:324) > org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:395) > or
Re: Unable to capture Request Headers
My services are using HTTP as the transport, and I'm able to get the username and password the client provided for Basic Authentication straight from the MessageContext object. Though I'm doing this in the service implementation, not a handler. I'm not sure when in the handler chain the values are populated. MessageContext msgContext = MessageContext.getCurrentContext(); msgContext.getUsername() msgContext.getPassword()); Hope it helps, -james Quoting Kr <[EMAIL PROTECTED]>: > Hi All, > > I am trying to consume a web service that uses basic authentication. I > use .setUsername("sdf") and object>.setPassword("dfd) to pass the basic authentication information > in the request header. Now I try to print the request headers using > below code snippet of a handler : > > > > public void invoke(org.apache.axis.MessageContext messageContext) > throws org.apache.axis.AxisFault { > try { > Message reqMessage = messageContext.getRequestMessage(); > javax.xml.soap.MimeHeaders mimeHeader = > reqMessage.getMimeHeaders(); > org.apache.axis.message.MimeHeaders axisMimeHeaders = > (org.apache.axis.message.MimeHeaders)mimeHeader; > Iterator iterator = axisMimeHeaders.getAllHeaders(); > while (iterator.hasNext()) { > String key = (String)iterator.next(); > String value[] = axisMimeHeaders.getHeader(key); > System.out.println ("key:"+key+"\t*** value:"+value); > } > } > > . > > > > However I dont see any request headers printed onto console using > above code. Am i doing anything wrong here. Please suggest ... > > > Thanks & Regards, > Kr. >
Re: Change the Port that Axis Service runs as
Quoting Joachim Goetze <[EMAIL PROTECTED]>: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > Hi, > > James Wilson wrote: > > > > Quoting Joachim Goetze <[EMAIL PROTECTED]>: > > > > > > Hi, > > > > if I am not mistaken the Web.XML is part of the Tomcat-Config. So the > > > > > >> web.xml is part of your application. It is not part of the container > >> configuration. Unless you look at it from the perspective of your > application > >> telling the container how to configure it. > > Right, that is my perspective. But there is only a Web.XML in the Axis > folder, so it is Axis that is configured here and not a Web Service of Axis. > > > only thing you can "load on startup" here is Axis, not the Web Services > > managed by Axis. That is why I was asking yesterday, if there is a > > chance to load a Web Service immediately after the Axis startup > > (although I do not care about any order of startup, which makes your > > case even more complex). > > > > > >> I don't know what you would need to start. Start tomcat and your service > is > >> ready to recieve requests. There is no need for load-on-startup. If you > are > >> writing a web application that is a client and you want it to start making > >> requests to a service on startup, then look at implementing a > >> ServletContextListener. > > Complex applications may require services that do some organizational > stuff on startup, so thats why I am looking for such a solution. Sure my > web application is ready for request immediately after the start of the > container, but what if I need to do something time consuming prior the > first request? I recommend using a ServletContextListener. If you are using Log4j, you'll want to check out this thread: http://marc.theaimsgroup.com/?l=log4j-user&m=109585712427674&w=1 > > Regards, > Jo > > > Regards, > > Jo > > > > > > > > > > J H wrote: > > > >>I found something incredibly interesting, by chance this weekend. If I > >>startup the 2nd axis webapp first and then start the 1st webapp after > >>that, everything works fine on the same machine. This must have been > >>why the two webapps worked fine on different machines. I started > >>playing with the load-on-startup tag in the web.xml to see if I could > >>setup which webapp was loaded first. > > > > > >> Try alphaticially naming the one you want to load first. Assuming you are > >> dropping the war files into CATALINA_HOME/webapps or using > >> CATALINA_HOME/conf/server/localhost maybe Tomcat will find and load them > in > >> that order. > > > > > >> It hasn't worked yet, but I might > >>be doing something wrong. > > > >>Jeff > > > > > >>>From: James Wilson <[EMAIL PROTECTED]> > >>>Reply-To: axis-user@ws.apache.org > >>>To: axis-user@ws.apache.org > >>>Subject: Re: Change the Port that Axis Service runs as > >>>Date: Fri, 05 Aug 2005 12:01:53 -0500 > > > >>>My last thought is that maybe there something in WebDAV that is > >>>getting in the > >>>way. > > > >>>-James > > > > > >>>Quoting J H <[EMAIL PROTECTED]>: > > > > > >>>>Thanks for trying this on your computer! I have basically the same > >>>>configuration, JDK 5, Tomcat 5.5, and Axis 1.2.1. > >>>> > >>>>1st Webapp > >>>>-- > >>>>Slide > >>>>(Handles External Webdav Requests via > > > >>>http://localhost:8080/mywebdav, makes > > > >>>>axis/soap calls to the second webapp inside of the Tomcat container > > > >>>to get > > > >>>>the data from the database.) > >>>> > >>>> > >>>>2nd Webapp > >>>>-- > >>>>Self Contained Axis Webapp (I just made my own webapp and included > > > >>>the axis > > > >>>>jars in the web-inf/lib directory) > >>>>(Handles Requests from the 1st Webapp, via > >>>>http://localhost:8080/myservice/services/MyService and retrieves > > > >>>data from a > > > >>>>database via JDBC) > >>>> > >>>> > >>>> > >>>>>From: James Wilson <[EMAIL PROTECTED]> > >>>>&
RPCProvider Subclass fails on Hot-Deploy
I have subclassed the RPCProvider per the experiences in this thread: http://marc.theaimsgroup.com/?l=axis-user&m=110849155828238&w=2 My build process creates the server-config.wsdd via build.xml entry: http://localhost:8080/myservice/servlet/AxisServlet. Is anyone experiencing this? org.apache.axis.ConfigurationException: org.apache.axis.deployment.wsdd.WSDDException: No provider type matches QName '{http://xml.apache.org/axis/wsdd/providers/java}QUILL' org.apache.axis.deployment.wsdd.WSDDException: No provider type matches QName '{http://xml.apache.org/axis/wsdd/providers/java}QUILL' at org.apache.axis.deployment.wsdd.WSDDProvider.getInstance(WSDDProvider.java:166) <> I'm using Axis 1.2.1 in Tomcat 5.5.x and JDK 5.0. I have tomcat configured with a CATALINA_HOME/conf/Catalina/localhost/myservice.xml as follows: ___ James A. Wilson Senior Software Engineer Object Computing, Inc. http://www.ociweb.com E-Mail: [EMAIL PROTECTED]
Re: Change the Port that Axis Service runs as
Quoting Joachim Goetze <[EMAIL PROTECTED]>: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > Hi, > > if I am not mistaken the Web.XML is part of the Tomcat-Config. So the web.xml is part of your application. It is not part of the container configuration. Unless you look at it from the perspective of your application telling the container how to configure it. > only thing you can "load on startup" here is Axis, not the Web Services > managed by Axis. That is why I was asking yesterday, if there is a > chance to load a Web Service immediately after the Axis startup > (although I do not care about any order of startup, which makes your > case even more complex). I don't know what you would need to start. Start tomcat and your service is ready to recieve requests. There is no need for load-on-startup. If you are writing a web application that is a client and you want it to start making requests to a service on startup, then look at implementing a ServletContextListener. > > Regards, > Jo > > > > > J H wrote: > > I found something incredibly interesting, by chance this weekend. If I > > startup the 2nd axis webapp first and then start the 1st webapp after > > that, everything works fine on the same machine. This must have been > > why the two webapps worked fine on different machines. I started > > playing with the load-on-startup tag in the web.xml to see if I could > > setup which webapp was loaded first. Try alphaticially naming the one you want to load first. Assuming you are dropping the war files into CATALINA_HOME/webapps or using CATALINA_HOME/conf/server/localhost maybe Tomcat will find and load them in that order. > >It hasn't worked yet, but I might > > be doing something wrong. > > > > Jeff > > > >> From: James Wilson <[EMAIL PROTECTED]> > >> Reply-To: axis-user@ws.apache.org > >> To: axis-user@ws.apache.org > >> Subject: Re: Change the Port that Axis Service runs as > >> Date: Fri, 05 Aug 2005 12:01:53 -0500 > >> > >> My last thought is that maybe there something in WebDAV that is > >> getting in the > >> way. > >> > >> -James > >> > >> > >> Quoting J H <[EMAIL PROTECTED]>: > >> > >> > Thanks for trying this on your computer! I have basically the same > >> > configuration, JDK 5, Tomcat 5.5, and Axis 1.2.1. > >> > > >> > 1st Webapp > >> > -- > >> > Slide > >> > (Handles External Webdav Requests via > >> http://localhost:8080/mywebdav, makes > >> > axis/soap calls to the second webapp inside of the Tomcat container > >> to get > >> > the data from the database.) > >> > > >> > > >> > 2nd Webapp > >> > -- > >> > Self Contained Axis Webapp (I just made my own webapp and included > >> the axis > >> > jars in the web-inf/lib directory) > >> > (Handles Requests from the 1st Webapp, via > >> > http://localhost:8080/myservice/services/MyService and retrieves > >> data from a > >> > database via JDBC) > >> > > >> > > >> > >From: James Wilson <[EMAIL PROTECTED]> > >> > >Reply-To: axis-user@ws.apache.org > >> > >To: axis-user@ws.apache.org > >> > >Subject: Re: Change the Port that Axis Service runs as > >> > >Date: Fri, 05 Aug 2005 08:06:07 -0500 > >> > > > >> > >I just setup a quick sample. Using Axis 1.2.1 and Tomcat 5.5 > >> running in > >> > >JRE 5.0 > >> > >I installed a second web app into tomcat. It worked. > >> > > > >> > >I installed the two web apps by putting XML config files under > >> > >CATALINA_HOME/conf/Catalina/localhost/ like below. Both pointed at > >> two > >> > >different exploded-war directories > >> > > > >> > > >> reloadable="true"> > >> > > > >> > > > >> > >I then start Tomcat using the this command (allows remote debug from > >> > >eclipse): > >> > > %CATALINA_HOME%\bin\catalina.bat jpda start > >> > > > >> > >This is my standard development procedure. My client connected to > >> the Axis > >> > >server via: > >> > >MyServiceLocator loc = new MyServiceLocator(); > >> > > > >> > > >> > >loc.
Re: Webservice over Basic Authentication
Quoting "Jonathan J. Vargas R." <[EMAIL PROTECTED]>: > Hi, > > I did this: > > public class Main { > public static void main (String[] args) { > try { > EchoImpServiceLocator sl = new EchoImpServiceLocator (); > EchoImp service = sl.getEcho (); > > ->((org.apache.axis.client.Stub) service).setUsername ("anyuser"); > ->((org.apache.axis.client.Stub) service).setPassword ("anypassword"); > > System.out.println (service.echo ("Hola amigo!")); > } catch (Exception e) { > System.err.println ("Error: " + e.getMessage ()); > } > } > } > > > It works, just hope it's safe to do this, and it is compliant with ur > customs? otherwise how would u do it from here, the class Main? :) One other way to inject client authentication into an HTTP connection is to imbed it at the beginning of the URL. This is a standard outside of Axis. Following your variables used above, the command would be something like this: sl.setEchoImpEndpointAddress(" http://sdsuser:[EMAIL PROTECTED]:8080/axis/services/EchoImp"); EchoImp service = sl.getEcho(); service.echo ("Hola amigo!") > > thanks man. > > > On 8/8/05, Kr <[EMAIL PROTECTED]> wrote: > > < proxy object>.setUsername("dfdafasdf"); > > < proxy object>.setPassword("dfdfdfdf"); > > > > > -- > Jonathan J. Vargas Rodriguez > [EMAIL PROTECTED] > "Conservar el silencio interior cuando vuelo en la tormenta me es > mejor, porque asi ya no soy otra gota de la tempestad" >
Re: elaborate example on axis2
I don't have it in front of me now, but if memory serves me correctly the one .class file produced by that script should be in the src/schema directory. I copied that over to my build directory maintaining package-folder relationship. I'll point out that my steps were to create an ANT build.xml by examining what was being done in the scripts. I believe there was one small mention on the UserGuide that the generated files from WSDL2Java were build files for inclusion in a distribution. I haven't made it that far in my steps yet. I was side tracked exploring XMLBeans. Hope it helps, -james Quoting shantanu chawla <[EMAIL PROTECTED]>: > Thanks James, > > while I am going through the axis2 user guide. when I run the > WSDL2jave.bat file it generates a large number of files under various > folders > > for my test webservice it generates following directory structure > > src > |___org > || > |tempuri > || > |test > ||| > ||impl > |databindings > | > |schema > > > schema contains various xsb files under various folders. > I uses eclipse as the development environment. which files should I > include in the project and how to include the schema xsb files into > the eclipse project settings so that I can successfully compile the > project. > > > Thanks > > Shantanu > > > On 8/8/05, James Wilson <[EMAIL PROTECTED]> wrote: > > It sounds like this might help: http://ws.apache.org/axis2/userguide.html > > > > I went through this document this past weekend and I think it still has > some > > holes, but it talks about OMElement. I learned more from trying to follow > > along with the "Axis2SampleDocLitPortType" section and building a service > from > > the sample wsdl. > > > > Hope it helps, > > -james > > > > > > Quoting shantanu chawla <[EMAIL PROTECTED]>: > > > > > Hi > > > > > > I have just downloaded axis2 v 0.9. I have experience in writing web > > > services with axis1.1 but the axis2 has just stumped me. > > > > > > In axis1 the web services method params and return type were very much > > > clear, Objects or primitive java types and serializer/deserializer > > > takes care of everything. > > > > > > now is axis2 I am seeing param and return types of type OMElement and > > > dont know how I can get the object params and how to return them. I m > > > not very much clear abt the whole axis2 i think. > > > > > > for example in axis1 I just care abt Impl java files where method are > > > defined simply like > > > > > > public java.lang.String doSomething(com.shantanu.MyObject > doSomethingRequest) > > > { > > > > > > } > > > > > > but in axis2 all I see is public OMElement doSomething(OMElement elem) > > > { > > > > > > } > > > > > > and when I run WSDL2Java I dont see any of my java bean objects that > > > are the params to my methods but only see the skeleton.java file > > > > > > I am sure I am missing something serious in the understanding of > > > axis2. if so can anyone give pointers to good tutorials for writing > > > web services using axis2 > > > > > > Shantanu > > > -- > > > Graduate Student > > > Department of Computer Science, > > > San Diego State University > > > > > > > > -- > Graduate Student > Department of Computer Science, > San Diego State University >
Re: elaborate example on axis2
It sounds like this might help: http://ws.apache.org/axis2/userguide.html I went through this document this past weekend and I think it still has some holes, but it talks about OMElement. I learned more from trying to follow along with the "Axis2SampleDocLitPortType" section and building a service from the sample wsdl. Hope it helps, -james Quoting shantanu chawla <[EMAIL PROTECTED]>: > Hi > > I have just downloaded axis2 v 0.9. I have experience in writing web > services with axis1.1 but the axis2 has just stumped me. > > In axis1 the web services method params and return type were very much > clear, Objects or primitive java types and serializer/deserializer > takes care of everything. > > now is axis2 I am seeing param and return types of type OMElement and > dont know how I can get the object params and how to return them. I m > not very much clear abt the whole axis2 i think. > > for example in axis1 I just care abt Impl java files where method are > defined simply like > > public java.lang.String doSomething(com.shantanu.MyObject doSomethingRequest) > { > > } > > but in axis2 all I see is public OMElement doSomething(OMElement elem) > { > > } > > and when I run WSDL2Java I dont see any of my java bean objects that > are the params to my methods but only see the skeleton.java file > > I am sure I am missing something serious in the understanding of > axis2. if so can anyone give pointers to good tutorials for writing > web services using axis2 > > Shantanu > -- > Graduate Student > Department of Computer Science, > San Diego State University >
Re: Change the Port that Axis Service runs as
My last thought is that maybe there something in WebDAV that is getting in the way. -James Quoting J H <[EMAIL PROTECTED]>: > Thanks for trying this on your computer! I have basically the same > configuration, JDK 5, Tomcat 5.5, and Axis 1.2.1. > > 1st Webapp > -- > Slide > (Handles External Webdav Requests via http://localhost:8080/mywebdav, makes > axis/soap calls to the second webapp inside of the Tomcat container to get > the data from the database.) > > > 2nd Webapp > -- > Self Contained Axis Webapp (I just made my own webapp and included the axis > jars in the web-inf/lib directory) > (Handles Requests from the 1st Webapp, via > http://localhost:8080/myservice/services/MyService and retrieves data from a > database via JDBC) > > > >From: James Wilson <[EMAIL PROTECTED]> > >Reply-To: axis-user@ws.apache.org > >To: axis-user@ws.apache.org > >Subject: Re: Change the Port that Axis Service runs as > >Date: Fri, 05 Aug 2005 08:06:07 -0500 > > > >I just setup a quick sample. Using Axis 1.2.1 and Tomcat 5.5 running in > >JRE 5.0 > >I installed a second web app into tomcat. It worked. > > > >I installed the two web apps by putting XML config files under > >CATALINA_HOME/conf/Catalina/localhost/ like below. Both pointed at two > >different exploded-war directories > > > > > > > > > >I then start Tomcat using the this command (allows remote debug from > >eclipse): > > %CATALINA_HOME%\bin\catalina.bat jpda start > > > >This is my standard development procedure. My client connected to the Axis > >server via: > >MyServiceLocator loc = new MyServiceLocator(); > > > >loc.setMyPortEndpointAddress("http://127.0.0.1:8080/server/services/MyPort";); > >MyPortType port = loc.getMyPort(); > >port.invokeMyFunction(); > > > > > >Hows is your procedure different? I don't know if it's important, but > >during > >this test I had all of the Axis jar dependencies in both war/WEB-INF/lib > >directories (duplicated). > > > >Quoting J H <[EMAIL PROTECTED]>: > > > > > Here's is the complete stack trace... > > > > > > Again, the scenario is that when I install the 2 wars on seperate > >machines, > > > everything works fine. When I install the wars on the same machine, > >nothing > > > works and I get the message pasted below after about 5 minutes from the > > > first client axis/soap call. > > > > > > My theory is that both webapplications are serving out to port 8080 and > >when > > > the axis client is trying to communicate with the axis server it > >connects to > > > port 8080, but it is talking to the wrong webapp. That is why > >everything > > > works fine when I move the webapps to different machines. > > > > > > Thanks again, > > > Jeff > > > > > > Caught SOAPException :; nested exception is: > > > java.net.SocketTimeoutException: Read timed out > > > AxisFault > > > faultCode: > >{http://schemas.xmlsoap.org/soap/envelope/}Server.userException > > > faultSubcode: > > > faultString: java.net.SocketTimeoutException: Read timed out > > > faultActor: > > > faultNode: > > > faultDetail: > > > > > {http://xml.apache.org/axis/}stackTrace:java.net.SocketTimeoutException: > > > Read timed out > > > at java.net.SocketInputStream.socketRead0(Native Method) > > > at java.net.SocketInputStream.read(SocketInputStream.java:129) > > > at java.io.BufferedInputStream.fill(BufferedInputStream.java:183) > > > at java.io.BufferedInputStream.read(BufferedInputStream.java:201) > > > at > > > > >org.apache.axis.transport.http.HTTPSender.readHeadersFromSocket(HTTPSender.java:583) > > > at > >org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:143) > > > at > > > > >org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32) > > > at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) > > > at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) > > > at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165) > > > at org.apache.axis.client.Call.invokeEngine(Call.java:2765) > > > at org.apache.axis.client.Call.invoke(Call.java:2748) > > > at org.apache.axis.client.Call.invoke(Call.java:2424) > > > at org.apache.axis.c
AxisServlet Provide HTML Input Form?
I've worked in the past with BEA's web service generation. I found it usefull to have the simple HTML input form they provide for sending test messages into the service. Is there any plans to expand the reportServiceInfo(...) method on the AxisServlet to provide a simple HTML service interface? I would expect that this could be done completely dynamic, building the HTML form based on the WSDL of the service requested: http://localhost:8080/mywebapp/services/MyServicePort If none is planned, I may try to find time to investigate the viability of such a solution... -James
Re: Change the Port that Axis Service runs as
java:641) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2416) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) > at > org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:601) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392) > at > org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619) > at java.lang.Thread.run(Thread.java:534) > > > > >From: James Wilson <[EMAIL PROTECTED]> > >Reply-To: axis-user@ws.apache.org > >To: axis-user@ws.apache.org, J H <[EMAIL PROTECTED]> > >CC: axis-user@ws.apache.org > >Subject: Re: Change the Port that Axis Service runs as > >Date: Thu, 04 Aug 2005 13:07:49 -0500 > > > >What is the actuall error/exceptions you are seeing? Before you make a > >request > >to your client application, can you successfully request the services wsdl > >from > >axis (http://localhost:9090/axis/services/MyPort?wsdl)? > > > >Quoting J H <[EMAIL PROTECTED]>: > > > > > They are both setup to use different URI's, but I think what is going on > >is > > > that the first webapp is listening through port 8080 for slide messages > >and > > > the second, axis, webapp/service is listening for soap requests. > > > > > > When the slide webapp receives a request it starts up a axis call to the > > > axis server which is also running on port 8080 and the whole tomcat > > > container becomes unstable. > > > > > > I REALLY appreciate your help! I'm scouring the web looking for someone > >who > > > has done something similar. It seems like changing the port for axis > >would > > > be something people would commonly do, is that assumption incorrect? > > > > > > Thanks, > > > Jeff > > > > > > >From: James Wilson <[EMAIL PROTECTED]> > > > >Reply-To: axis-user@ws.apache.org > > > >To: axis-user@ws.apache.org > > > >Subject: Re: Change the Port that Axis Service runs as > > > >Date: Thu, 04 Aug 2005 11:28:44 -0500 > > > > > > > >This is sounding more and more like a it's not really an Axis question, > >but > > > >a > > > >servlet container question. > > > > > > > >I'm assuming when you say port, you're talking about TCP/IP port. The > >port > > > >is > > > >maintained by the servlet container. If you are developing two WARs at > >the > > > >same time, I recommend deploying both to the same instance of Tomcat > >(or > > > >some > > > >other container). Then you would access the two web applications via > >the > > > >same > > > >port, but different URI > > > > http://localhost:8080/axis > > > > http://localhost:8080/interface > > > > > > > >where one war was axis.war and the other was interface.war. > > > > > > > >Too answer your question about changing the port, To
Re: Change the Port that Axis Service runs as
What is the actuall error/exceptions you are seeing? Before you make a request to your client application, can you successfully request the services wsdl from axis (http://localhost:9090/axis/services/MyPort?wsdl)? Quoting J H <[EMAIL PROTECTED]>: > They are both setup to use different URI's, but I think what is going on is > that the first webapp is listening through port 8080 for slide messages and > the second, axis, webapp/service is listening for soap requests. > > When the slide webapp receives a request it starts up a axis call to the > axis server which is also running on port 8080 and the whole tomcat > container becomes unstable. > > I REALLY appreciate your help! I'm scouring the web looking for someone who > has done something similar. It seems like changing the port for axis would > be something people would commonly do, is that assumption incorrect? > > Thanks, > Jeff > > >From: James Wilson <[EMAIL PROTECTED]> > >Reply-To: axis-user@ws.apache.org > >To: axis-user@ws.apache.org > >Subject: Re: Change the Port that Axis Service runs as > >Date: Thu, 04 Aug 2005 11:28:44 -0500 > > > >This is sounding more and more like a it's not really an Axis question, but > >a > >servlet container question. > > > >I'm assuming when you say port, you're talking about TCP/IP port. The port > >is > >maintained by the servlet container. If you are developing two WARs at the > >same time, I recommend deploying both to the same instance of Tomcat (or > >some > >other container). Then you would access the two web applications via the > >same > >port, but different URI > > http://localhost:8080/axis > > http://localhost:8080/interface > > > >where one war was axis.war and the other was interface.war. > > > >Too answer your question about changing the port, Tomcat controls this in > >CATALINA_HOME/conf/server.xml. Look for the element. You can > >learn more about Tomcat administration by following the Documentation link > >for > >the version you are using from this page: http://jakarta.apache.org/tomcat/ > > > >-james > > > >Quoting J H <[EMAIL PROTECTED]>: > > > > > Well, I started out using Eclipse to create WAR files for both > > > webapplications (axis and interface), but I never ran the two in unison > > > through Eclipse. > > > > > > Is there a way to change the port that a servlet runs on? > > > > > > Thanks, > > > Jeff > > > > > > >From: James Wilson <[EMAIL PROTECTED]> > > > >Reply-To: axis-user@ws.apache.org > > > >To: axis-user@ws.apache.org > > > >Subject: Re: Change the Port that Axis Service runs as > > > >Date: Thu, 04 Aug 2005 07:38:56 -0500 > > > > > > > >I haven't been using Axis all that long either. However I don't think > >Axis > > > >itself can run on a port. Thus the application fighting over port 8080 > > > >would > > > >be your servlet container. Are you starting Tomcat via an Eclipse > >plugin? > > > > > > > >hope it helps, > > > >james > > > > > > > > > > > >Quoting J H <[EMAIL PROTECTED]>: > > > > > > > > > Hi Everyone. This is my first time e-mailing this list, because the > > > > > documentation out there for this project has been fantastic! > >(Thanks to > > > >the > > > > > Axis and Eclipse participants). > > > > > > > > > > I have built a self-contained web application (service) that > >implements > > > >the > > > > > Axis libraries. I have another webapplication that I would like to > >be > > > >able > > > > > to run on the same application server that talks to this custom axis > > > >service > > > > > to send messages back and forth to my client. It seems that the two > > > > > applications are fighting over the default port 8080. I have > >confirmed > > > >this > > > > > by installing the 2 webservices on different machines, and the > >solution > > > > > works great. I know it must be a simple solution, but I can't find > >out > > > > > anywhere how to change the port that Axis runs as. > > > > > > > > > > Thanks! > > > > > Jeff > > > > > > > > > > > > > > > > > > > > > > > > > > >
Re: Change the Port that Axis Service runs as
This is sounding more and more like a it's not really an Axis question, but a servlet container question. I'm assuming when you say port, you're talking about TCP/IP port. The port is maintained by the servlet container. If you are developing two WARs at the same time, I recommend deploying both to the same instance of Tomcat (or some other container). Then you would access the two web applications via the same port, but different URI http://localhost:8080/axis http://localhost:8080/interface where one war was axis.war and the other was interface.war. Too answer your question about changing the port, Tomcat controls this in CATALINA_HOME/conf/server.xml. Look for the element. You can learn more about Tomcat administration by following the Documentation link for the version you are using from this page: http://jakarta.apache.org/tomcat/ -james Quoting J H <[EMAIL PROTECTED]>: > Well, I started out using Eclipse to create WAR files for both > webapplications (axis and interface), but I never ran the two in unison > through Eclipse. > > Is there a way to change the port that a servlet runs on? > > Thanks, > Jeff > > >From: James Wilson <[EMAIL PROTECTED]> > >Reply-To: axis-user@ws.apache.org > >To: axis-user@ws.apache.org > >Subject: Re: Change the Port that Axis Service runs as > >Date: Thu, 04 Aug 2005 07:38:56 -0500 > > > >I haven't been using Axis all that long either. However I don't think Axis > >itself can run on a port. Thus the application fighting over port 8080 > >would > >be your servlet container. Are you starting Tomcat via an Eclipse plugin? > > > >hope it helps, > >james > > > > > >Quoting J H <[EMAIL PROTECTED]>: > > > > > Hi Everyone. This is my first time e-mailing this list, because the > > > documentation out there for this project has been fantastic! (Thanks to > >the > > > Axis and Eclipse participants). > > > > > > I have built a self-contained web application (service) that implements > >the > > > Axis libraries. I have another webapplication that I would like to be > >able > > > to run on the same application server that talks to this custom axis > >service > > > to send messages back and forth to my client. It seems that the two > > > applications are fighting over the default port 8080. I have confirmed > >this > > > by installing the 2 webservices on different machines, and the solution > > > works great. I know it must be a simple solution, but I can't find out > > > anywhere how to change the port that Axis runs as. > > > > > > Thanks! > > > Jeff > > > > > > > > > > > >
RE: Application scope objects that retain data
hmmm, if there was no 'temp=""' in the constructor then it makes me think you either stoped Tomcat or did a deploy between tests. I just ran a quick test with one of the service methods I'm working on. I also use scope="Application" and I couldn't get more than one instance of my service implementation created. >From the Axis users guide, I found ""Application" scope will create a singleton shared object to service all requests". This backs up what I just saw in my test. Do you think you might have performed a deploy between your previous test steps? -james Quoting "J.W.F. Thirion" <[EMAIL PROTECTED]>: > Thanks for your advice. I did try moving the temp="" part to the top (static > initializer) and the same thing happens. > > PS: What do you mean by "following the Singleton pattern". I am more from a > C/C++ background so the terminology is a bit strange to me. > > Thanks for the help! > Derik > > -Original Message- > From: James Wilson [mailto:[EMAIL PROTECTED] > Sent: 04 August 2005 15:15 > To: axis-user@ws.apache.org > Subject: Re: Application scope objects that retain data > > > This is interesting. I can't speak to the Axis internals. But what this > shows > me is that Axis is creating more than one service implementation class. > Thus > there is more than one instance of your Test class instanciated even though > they will live to service many requests. This is what I would expect for > Axis > to support multiple user-request-threads coming in from the Servlet > container. > > If you move the 'temp=""' line out of the constructor and into a static > initializer (static String temp="";) you will get the effect you are > looking > for. But to scale the example, you might want to implement a class > following > the Singleton pattern to maintain the application state. > > hope it helps, > james > > Quoting "J.W.F. Thirion" <[EMAIL PROTECTED]>: > > > Hi everyone, > > > > I appologise if this has been asked already, but I would like to know the > > following: Is it possible to have a Java class, e.g. Test in my Test.java, > > to keep the value of its static variables between calls to the service. > E.g. > > I have a static variable temp, to which I just add string data and on each > > call to getValue the value returned should be the value I passed to the > > function concatenated to previous String values. So on the first call, if > I > > pass "Hello", I would get back "Initial, Hello" and on the second call, if > I > > pass "there", I would get back "Initial, Hello there", and so on. The > object > > must thus never go out of scope. I assumed that I needed to set the scope > to > > application, but that didn't work (I just got back the string "Initial, > XXX" > > where XXX is what I passed to getValue - thus the constructor was called > on > > each call). Here is my deploy.wsdd file: > > > > http://xml.apache.org/axis/wsdd/"; > > xmlns:java="http://xml.apache.org/axis/wsdd/providers/java";> > > > > > > > > > > > > > > > > and here is my class: > > > > public class Test { > > static boolean bInitialised; > > static String temp; > > > > public Test() { > > bInitialised = false; > > temp = ""; > > } > > > > public static synchronized boolean isInitialised() { > > return bInitialised; > > } > > > > public static synchronized void initialise() { > > temp = "Initial, "; > > bInitialised = true; > > } > > > > public String getValue(String input) { > > if (!Test.isInitialised()) { > > Test.initialise(); > > } > > > > temp = temp + input; > > return temp; > > } > > } > > > > and I have deployed the service with the following: > > > > java org.apache.axis.client.AdminClient deploy.wsdd > > > > Any help would be greatly appreciated. > > > > Kind regards, > > J.W.F. Thirion (Dérik) > > E-mail: [EMAIL PROTECTED] > > > > > > > > >
Re: Application scope objects that retain data
This is interesting. I can't speak to the Axis internals. But what this shows me is that Axis is creating more than one service implementation class. Thus there is more than one instance of your Test class instanciated even though they will live to service many requests. This is what I would expect for Axis to support multiple user-request-threads coming in from the Servlet container. If you move the 'temp=""' line out of the constructor and into a static initializer (static String temp="";) you will get the effect you are looking for. But to scale the example, you might want to implement a class following the Singleton pattern to maintain the application state. hope it helps, james Quoting "J.W.F. Thirion" <[EMAIL PROTECTED]>: > Hi everyone, > > I appologise if this has been asked already, but I would like to know the > following: Is it possible to have a Java class, e.g. Test in my Test.java, > to keep the value of its static variables between calls to the service. E.g. > I have a static variable temp, to which I just add string data and on each > call to getValue the value returned should be the value I passed to the > function concatenated to previous String values. So on the first call, if I > pass "Hello", I would get back "Initial, Hello" and on the second call, if I > pass "there", I would get back "Initial, Hello there", and so on. The object > must thus never go out of scope. I assumed that I needed to set the scope to > application, but that didn't work (I just got back the string "Initial, XXX" > where XXX is what I passed to getValue - thus the constructor was called on > each call). Here is my deploy.wsdd file: > > http://xml.apache.org/axis/wsdd/"; > xmlns:java="http://xml.apache.org/axis/wsdd/providers/java";> > > > > > > > > and here is my class: > > public class Test { > static boolean bInitialised; > static String temp; > > public Test() { > bInitialised = false; > temp = ""; > } > > public static synchronized boolean isInitialised() { > return bInitialised; > } > > public static synchronized void initialise() { > temp = "Initial, "; > bInitialised = true; > } > > public String getValue(String input) { > if (!Test.isInitialised()) { > Test.initialise(); > } > > temp = temp + input; > return temp; > } > } > > and I have deployed the service with the following: > > java org.apache.axis.client.AdminClient deploy.wsdd > > Any help would be greatly appreciated. > > Kind regards, > J.W.F. Thirion (Dérik) > E-mail: [EMAIL PROTECTED] > > >
Re: Change the Port that Axis Service runs as
I haven't been using Axis all that long either. However I don't think Axis itself can run on a port. Thus the application fighting over port 8080 would be your servlet container. Are you starting Tomcat via an Eclipse plugin? hope it helps, james Quoting J H <[EMAIL PROTECTED]>: > Hi Everyone. This is my first time e-mailing this list, because the > documentation out there for this project has been fantastic! (Thanks to the > Axis and Eclipse participants). > > I have built a self-contained web application (service) that implements the > Axis libraries. I have another webapplication that I would like to be able > to run on the same application server that talks to this custom axis service > to send messages back and forth to my client. It seems that the two > applications are fighting over the default port 8080. I have confirmed this > by installing the 2 webservices on different machines, and the solution > works great. I know it must be a simple solution, but I can't find out > anywhere how to change the port that Axis runs as. > > Thanks! > Jeff > > >
Re: classes not generated for the types defined in schema
I had the same problem when I moved the schema into it's own file. It is now imported into the wsdl. If you are using the ant wsdl2java task, I think the step I took to get the imported schema to generate to java was to add the mapping child element. I've pasted below the task call from my build.xml Quoting vasantha sriram <[EMAIL PROTECTED]>: > Please note that the namespace in the wsdl file is a > url. > > It generated the service, bindingimpl, stub, locator, > porttype, deploy.wsdd and undeploy.wsdd. > It did not create the java classes that correspond the > types that are referred by the wsdl ( which are in a > separate schema definition files). > > In the stub class, there is a method like this > net.groove.webservices.Groove._2_0.Accounts.AccountList > read( > > You can see that AccountList is a type defined int the > schema, but there is no corresponding java file. > > Your help is appreciated. > > Do I have to copy the types defined in the schema to > the wdsl file ? > Do I have to generate the java classes for the types > separately ? > > This is what I see in the console > > {http://webservices.groove.net/Groove/2.0/Core/}GrooveRequestHeader > already exis > ts > {http://webservices.groove.net/Groove/2.0/Core/}>GrooveRequestHeader > already exi > sts > {http://webservices.groove.net/Groove/2.0/Core/}GrooveResponseHeader > already exi > sts > {http://webservices.groove.net/Groove/2.0/Core/}>GrooveResponseHeader > already ex > ists > {http://webservices.groove.net/Groove/2.0/Core/}URIList > already exists > {http://webservices.groove.net/Groove/2.0/Core/}IDList > already exists > > > Thanks > > > > > Start your day with Yahoo! - make it your home page > http://www.yahoo.com/r/hs > >
Re: FW: provident response error
The message looks familiar to some problems I was having a year ago with the Tibco BusinessWorks server and Weblogic's web service client. I don't remember the magic combination of type and encoding but it might have been rpc/literal. Quoting Patrick Quinn <[EMAIL PROTECTED]>: > Hi > > Would anyone be able to pass comment on the error seen below? > > It is seen by a BizTalk client consuming an Axis webservice. > > My Axis client simulator works perfectly and without error against the > service, but the .NET client throws the error described. > > Many thanks for any help or comments proffered. I can supply extra info > (WSDL, WSDD) as necessary. > > Patrick > > > > From: xxx > Sent: Thu 28/07/2005 17:25 > To: Patrick Quinn > Cc: xxx > Subject: provident response error > > > > Hi Patrick, > > > > Here is some deeper debugging information about the exception of the SIR 12. > If you read the 5th line: it says "unexpected content: > ProvisioningTaskRequestOperationResponse". Expected : > ProvisioningTaskResponse" > > > > Regards, > > xxx > > > > > > http://www.tibco.com/pe/EngineTypes";> > > Job-8000 Error in [Process > Definition.process/SOAPRequestReply] Output data invalid at > com.tibco.pe.core.TaskImpl.a(TaskImpl.java:501) at > com.tibco.pe.core.TaskImpl.eval(TaskImpl.java:376) at > com.tibco.pe.core.Job.a(Job.java:591) at > com.tibco.pe.core.Job.if(Job.java:443) at > com.tibco.pe.core.JobDispatcher$a.a(JobDispatcher.java:270) at > com.tibco.pe.core.JobDispatcher$a.run(JobDispatcher.java:218) caused by: > org.xml.sax.SAXException: validation error: unexpected content > "{urn:ProvidentProvisioningTNS}ProvisioningTaskRequestOperationResponse"; > expected "{urn:ProvidentProvisioningTNS}ProvisioningTaskResponse" > ({com.tibco.xml.validation}COMPLEX_E_UNEXPECTED_CONTENT) at > /outputMessage[1]/ProvisioningTaskRequestOperationResponse[1] > java.lang.Exception: unexpected content > "{urn:ProvidentProvisioningTNS}ProvisioningTaskRequestOperationResponse"; > expected "{urn:ProvidentProvisioningTNS}ProvisioningTaskResponse" > at > com.tibco.xml.validation.helpers.b.a(XmlContentValidatorElementContext.java:348) > at > com.tibco.xml.validation.helpers.h.if(XmlContentValidator.java:753) > at > com.tibco.xml.validation.helpers.h.startElement(XmlContentValidator.java:468) >at com.tibco.xml.datamodel.nodes.Element.content(Element.java:1087) > at com.tibco.xml.datamodel.nodes.Element.content(Element.java:1101) >at com.tibco.xml.datamodel.nodes.Element.content(Element.java:1101) > at com.tibco.xml.datamodel.nodes.Document.content(Document.java:226) at > com.tibco.xml.datamodel.nodes.Document.serialize(Document.java:242)at > com.tibco.xml.xdata.bind.BindingRunner.validate(BindingRunner.java:302) at > com.tibco.xml.xdata.bind.OutputBindingRunner.validate(OutputBindingRunner.java:47) >at com.tibco.pe.core.TaskImpl.a(TaskImpl.java:489) at > com.tibco.pe.core.TaskImpl.eval(TaskImpl.java:376) at > com.tibco.pe.core.Job.a(Job.java:591) at > com.tibco.pe.core.Job.if(Job.java:443) at > com.tibco.pe.core.JobDispatcher$a.a(JobDispatcher.java:270) at > com.tibco.pe.core.JobDispatcher$a.run(JobDispatcher.java:218) validation > error: unexpected end of content; expected > {urn:ProvidentProvisioningTNS}ProvisioningTaskResponse > ({com.tibco.xml.validation}COMPLEX_E_UNEXPECTED_END_OF_CONTENT) at > /outputMessage[1] java.lang.Exception: unexpected end of content; expected > {urn:ProvidentProvisioningTNS}ProvisioningTaskResponse at > com.tibco.xml.validation.helpers.b.case(XmlContentValidatorElementContext.java:414) >at com.tibco.xml.validation.helpers.h.a(XmlContentValidator.java:1182) > at > com.tibco.xml.validation.helpers.h.endElement(XmlContentValidator.java:1034) > at com.tibco.xml.datamodel.nodes.Element.content(Element.java:1108) >at com.tibco.xml.datamodel.nodes.Document.content(Document.java:226) > at com.tibco.xml.datamodel.nodes.Document.serialize(Document.java:242)at > com.tibco.xml.xdata.bind.BindingRunner.validate(BindingRunner.java:302) at > com.tibco.xml.xdata.bind.OutputBindingRunner.validate(OutputBindingRunner.java:47) >at com.tibco.pe.core.TaskImpl.a(TaskImpl.java:489) at > com.tibco.pe.core.TaskImpl.eval(TaskImpl.java:376) at > com.tibco.pe.core.Job.a(Job.java:591) at > com.tibco.pe.core.Job.if(Job.java:443) at > com.tibco.pe.core.JobDispatcher$a.a(JobDispatcher.java:270) at > com.tibco.pe.core.JobDispatcher$a.run(JobDispatcher.java:218)at > com.tibco.xml.xdata.bind.BindingRemarkHandler.assertNoErrors(BindingRemarkHandler.java:43) > at > com.tibco.xml.xdata.bind.BindingRunner.validate(BindingRunner.java:319) at > com.tibco.xml.xdata.bind.OutputBindingRunner.validate(OutputBindingRunner.java:47) >at com.tibco.pe.core.TaskImpl.a(TaskImpl.java:489) at > com.tibco.pe.core.TaskImpl.eval(TaskImpl.java:376) a
Re: Tomcat version recommended in Axis docs
This configuration is working for me also. In fact, I'd like to see the code generation from wsdl2java take advantage of Generics. I'm a bit obsessive and so I have to modify my *Stub classes after generation with @SuppressWarnings("unchecked") to block the warnings. Quoting Simon Brunning <[EMAIL PROTECTED]>: > On 7/29/05, Guy Rixon <[EMAIL PROTECTED]> wrote: > > Is Axis compatible with Tomcat 5.5.x and Java 5? > > Works for me. > > -- > Cheers, > Simon B, > [EMAIL PROTECTED], > http://www.brunningonline.net/simon/blog/ >
RE: named parameters in wsdl
Look in the schema and/or DTD: http://cvs.apache.org/viewcvs.cgi/ws-axis/java/wsdd/ Quoting [EMAIL PROTECTED]: > Thanks, I expected it would be a change to the wsdd file but I can't find > the docs for it...it's not in the userguide AFAIK > > James Burton > > Web Developer > > Database and Development > > Cultural Services > > Brighton & Hove City Council > > tel: 01273 293594 > > > > > > > |-+---+--> > | | | | > | | | "Edward Taaffe"| > | | | <[EMAIL PROTECTED]| > | | |g.uk> | > | | | | > | | | 28/07/2005 14:32| > | | | | > | | | Please respond to | > | | | axis-user | > |-+---+--> > > >-| > | > | > | To: > | > | cc: > | > | Subject: RE: named parameters in wsdl > | > > >-| > > > > > HI, > I don't have time to look it up right now, but the answer to your > question is in the online instructions. I think you need to edit the > wsdd file to set the name yo want for each parameter > > Ed > > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] > Sent: 28 July 2005 14:27 > To: axis-user@ws.apache.org > Subject: named parameters in wsdl > > > Hi. I'm using axis 1.2.1 & Tomcat 5.5 - My problem is that in the wsdl > for > my WS the parameters in methods are named in0, in1 etc etc. The WS is > deployed with this wsdd: > > http://xml.apache.org/axis/wsdd/"; > xmlns:java="http://xml.apache.org/axis/wsdd/providers/java";> > > > value="uk.gov.brightonhove.ws.gazetteer.GazetteerService"/> > > xmlns:gaz="urn:GazetteerService" > languageSpecificType="java:uk.gov.brightonhove.ws.gazetteer.Property"/> > languageSpecificType="java:uk.gov.brightonhove.ws.gazetteer.Street"/> > languageSpecificType="java:uk.gov.brightonhove.ws.gazetteer.BLPU"/> > > > > value="uk.gov.brightonhove.ws.gazetteer.GazetteerPortableService"/> > > > > > > and the command > > java -cp %AXISCLASSPATH% org.apache.axis.client.AdminClient deploy.wsdd > > and a fragment from the wsdl looks like > > > > > > > > > how do I deploy the WS in such a way as to have the params named as in > the > source code?I have searched this ml and found a guy with the same > problem - > http://marc.theaimsgroup.com/?l=axis-user&m=108878710304676&w=2 - but > the > answer related to using java2wsdl whereas I'm using a wsdd file and the > AdminClient for deployment - I'd like to keep it that way, or do I need > to > use java2wsdl to get round this? > > Thanks, > > > James Burton > > > > Web Developer > > > > Database and Development > > > > Cultural Services > > > > Brighton & Hove City Council > > > > tel: 01273 293594 > > > > > > Notice to recipient: > The information contained in this electronic mail message is intended > only for the use of the individual to whom it is addressed and may > contain information which is privileged and confidential, the disclosure > of which is prohibited by law. If the reader of this message is not the > intended recipient, please note that any dissemination, distribution or > copying of this communication is strictly prohibited. If you have > received this communication in error please notify the sender > immediately. Thank you in anticipation of your co-operation. > > You can visit our website at http://www.brighton-hove.gov.uk > > Please consider the environment, only print out this email if absolutely > necessary. > > > > > Notice to recipient: > The information contained in this electronic mail message is intended only > for the use of the individual to whom it is addressed and may contain > information which is privileged and confidential, the disclosure of which is > prohibited by law. If the reader of this message is not the intended > recipient, please note that any dissemination, distribution or copying of > this communication is strictly prohibited. If you have received this > communication in error please notify the sender immediately. Thank you in > anticipation of your co-operation. > > You can visit our website at http://www.brighton-hove.gov.uk > > Please consider the environment, only print out this email if absolutely > necessary. >
Re: difference between rpc/lit and doc/lit
During the conversion of my WSDL and it's services from rpc/enc to doc/lit I at one time had multi-part input messages. The Axis client was happy to create the soap envelopes with more than one soapenv:body child element. However, it's just as you say that Axis would resolve the method signature based on only the first child. This was an intermediate step as I converted the service(s) to pass the WS-I Basic Profile tests. Thank you for the clarification. Regarding the differences between rpc and document encoding styles, I recommend the W3C website: http://www.w3.org/TR/wsdl. This was a great source of information during my doc/lit conversion. -James Quoting Anne Thomas Manes <[EMAIL PROTECTED]>: > James, > > You are correct -- neither the WSDL 1.1 spec nor the SOAP 1.1 spec > specifies that the may contain at most one top-level > element, but neither do they specify how a SOAP engine should > interpret a that contains more than one top-level element. > > Should the extra elements be treated as multiple elements for input to > a single operation, or should each element be processed as a separate > operation request? > > Most SOAP engines, including Axis, ignore all extra elements. I'm > surprised to hear you say that you have produced a doc/lit service > with mutliple body parts that worked the way you expected it to. I've > answered quite a few questions on this list from people who say that > they're missing all by the first parameter when using doc/lit. > > The "one top-level element per " rule comes from the WS-I BP. > > (Also note that WSDL 1.1 is not a W3C Recommendation. It's just a "W3C > Note". That status does not imply any kind of endorsement or > ratification by W3C. It just means that W3C has published a submitted > specification for the purpose of public discussion.) > > Anne > > On 7/26/05, James Wilson <[EMAIL PROTECTED]> wrote: > > > > > > Quoting Anne Thomas Manes <[EMAIL PROTECTED]>: > > > > > WSDL style (rpc vs document) has no impact on whether or not you can > > > map multiple binding ports to a single URL. That's more likely to be a > > > function of your SOAP engine rather than the design of your service. > > > > > > There are a number of differences between the way you define an > > > rpc/lit WSDL versus a doc/lit WSDL, but "wrapped" doc/lit and rpc/lit > > > look almost identical on the wire. You may see differences in > > > namespaces and in the response element name. In doc/lit, the schema > > > explicitly specifies the name of the response element and what > > > namespaces must be used for the top-level element and all local > > > elements. In rpc/lit, the top-level element within the is > > > in the namespace specified by the namespace attribute in the > > > definition in the , and the parameter > > > elements are never namespace qualified. Also, in rpc/lit the SOAP > > > engine autogenerates the name of the response element, and its name is > > > not significant. > > > > > > When using doc/lit, you define the full schema of the message payload > > > by defining the structure of the contents of the > > > . There can be at most one top-level element within the > > > , therefore this element must contain all message > > > parameters. > > > > I'm confused by this last sentence. I don't see in the WSDL1.1 spec from > w3c > > that a doc/lit body can have only one child element, "If the operation > style is > > document there are no additional wrappers, and the message parts appear > directly > > under the SOAP Body element." In practice, my services that had more than > one > > part, produced messages that had more than one child element in the > > soapenv:body. > > > > I did encounter that the WS-I Basic Profile adds the restriction that > doc/lit > > messages can have only one part. > > > > > The definition must specify at most one > > > body part (although it may contain additional header or fault parts), > > > and that body part must reference the definition. For > > > example, for an operation "foobar" with two input parameters "foo" and > > > "bar", the definition would look like this: > > > > > > > > > > > > > > > > > > And the ns1:foobar element definition would look something like this: > > > > > > > > > > > > > > > > > > > > > >
Re: difference between rpc/lit and doc/lit
Quoting Anne Thomas Manes <[EMAIL PROTECTED]>: > WSDL style (rpc vs document) has no impact on whether or not you can > map multiple binding ports to a single URL. That's more likely to be a > function of your SOAP engine rather than the design of your service. > > There are a number of differences between the way you define an > rpc/lit WSDL versus a doc/lit WSDL, but "wrapped" doc/lit and rpc/lit > look almost identical on the wire. You may see differences in > namespaces and in the response element name. In doc/lit, the schema > explicitly specifies the name of the response element and what > namespaces must be used for the top-level element and all local > elements. In rpc/lit, the top-level element within the is > in the namespace specified by the namespace attribute in the > definition in the , and the parameter > elements are never namespace qualified. Also, in rpc/lit the SOAP > engine autogenerates the name of the response element, and its name is > not significant. > > When using doc/lit, you define the full schema of the message payload > by defining the structure of the contents of the > . There can be at most one top-level element within the > , therefore this element must contain all message > parameters. I'm confused by this last sentence. I don't see in the WSDL1.1 spec from w3c that a doc/lit body can have only one child element, "If the operation style is document there are no additional wrappers, and the message parts appear directly under the SOAP Body element." In practice, my services that had more than one part, produced messages that had more than one child element in the soapenv:body. I did encounter that the WS-I Basic Profile adds the restriction that doc/lit messages can have only one part. > The definition must specify at most one > body part (although it may contain additional header or fault parts), > and that body part must reference the definition. For > example, for an operation "foobar" with two input parameters "foo" and > "bar", the definition would look like this: > > > > > > And the ns1:foobar element definition would look something like this: > > > > > > > > > > > When using wrapped doc/lit, the top-level element name must be the > same as the operation name (in this case, "foobar"). When using > unwrapped doc/lit, the top-level element may have any name -- but you > still must define all input information as local elements within the > top-level element. > > When using rpc/lit, you do not define the full schema of the message > payload. Instead you only define the types of your input parameters. > At runtime, the SOAP engine autogenerates the message element > structure. As with doc/lit, the may contain at most one > top-level element, but in this case, the SOAP engine generates this > element. It uses the operation name for the element's local name, and > it gets the namespace from the namespace attribute in the > definition. The SOAP engine also generates elements > for each parameter type. These elements as unqualified, and the local > name comes from the name attribute in the definition. > > In rpc/lit, the definition specifies one body part for > each operation parameter. Each definition must specify the > name of the parameter and the parameter type. If the parameter type is > a complexType, then the type must be defined as a in > the section. For the "foobar" example, the > definition would look like this: > > > > > > > Anne > > On 7/26/05, Mark Hansen <[EMAIL PROTECTED]> wrote: > > Is the only difference between rpc/lit and doc/lit that the rpc/lit > > style wraps the parameters (parts) in the method (operation) name? Is > > the purpose of the rpc/lit style to use the method wrapper as a way to > > implement the WSDL allowed mapping of multiple binding ports to a single > > URL? > > > > Thanks for any clarification, > > > > Mark > > > > >
Re: axis log4j
What version of Axis and where are you deploying -- Tomcat? The container will have more of an effect on logging than Axis. Since your appenders are not being configured it sounds like Log4j is not configuring via the file(.xml or .properties) you think. The log4j.xml syntax to "stop" axis logging is the following. Though I set the level to INFO instead of FATAL. Just include this in your .xml log4j configuration file. -James Quoting Tamara Hills <[EMAIL PROTECTED]>: > Does anyone have a good idea on how to stop all the axis logging in > log4j without losing my own log4j debug? Also, when we have log4j with > Axis, we cannot get our rollingfileappender to work properly. We only > get one file instead of the 10 that we specify. > > Also, what is simplelog.properties and what (if anything) is it needed > for? > > Thanks, > > -tamara >