• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

J2EE web services, Axis, JWSDP

 
Ranch Hand
Posts: 290
Oracle Tomcat Server Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi all,

Need some clarification about the subject matter.

1. Are Axis and JWSDP implementation of JAX-RPC and can be used interchangeably?
2. Can web services developed with Axis run on J2EE servers like Oralce AS, Websphere with out modification.

3. Is the depolyment of web services standard across all these? I know there is a JSR which covers this issue.

4. I have developed web services using Axis, I would like to deploy them on Oracle AS and websphere AS, Do i need to change any thing?

5. Is there any standard API for developing web services, like JMS for accessing MOM or JAXP for XML?

Thanks
Ahmad
 
Bartender
Posts: 2968
6
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
You may want to have a look at this topic:
Portable J2EE 1.4 Web Services?

1. Are Axis and JWSDP implementation of JAX-RPC and can be used interchangeably?

Both implementations have to follow the JAX-RPC spec so in "principle" they are exchangeable. That however is meaningless as the tools such as WSDL2Java, Java2WSDL (or the equivalent Wizard-like tools that come with other app servers) are not limited to generating code that uses only the APIs from the various Java/J2EE Web Service Specs - they will readily include references to libraries that are unique to the platform that those tools came with. If however you were to (tediously) hand code a component that uses exclusively JAX-RPC and other prevalent libraries then there is a chance that the component may be portable (can't say for sure because I haven't tried it.)

2. Can web services developed with Axis run on J2EE servers like Oralce AS, Websphere with out modification.

Only if you also deploy Axis to those platforms. These servers will not serve the web service from their own web services infrastructure - as far as they are concerned Axis is just another web app. Many people have done this successfully but there are also cases where they ran into some problems.
If you don't want to deploy Axis you will have to hand code the component using only the standard APIs (possibly duplicating a lot of functionality that is already available in vendor-specific libraries). Another option is to adopt a strategy of coding the service implementation (the piece that does the actual work rather than the "web service interfacing") in a portable component and provide a WSDL (which should comply with the Basic Profile) - then use the application server specific tools to generate the server/client stubs and write the "glue" (delegation) code to use your portable service implementation.

3. Is the deployment of web services standard across all these? I know there is a JSR which covers this issue.

Not at the moment. Which is the JSR that is supposed to address this? (JSR-224 JAX-WS 2.0?) Currently the Java/J2EE Web Service specifications focus on providing the infrastructure that makes it possible to build components that can provide/consume interoperable Web Services - portability of the component built under one vendors server to another vendors server was not a concern. That doesn't mean it won't be in the future - however I can't see that the vendors will be happy about it.

4. I have developed web services using Axis, I would like to deploy them on Oracle AS and websphere AS, Do i need to change any thing?
As I said before, you will have to install Axis to the application server. And getting Axis to work may or may not be a challenge. Also keep in mind that Axis only supports "Java Web Services", not "J2EE Web Services". A J2EE 1.4 compliant web server has to be able to expose a Stateless Session Bean as a Web service - Axis can't do that (you need an EJB container for that). However it may a better, architecturally speaking, to implement the actual service in "plain Java" and then expose the service "in parallel" as a Web Service and an SLSB, rather than stacking the Web Service on top of the SLSB - so the "Web Service SLSB" thing may not be an issue.

5. Is there any standard API for developing web services, like JMS for accessing MOM or JAXP for XML?

Yes - but its not "one" API (JAX-RPC, JAX-WS, SAAJ, JAXP, JAXB, etc). And the standard APIs aren't the problem. The problem is that the "helpful" tools like WSDL2Java, Java2WSDL, etc. will include dependencies to the platform that provided them in the first place. There are currently no specifications that mandate: "Given a WSDL that looks like this your WSDL2Java tool shall generate code for client and server stubs that looks like that, which only includes dependencies to the following standard APIs (JAXP,...) ".
 
Aryan Khan
Ranch Hand
Posts: 290
Oracle Tomcat Server Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Many thanks for the detailed reply.
My concern was the same that after running WSDL2Java or other tools from axis they refer to packages from org.apache* they may conform to JAX-RPC standards but the API is different and wont make it portable. I havent been through the sun specs, but why such a lazy effort is being made for web services. It is a great technology every one needs it and can use it. Why doesnt the sun specs mandate standards for tools like WSDL2Java as well.

Many thanks
Ahmad
 
Don't get me started about those stupid light bulbs.
reply
    Bookmark Topic Watch Topic
  • New Topic