Title: Message
Hi Alan,
 
I would like to expose an EJB as a Web Service - I assume that Axis can to do this because it supplies an EJB provider. Java2Wsdl creates a WSDL automatically for Java classes that implement java.rmi.Remote but seems to choke if they implement javax.ejb.EJBObject (which extends java.rmi.Remote). That's the problem.
 
Naresh
-----Original Message-----
From: Alan Buxton [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, January 28, 2003 5:01 AM
To: [EMAIL PROTECTED]
Subject: Re: Does Java2Wsdl support EJBs?

Sorry if this is a dumb question, but why do you need Java2Wsdl?

on 26/1/03 11:42 AM, Naresh Bhatia at [EMAIL PROTECTED] wrote:


Does Java2Wsdl support WSDL generation from EJBs? I tried it but I am getting the following exception:

WSDLException: faultCode=OTHER_ERROR: Can't find prefix for 'http://ejb.javax'.
           Namespace prefixes must be set on the Definition object using the
           addNamespace(...) method.:

My ant build script is as follows (compile.path includes J2EE jars, thus the javax.ejb package):

 <taskdef name="java2wsdl" classname="org.apache.axis.tools.ant.wsdl.Java2WsdlAntTask">
   <classpath>
     <path refid="axis.path"/>
   </classpath>
 </taskdef>

 <target name="build-web-service">
   <java2wsdl
     classname="MyEjb"
     implclass="MyEjbBean"
     namespace="http://MyEjb"
     location="http://camnbhati:7001/soap/services/MyService"
     extraClasses=""
     output="${build.dir}/MyService.wsdl">
     <classpath>
       <path refid="compile.path"/>
       <pathelement location="${build.dir}"/>
     </classpath>
   </java2wsdl>
 </target>

Here's are the exception details from java2WSD:

[java2wsdl] Java2WSDL MyEjb
[java2wsdl] WSDLException: faultCode=OTHER_ERROR: Can't find prefix for 'http://ejb.javax'.
           Namespace prefixes must be set on the Definition object using the
           addNamespace(...) method.:
[java2wsdl]     at com.ibm.wsdl.util.xml.DOMUtils.getPrefix(Unknown Source)
[java2wsdl]     at com.ibm.wsdl.util.xml.DOMUtils.getQualifiedValue(Unknown Source)
[java2wsdl]     at com.ibm.wsdl.util.xml.DOMUtils.printQualifiedAttribute(Unknown Source)
[java2wsdl]     at com.ibm.wsdl.xml.WSDLWriterImpl.printParts(Unknown Source)
[java2wsdl]     at com.ibm.wsdl.xml.WSDLWriterImpl.printMessages(Unknown Source)
[java2wsdl]     at com.ibm.wsdl.xml.WSDLWriterImpl.printDefinition(Unknown Source)
[java2wsdl]     at com.ibm.wsdl.xml.WSDLWriterImpl.writeWSDL(Unknown Source)
[java2wsdl]     at com.ibm.wsdl.xml.WSDLWriterImpl.getDocument(Unknown Source)
[java2wsdl]     at org.apache.axis.wsdl.fromJava.Emitter.emit(Emitter.java:269)
[java2wsdl]     at org.apache.axis.wsdl.fromJava.Emitter.emit(Emitter.java:338)
[java2wsdl]     at org.apache.axis.tools.ant.wsdl.Java2WsdlAntTask.execute(Java2WsdlAntTask.java:249)
[java2wsdl]     at org.apache.tools.ant.Task.perform(Task.java:319)
[java2wsdl]     at org.apache.tools.ant.Target.execute(Target.java:309)
[java2wsdl]     at org.apache.tools.ant.Target.performTasks(Target.java:336)
[java2wsdl]     at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
[java2wsdl]     at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:371)
[java2wsdl]     at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:143)
[java2wsdl]     at org.apache.tools.ant.Task.perform(Task.java:319)
[java2wsdl]     at org.apache.tools.ant.Target.execute(Target.java:309)
[java2wsdl]     at org.apache.tools.ant.Target.performTasks(Target.java:336)
[java2wsdl]     at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
[java2wsdl]     at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:371)
[java2wsdl]     at org.apache.tools.ant.Task.perform(Task.java:319)
[java2wsdl]     at org.apache.tools.ant.Target.execute(Target.java:309)
[java2wsdl]     at org.apache.tools.ant.Target.performTasks(Target.java:336)
[java2wsdl]     at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
[java2wsdl]     at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:371)
[java2wsdl]     at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:143)
[java2wsdl]     at net.sf.antcontrib.logic.ForEach.execute(Unknown Source)
[java2wsdl]     at org.apache.tools.ant.Task.perform(Task.java:319)
[java2wsdl]     at org.apache.tools.ant.Target.execute(Target.java:309)
[java2wsdl]     at org.apache.tools.ant.Target.performTasks(Target.java:336)
[java2wsdl]     at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
[java2wsdl]     at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:371)
[java2wsdl]     at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:143)
[java2wsdl]     at org.apache.tools.ant.Task.perform(Task.java:319)
[java2wsdl]     at org.apache.tools.ant.Target.execute(Target.java:309)
[java2wsdl]     at org.apache.tools.ant.Target.performTasks(Target.java:336)
[java2wsdl]     at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
[java2wsdl]     at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:371)
[java2wsdl]     at org.apache.tools.ant.Task.perform(Task.java:319)
[java2wsdl]     at org.apache.tools.ant.Target.execute(Target.java:309)
[java2wsdl]     at org.apache.tools.ant.Target.performTasks(Target.java:336)
[java2wsdl]     at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
[java2wsdl]     at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:371)
[java2wsdl]     at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:143)
[java2wsdl]     at net.sf.antcontrib.logic.ForEach.execute(Unknown Source)
[java2wsdl]     at org.apache.tools.ant.Task.perform(Task.java:319)
[java2wsdl]     at org.apache.tools.ant.Target.execute(Target.java:309)
[java2wsdl]     at org.apache.tools.ant.Target.performTasks(Target.java:336)
[java2wsdl]     at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
[java2wsdl]     at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:371)
[java2wsdl]     at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:143)
[java2wsdl]     at org.apache.tools.ant.Task.perform(Task.java:319)
[java2wsdl]     at org.apache.tools.ant.Target.execute(Target.java:309)
[java2wsdl]     at org.apache.tools.ant.Target.performTasks(Target.java:336)
[java2wsdl]     at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
[java2wsdl]     at org.apache.tools.ant.Project.executeTargets(Project.java:1250)
[java2wsdl]     at org.apache.tools.ant.Main.runBuild(Main.java:610)
[java2wsdl]     at org.apache.tools.ant.Main.start(Main.java:196)
[java2wsdl]     at org.apache.tools.ant.Main.main(Main.java:235)

Reply via email to