Re: SOAP and Orion
Please forward me on to whomever solved this. I'm using orion 1.5.4 so an upgrade is out of the question. I would like to talk to someone and see how they set up orion, their application and their classpath. --- [EMAIL PROTECTED] wrote: Hi Jon, We had a similar sounding problem with SOAP and when we upgraded to orion 1.5.2 the problem was fixed. I wasn't the one working on the problem so I don't have much more info. Hope this helps. -Heath --- Jon Bricker [EMAIL PROTECTED] wrote: I really need some help getting a SOAP application to work on orion. I have an application set up with a servlet front that will call the SOAP rpcrouter. All in all the application is simular to the one in the Java SOAP book by Hernry Bequet. I put the soap.jar in my WEB-INF/lib in my application. The problem I'm having is that the SOAP call can never find my class that is in my deployment discriptor. I've heard that this is a classpath issue but I just can not figure out what the problem is. here is the error: Ouch, the call failed: Fault Code = SOAP-ENV:Server.BadTargetObjectURI Fault String = Unable to resolve target object: com.lilly.javaatg.catd.servlet.DataLoaderImpl I have soap in one location on my machine Here is the deploymentDescriptor.xml isd:service xmlns:isd=http://xml.apache.org/xml-soap/deployment; id=urn:CanDEDataMgr isd:provider type=java scope=Request methods=isUserValid isd:java class=com.lilly.javaatg.catd.servlet.DataLoaderImpl static=false/ /isd:provider isd:faultListenerorg.apache.soap.server.DOMFaultListener/isd:faultListener /isd:service Here is the call I use to deploy it java org.apache.soap... http://localhost:8088/servlet/rpcrouter deploy deplymentDescriptor.xml here is my test code to call it. URL url = new URL(http://localhost:8088/cande/servlet/rpcrouter;); // Build the call. Call call = new Call (); call.setTargetObjectURI (urn:CanDEDataMgr); call.setMethodName (isUserValid); Vector params = new Vector (); params.addElement (new Parameter(userID, String.class, userID, Constants.NS_URI_SOAP_ENC)); params.addElement (new Parameter(password, String.class, password, Constants.NS_URI_SOAP_ENC)); call.setParams (params); Here is my web.xml mappings servlet servlet-namecandeLoad/servlet-name display-nameCATD CanDE Patient Data load Servlet/display-name descriptionno description/description servlet-classcom.lilly.javaatg.catd.servlet.CanDEDataLoad.CanDELoadServlet/servlet-class /servlet !-- SOAP rpcrouter servlet -- servlet servlet-namerpcrouter/servlet-name display-nameApache-SOAP RPC Router/display-name descriptionno description/description servlet-classorg.apache.soap.server.http.RPCRouterServlet/servlet-class init-param param-namefaultListener/param-name param-valueorg.apache.soap.server.DOMFaultListener/param-value /init-param /servlet !-- Servlet Name to URL Pattern Recognition Mapping -- servlet-mapping servlet-namecandeLoad/servlet-name url-pattern/candeLoad/url-pattern /servlet-mapping servlet-mapping servlet-namerpcrouter/servlet-name url-pattern/rpcrouter/url-pattern /servlet-mapping = Jon Bricker You should never settle for the lesser of two Weasels. __ Do You Yahoo!? Yahoo! Health - your guide to health and wellness http://health.yahoo.com __ Do You Yahoo!? Yahoo! Health - your guide to health and wellness http://health.yahoo.com = Jon Bricker You should never settle for the lesser of two Weasels. __ Do You Yahoo!? Yahoo! Health - your guide to health and wellness http://health.yahoo.com
SOAP and Orion
I really need some help getting a SOAP application to work on orion. I have an application set up with a servlet front that will call the SOAP rpcrouter. All in all the application is simular to the one in the Java SOAP book by Hernry Bequet. I put the soap.jar in my WEB-INF/lib in my application. The problem I'm having is that the SOAP call can never find my class that is in my deployment discriptor. I've heard that this is a classpath issue but I just can not figure out what the problem is. here is the error: Ouch, the call failed: Fault Code = SOAP-ENV:Server.BadTargetObjectURI Fault String = Unable to resolve target object: com.lilly.javaatg.catd.servlet.DataLoaderImpl I have soap in one location on my machine Here is the deploymentDescriptor.xml isd:service xmlns:isd=http://xml.apache.org/xml-soap/deployment; id=urn:CanDEDataMgr isd:provider type=java scope=Request methods=isUserValid isd:java class=com.lilly.javaatg.catd.servlet.DataLoaderImpl static=false/ /isd:provider isd:faultListenerorg.apache.soap.server.DOMFaultListener/isd:faultListener /isd:service Here is the call I use to deploy it java org.apache.soap... http://localhost:8088/servlet/rpcrouter deploy deplymentDescriptor.xml here is my test code to call it. URL url = new URL(http://localhost:8088/cande/servlet/rpcrouter;); // Build the call. Call call = new Call (); call.setTargetObjectURI (urn:CanDEDataMgr); call.setMethodName (isUserValid); Vector params = new Vector (); params.addElement (new Parameter(userID, String.class, userID, Constants.NS_URI_SOAP_ENC)); params.addElement (new Parameter(password, String.class, password, Constants.NS_URI_SOAP_ENC)); call.setParams (params); Here is my web.xml mappings servlet servlet-namecandeLoad/servlet-name display-nameCATD CanDE Patient Data load Servlet/display-name descriptionno description/description servlet-classcom.lilly.javaatg.catd.servlet.CanDEDataLoad.CanDELoadServlet/servlet-class /servlet !-- SOAP rpcrouter servlet -- servlet servlet-namerpcrouter/servlet-name display-nameApache-SOAP RPC Router/display-name descriptionno description/description servlet-classorg.apache.soap.server.http.RPCRouterServlet/servlet-class init-param param-namefaultListener/param-name param-valueorg.apache.soap.server.DOMFaultListener/param-value /init-param /servlet !-- Servlet Name to URL Pattern Recognition Mapping -- servlet-mapping servlet-namecandeLoad/servlet-name url-pattern/candeLoad/url-pattern /servlet-mapping servlet-mapping servlet-namerpcrouter/servlet-name url-pattern/rpcrouter/url-pattern /servlet-mapping = Jon Bricker You should never settle for the lesser of two Weasels. __ Do You Yahoo!? Yahoo! Health - your guide to health and wellness http://health.yahoo.com
Re: SOAP and Orion
Hi Jon, We had a similar sounding problem with SOAP and when we upgraded to orion 1.5.2 the problem was fixed. I wasn't the one working on the problem so I don't have much more info. Hope this helps. -Heath --- Jon Bricker [EMAIL PROTECTED] wrote: I really need some help getting a SOAP application to work on orion. I have an application set up with a servlet front that will call the SOAP rpcrouter. All in all the application is simular to the one in the Java SOAP book by Hernry Bequet. I put the soap.jar in my WEB-INF/lib in my application. The problem I'm having is that the SOAP call can never find my class that is in my deployment discriptor. I've heard that this is a classpath issue but I just can not figure out what the problem is. here is the error: Ouch, the call failed: Fault Code = SOAP-ENV:Server.BadTargetObjectURI Fault String = Unable to resolve target object: com.lilly.javaatg.catd.servlet.DataLoaderImpl I have soap in one location on my machine Here is the deploymentDescriptor.xml isd:service xmlns:isd=http://xml.apache.org/xml-soap/deployment; id=urn:CanDEDataMgr isd:provider type=java scope=Request methods=isUserValid isd:java class=com.lilly.javaatg.catd.servlet.DataLoaderImpl static=false/ /isd:provider isd:faultListenerorg.apache.soap.server.DOMFaultListener/isd:faultListener /isd:service Here is the call I use to deploy it java org.apache.soap... http://localhost:8088/servlet/rpcrouter deploy deplymentDescriptor.xml here is my test code to call it. URL url = new URL(http://localhost:8088/cande/servlet/rpcrouter;); // Build the call. Call call = new Call (); call.setTargetObjectURI (urn:CanDEDataMgr); call.setMethodName (isUserValid); Vector params = new Vector (); params.addElement (new Parameter(userID, String.class, userID, Constants.NS_URI_SOAP_ENC)); params.addElement (new Parameter(password, String.class, password, Constants.NS_URI_SOAP_ENC)); call.setParams (params); Here is my web.xml mappings servlet servlet-namecandeLoad/servlet-name display-nameCATD CanDE Patient Data load Servlet/display-name descriptionno description/description servlet-classcom.lilly.javaatg.catd.servlet.CanDEDataLoad.CanDELoadServlet/servlet-class /servlet !-- SOAP rpcrouter servlet -- servlet servlet-namerpcrouter/servlet-name display-nameApache-SOAP RPC Router/display-name descriptionno description/description servlet-classorg.apache.soap.server.http.RPCRouterServlet/servlet-class init-param param-namefaultListener/param-name param-valueorg.apache.soap.server.DOMFaultListener/param-value /init-param /servlet !-- Servlet Name to URL Pattern Recognition Mapping -- servlet-mapping servlet-namecandeLoad/servlet-name url-pattern/candeLoad/url-pattern /servlet-mapping servlet-mapping servlet-namerpcrouter/servlet-name url-pattern/rpcrouter/url-pattern /servlet-mapping = Jon Bricker You should never settle for the lesser of two Weasels. __ Do You Yahoo!? Yahoo! Health - your guide to health and wellness http://health.yahoo.com __ Do You Yahoo!? Yahoo! Health - your guide to health and wellness http://health.yahoo.com
Re: SOAP w/ Orion
Hello Montebove, I must recognise that I don't understand how to deploy the service You sent. I tried to deploy by throughing the .jws file in the axis folder and by writing a deploy.xml admin:deploy xmlns:admin=AdminService service name=HelloService pivot=RPCDispatcher option name=className value=hello.web.HelloServlet/ option name=methodName value=*/ /service /admin:deploy but nothing worked. When You use the .jws file how does Axis know of the EJB classes? BTW: When accessing EJBs by SOAP this way, is it possible to use stateful session beans the it's meant to be, i.e., a client always gets his session bean? michael Montebove Luciano wrote: Hi Michael, I didn't try it with Apache Soap, but with Apache Axis it works. Attached a sample jws that calls the simple HelloBean from Orion Primer. It works fine also with a Visual Basic client using pocketSoap 1.1. If the ejb is part of the same J2EE application as the Axis servlet you don't need any special coding in the .jws(consider the Axis Web application as an additional web-module of your application). Hope this help Luciano -Original Message- From: Michael Simons [mailto:[EMAIL PROTECTED]] Sent: lunedì 22 ottobre 2001 15.45 To: Orion-Interest Subject: SOAP w/ Orion Hello, I cannot access an EJB Stateful Session Bean from a Java client using SOAP. Trying to do so always ends up with the message: Fault Code = SOAP-ENV:Server Fault String = Unable to initialize context I assume that the context mentioned in the message means the JNDI context, but I don't know why Orion can't initialize it. Accessing the application from a Java client using RMI (ORMI) succeeds! Accessing another WebService (no EJB but just a simple Java class) succeeds so Orion and SOAP are basically working! I can deploy the service by: java -cp /opt/orion/orion.jar:/home/sim/soap-2_2/lib/soap.jar org.apache.soap.server.ServiceManagerClient http://localhost:900/soap/servlet/rpcrouter deploy DeploymentDescriptor.xml And it's shown in the Apache SOAP Admin Page: 'urn:ejbhello' Service Deployment Descriptor Property Details ID urn:ejbhello Scope Application User-Defined Provider Type org.apache.soap.providers.StatefulEJBProvider Provider ClassHelloService Use Static Class false Methods create, hello Type Mappings Default Mapping Registry Class Any help is highly appreciated, michael HelloService.jws Content-Type: application/octet-stream