Problem EJB - Java Proxy XI

Hi,
I have created a receiver java proxy asynchronous interface. The Message Interface inbound is a Idoc.
I have used the How to… Work with XI 3.0 Java Proxies
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/7d4db211-0d01-0010-1e8e-9b07fc2113ab
The sender and receiver message I don’t problem, all is correct. But when execute the EJB it leaves east problem to me:
#com.sap.engine.services.ejb#sap.com/com.sap.xi.proxyserver
#com.sap.engine.services.ejb#J2EE_GUEST
#0#SAP J2EE Engine JTA Transaction : [0ffffff81ffffffebffffff9200bffffffb4]
#simonxid_SXD_8514450#XIAPPLUSER
#cd25eae0830d11dc89690016350b5872
#SAPEngine_Application_Thread[impl:3]_21
##0#0#Error##Java###
[EXCEPTION]
#1#com.sap.engine.services.ejb.exceptions.BaseTransactionRolledbackLocalException: Exception thrown in method onMessage. The transaction is marked for rollback.
     at com.sap.aii.proxy.xiruntime.sbeans.JPRLocalLocalObjectImpl0.onMessage(JPRLocalLocalObjectImpl0.java:196)
     at com.sap.aii.af.ra.ms.impl.ServicesImpl.deliver(ServicesImpl.java:253)
     at com.sap.aii.adapter.xi.ms.XIEventHandler.onDeliver(XIEventHandler.java:1041)
     at com.sap.aii.af.ra.ms.impl.core.queue.ReceiveConsumer.invokeHandler(ReceiveConsumer.java:383)
     at com.sap.aii.af.ra.ms.impl.core.queue.ReceiveConsumer.onMessage(ReceiveConsumer.java:100)
     at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:795)
     at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
     at java.security.AccessController.doPrivileged(Native Method)
     at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)
     at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:160)
Caused by: java.lang.NoClassDefFoundError: Lcom/sap/aii/af/service/trace/Trace;
     at java.lang.Class.getDeclaredFields0(Native Method)
     at java.lang.Class.privateGetDeclaredFields(Class.java:1522)
     at java.lang.Class.getDeclaredField(Class.java:1214)
     at java.io.ObjectStreamClass.getDeclaredSUID(ObjectStreamClass.java:1474)
     at java.io.ObjectStreamClass.access$400(ObjectStreamClass.java:47)
     at java.io.ObjectStreamClass$3.run(ObjectStreamClass.java:335)
     at java.security.AccessController.doPrivileged(Native Method)
     at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:333)
     at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:253)
     at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:453)
     at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1521)
     at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435)
     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1626)
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
     at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
     at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1603)
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1271)
     at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
     at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
     at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1845)
     at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769)
     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
     at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1603)
     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1271)
     at java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
     at com.sap.engine.services.rmi_p4.reflect.LocalInvocationHandler.replicateParameters(LocalInvocationHandler.java:96)
     at com.sap.engine.services.rmi_p4.reflect.LocalInvocationHandler.invokeInternal(LocalInvocationHandler.java:70)
     at com.sap.engine.services.rmi_p4.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:53)
     at $Proxy209.invokeMethod(Unknown Source)
     at sun.reflect.GeneratedMethodAccessor420.invoke(Unknown Source)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     at java.lang.reflect.Method.invoke(Method.java:324)
     at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187)
     at $Proxy210.invokeMethod(Unknown Source)
     at com.sap.aii.proxy.xiruntime.core.XmlProxyJ2EE.call(XmlProxyJ2EE.java:169)
     at com.sap.aii.proxy.xiruntime.core.XmlProxy$ProxyBeanCaller.call(XmlProxy.java:225)
     at com.sap.aii.proxy.xiruntime.core.XmlProxy.processRequest(XmlProxy.java:194)
     at com.sap.aii.proxy.xiruntime.core.XmlInbound.processRequestMessage(XmlInbound.java:126)
     at com.sap.aii.proxy.xiruntime.core.XmlInbound.processMessage(XmlInbound.java:83)
     at com.sap.aii.proxy.xiruntime.sbeans.JPRBean.onMessage(JPRBean.java:158)
     at com.sap.aii.proxy.xiruntime.sbeans.JPRLocalLocalObjectImpl0.onMessage(JPRLocalLocalObjectImpl0.java:179)
     ... 9 more
#1.5#0016350B5872005C000003A600000F7000043D52C5C56E9D#1193325621546#com.sap.aii.af.ra.ms.impl.core.queue.ReceiveConsumer#sap.com/com.sap.aii.af.ms.app#com.sap.aii.af.ra.ms.impl.core.queue.ReceiveConsumer.invokeHandler(QueueMessage, MessageController, Services)#J2EE_GUEST#0#SAP J2EE Engine JTA Transaction : [0ffffff81ffffffebffffff9200bffffffb4]#simonxid_SXD_8514450#XIAPPLUSER#cd25eae0830d11dc89690016350b5872#SAPEngine_Application_Thread[impl:3]_21##0#0#Error##Java###Rolling back transaction for message due to: #2#ccac4e10-830d-11dc-825f-0016350b5872(INBOUND)#<null>#
#1.5#0016350B5872005C000003A700000F7000043D52C5C56F5C#1193325621546#com.sap.aii.af.ra.ms.impl.core.queue.ReceiveConsumer#sap.com/com.sap.aii.af.ms.app#com.sap.aii.af.ra.ms.impl.core.queue.ReceiveConsumer.invokeHandler(QueueMessage, MessageController, Services)#J2EE_GUEST#0##simonxid_SXD_8514450#XIAPPLUSER#cd25eae0830d11dc89690016350b5872#SAPEngine_Application_Thread[impl:3]_21##0#0#Error##Java###Transaction rolled back for meesage due to: #2#ccac4e10-830d-11dc-825f-0016350b5872(INBOUND)#<null>#
The system 6.40 SP14
Thanks
T.Guzman

Hi,
Outbound binding problem is because of Reciever Determination/Agreement is not activated or refreshed correctly.
Try to recreate or refresh and activate it. Then check it.
also do the cache refresh in SXI_CACHE.
Also in go to Integration Builder(XI home page)->Administration->Cache Overview and do all the cache refresh.
Hope this helps
Regards,
Moorthy

Similar Messages

  • Problem with Java Proxy and Socket Connection

    Hi Gurus!!
    I have developed a Java Proxy that connects via socket with a Server Socket application. This Server Socket application accepts more than one connection at the same time.
    When I connect the first time from my Java Proxy, the connection is correctly established. When the first connection opened, if a try a second connection, this is not established.
    I use "new Socket(SocketServer,SocketPort);" to open the connection.
    I think that all time the Java Proxy is trying to open the same connection, and this is a problem.
    Is there a way to indicate to the server that is a new connection and that the existing connections remain?
    Anybody could help me, please?
    Thanks and regards,
    Manuel Míguez.

    Sorry!!!!i must give you more information.
    The error which i have when i push the submit button is
    HTTP Status 404 -
    type Status report
    message
    descriptionThe requested resource () is not available.
    GlassFish Server Open Source Edition 3.0.1
    My thought is that the error is in this line
    String connectionURL = "jdbc:mysql://localhost/mybooking";in mysql when i write this code then the table opens with no problems:
    mysql>show databases;
    mysql>usebooking;
    mysql>showtables;
    mysql>describe booking;Furthermore i have added in my web application the library mysql JDBC driver my-sql-connector-java-5.1.6.bin.jar
    Edited by: 813355 on Nov 22, 2010 1:50 AM
    Edited by: 813355 on Nov 22, 2010 2:00 AM

  • Problem in JAVA proxy scenario: cannot locate QSI root directory

    Hi Frnds,
    i am using RFC to JavaProxy, actually through java proxy we are connecting to the bank for payment.
    And the bank has provided one payment client application which needs to be installed on the server for interacting with the bank,
    and we had installed the payment client on to the server. But we are getting following type of error in the response,
    SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: Error invoking method egateJavaMsgIntInOutJava of proxy bean $Proxy258: cannot locate QSI root directory: com.sap.aii.proxy.xiruntime.core.XmlInboundException: Error invoking method egateJavaMsgIntInOutJava of proxy bean $Proxy258: cannot locate QSI root directory</SAP:AdditionalText>
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack />
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    What could be the possible solution in order to solve this error.
    Thanks,
    Raj
    Edited by: RajSrivastava on Jul 8, 2009 11:03 AM

    Hi Madhav,
                    Please check the following links regarding to u rproblem.
    Java Proxy Server: cannot locate proxy bean...
    Cannot locate proxy bean IN RWB
    https://forums.sdn.sap.com/click.jspa?searchID=11113489&messageID=3039952
    warm regards
    mahesh.

  • Problem in JAVA PROXY

    hi all,
    i am working on java proxy, after writing the code in the NWDS,
    iam getting below error
    Error  :The project was not built since its classpath is incomplete. Cannot find the class file for com.sap.aii.utilxi.misc.api.BaseException. Fix the classpath then try rebuilding this project.  
    can any one tell me the solution
    thanks & regards,
    Madhav

    Classpath Configuration
    Configure your CLASSPATH for the SDK by adding the SDK's libraries. These are located in the /lib/ folder in the folder in which you have unpackaged the SDK. This folder contains all the libraries required by the SDK for development.
    Note: If you are using NetWeaver Developer Studio, this step occurs automatically when you create a project. See below for details.
    Eclipse / NetWeaver Developer Studio Configuration
    To create a project with the SDK in Eclipse or SAP NetWeaver Developer Studio:
    In Eclipse or NetWeaver Developer Studio, select File --> New --> Project.
    In the New Project Wizard, select Java, and click Next.
    In the Project name field, enter a name for your project.
    In the Project contents section, deselect the Use default checkbox.
    Click Browse and navigate to the folder in which you unzipped the BI Java SDK. Select it, and click OK.
    Click Finish at the bottom of the Wizard dialog box.
    http://help.sap.com/javadocs/NW04S/current/bi/installation.html
    Ps: If helful please reward points

  • EJB Module creation in case of Java proxy

    Hello
    This question might look irrelevant in this forum but its required when we are dealing with Java proxy. I generated Java proxies of my interface which creates around 8 java classes and which supports EJB 2.0 specifications.
    In Netweaver Developer Studio (NWDS) I tried to create a EJB Module project and imported these classes into that.Also I manually modified ejb-jar.xml to include the references of Home and Remote Interfaces and bean class.The problem is its not allowing me to create ejb jar of it (the option Built EJB Archive is disabled when right clicked on EJB Module Project).
    Waiting for your reply.
    Regards
    Rajeev

    Same thing I solved by closing NWDS, restarting cluster, open NWDS.
    You assigned your bean to ejb-jar.xml?
    If you have any errors in task list then the option is also disabled.
    Dominik

  • Facing Problem in Deploying EAR for Client Java Proxy.

    Hi All,
                I am facing problems in deploying EAR in PI/XI server.
    The scenario is Client Java Proxy to SAP
    . I have followed the the pdf-how to create java proxies in 3.0. Using that I have created the EJB module and it archive.
    Finally created the EAR without errors. But while deploying the same in PI server, it throws the following error. Please do help me out in providing any inputs on the same.
    Deploy trace is seen below:-
    Deploy of the ear has errors :
    java.rmi.RemoteException: Cannot deploy application sap.com/BusPartnerEAR..
    Reason: Errors while compiling:
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemoteObjectImpl0_0_Tie.java:91: illegal escape character
          if (method.equals("U0024descriptor")) {
                              ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemoteObjectImpl0_0_Tie.java:98: illegal escape character
          if (method.equals("U0024jcoRuntimeMetaData")) {
                              ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemoteObjectImpl0_0_Tie.java:112: illegal escape character
          if (method.equals("U0024generationInfo")) {
                              ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemoteObjectImpl0_0_Tie.java:119: illegal escape character
          if (method.equals("U0024messageSpecifier")) {
                              ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemoteObjectImpl0_0_Tie.java:152: illegal escape character
          if (method.equals("U0024runtime")) {
                              ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemoteObjectImpl0_0_Tie.java:195: illegal escape character
          if (method.equals("U0024messageSpecifierRead")) {
                              ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemoteObjectImpl0_0_Tie.java:202: illegal escape character
          if (method.equals("U0024messageSpecifier__")) {
                              ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemote_Stub.java:93: illegal escape character
              org.omg.CORBA_2_3.portable.OutputStream out = (org.omg.CORBA_2_3.portable.OutputStream)_request("U0024descriptor", true);
                                                                                    ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemote_Stub.java:112: illegal escape character
          ServantObject so = servantpreinvoke("U0024descriptor", MIOSBusinessPartner_PortTypeRemote.class);
                                                  ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemote_Stub.java:134: illegal escape character
              org.omg.CORBA_2_3.portable.OutputStream out = (org.omg.CORBA_2_3.portable.OutputStream)_request("U0024jcoRuntimeMetaData", true);
                                                                                    ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemote_Stub.java:153: illegal escape character
          ServantObject so = servantpreinvoke("U0024jcoRuntimeMetaData", MIOSBusinessPartner_PortTypeRemote.class);
                                                  ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemote_Stub.java:216: illegal escape character
              org.omg.CORBA_2_3.portable.OutputStream out = (org.omg.CORBA_2_3.portable.OutputStream)_request("U0024generationInfo", true);
                                                                                    ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemote_Stub.java:235: illegal escape character
          ServantObject so = servantpreinvoke("U0024generationInfo", MIOSBusinessPartner_PortTypeRemote.class);
                                                  ^
    D:/usr/sap/ECD/DVEBMGS03/j2ee/cluster/server0/apps/sap.com/BusPartnerEAR/EJBContainer/temp/temp1175887267437/com/mud/sAPFICA/businessPartner/_MIOSBusinessPartner_PortTypeRemote_Stub.java:257: illegal escape character
              org.omg.CORBA_2_3.portable.OutputStream out = (org.omg.CORBA_2_3.portable.OutputStream)_request("U0024messageSpecifier", true);
    21 errors
    Awaiting for your replies...
    Regards,
    Dhana

    Hi,
         Thanks for your input..
       I have also opend the EAR as ZIP file and deleted the existing listing libaries
    apart from the actual implementing Jar and META-INF folder.
    I have tried deploying the Jar for the second time, it is throwing the same error.
    What I did is...Once the EAR is created, I went to Resource perspective in NWDS and copied the EAR from the EAR project and used the same for deployment.
    Is there is anything else to be modified or deleted before deployement?
    Regards,
    Dhana

  • Porblem with Java Proxy EJB deploy to XI through NWDI

    Situation - I have a web app in Server A (WAS7), it needs to call a java proxy in Server B (XI WAS7). I want to deploy the Java Proxy EJB into the landscape using NWDI. To do this I created an external library with public parts that contains the required jars to build the java proxies. These are aii_msg_runtime.jar, aii_proxy_xirt.jar, and aii_utilxi_misc.jar. The EJB module used part is mapped to the library's public parts. Everything builds fine and the deployment was successful into XI.
    Problem - When my web application makes a remote call to the java proxy in XI, NoClassDefFoundError occurs. The first jar that it complain about was aii_util_cimaccess.jar. I included this jar into the library and redeployed. Called the java proxy again, and got another NoClassDefFoundError exception. Now it wanted the lrcclient.jar. I included that into the library and redeployed. Now it wanted another jar. The issue is that all these jars are in the XI server and I shouldn't have to add them as part of the library. Is there a SCA out there that contains these jars, or did I just forget to mark a checkbox somewhere when creating the EJB so that it would reference the XI jars without me adding them to the library?
    Note - This architecture works fine without having to add the jars above, if I deploy the Java Proxy EJB from my workspace to XI through the SDM process available through NWDS. This only breaks when I deploy through NWDI.
    Thank you in advance.

    HI,
    please see the below link
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/bc7f08e1-0901-0010-b1bd-80966009d8f0
    http://help.sap.com/saphelp_nw2004s/helpdata/en/40/00be09879f114aa1ec46c2afa4445b/frameset.htm
    To add On-
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9221b490-0201-0010-0e90-8cc75cde876c
    http://help.sap.com/saphelp_webas630/helpdata/en/cb/f4bc3d42f46c33e10000000a11405a/content.htm
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/eaeb475d-0c01-0010-f5a4-d7a8eb185793
    Regards
    Chilla

  • Problem with Asyncronous Java Proxy

    Hi Friends,
    My scenario is JAVA>XI>JDBC (Asyncronous Message).
    I have imported the generated jar file and Created new Java Class (Invoke Proxy) in same project.Iam getting an error when I call this class from JSP .
    When I use :
         Object ref = ctx.lookup("java:comp/env/ejb/VendorOut_PortTypeBean");
         queryOutHome = (VendorOut_PortTypeHome) PortableRemoteObject.narrow(ref, VendorOut_PortTypeHome.class);
         queryOutRemote = queryOutHome.create();
    I am getting an error: NULL
    (After Lookup  In Catch :null)
    <u>InvokeProxy.java file:</u>
    public class InvokeProxy {
         public String SendVendor(String VendorNumber, String LastName,String SearchTerm,String Currency,String Street,String City,String Zip,String Country )
              String Message = "";
              VendorOut_PortTypeLocalHome queryOutLocalHome = null;
              VendorOut_PortTypeLocal queryOutLocal = null;
              VendorOut_PortTypeHome queryOutHome = null;
              VendorOut_PortTypeRemote queryOutRemote = null;
              try {
                   Properties p = new Properties();
                   p.put(
                        Context.INITIAL_CONTEXT_FACTORY,
                        "com.sap.engine.services.jndi.InitialContextFactoryImpl ");
                   p.put(Context.PROVIDER_URL, "server:port");
                   p.put(Context.SECURITY_PRINCIPAL, "Administrator");
                   p.put(Context.SECURITY_CREDENTIALS, "password");
                   InitialContext ctx = new InitialContext();
                    Message = "before Lookup";
                   Object ref = ctx.lookup("java:comp/env/ejb/VendorOut_PortTypeBean");
                   Message = "After Lookup";
                   queryOutHome = (VendorOut_PortTypeHome) PortableRemoteObject.narrow(ref, VendorOut_PortTypeHome.class);
                   Message = Message + "After Lookup";
                   queryOutRemote = queryOutHome.create();
                   Message = Message + "After Lookup create";
                   MessageSpecifier msg = queryOutRemote.$messageSpecifier();
                   msg.setSenderService("TBIT_PROXY_BS");
                   queryOutRemote.$messageSpecifier(msg);
                   VendorDT_Type reqtype = new VendorDT_Type();
                   AddressDT_Type reqtype1 =  new AddressDT_Type();
                   reqtype1.setStreet(Street);
                   reqtype1.setCity(City);
                   reqtype1.setCountry(Country);
                   reqtype1.setZip(Zip);
                   reqtype.setVendorNumber(VendorNumber);
                   reqtype.setLastName(LastName);
                   reqtype.setSearchTerm(SearchTerm);
                   reqtype.setCurrency(Currency);
                   reqtype.setAddress(reqtype1);
                   queryOutLocal.vendorOut(reqtype);                                        
                   Message = Message + "Message Send ";
              } catch (Exception ex) {
                   Message = Message + "In Catch"+ ex.getMessage();
         return Message ;
    }       //end of class

    Hi Friends,
    My scenario is JAVA>XI>JDBC (Asyncronous Message).
    I have imported the generated jar file and Created new Java Class (Invoke Proxy) in same project.Iam getting an error when I call this class from JSP .
    ( I have tried out same as given SDN forums-Java Proxy Problem )
    When I use :
    Object ref = ctx.lookup("java:comp/env/ejb/VendorOut_PortTypeBean");
    queryOutHome = (VendorOut_PortTypeHome) PortableRemoteObject.narrow(ref, VendorOut_PortTypeHome.class);
    queryOutRemote = queryOutHome.create();
    I am getting an error: NULL
    (After Lookup In Catch :null)
    InvokeProxy.java file:
    public class InvokeProxy {
    public String SendVendor(String VendorNumber, String LastName,String SearchTerm,String Currency,String Street,String City,String Zip,String Country )
    String Message = "";
    VendorOut_PortTypeLocalHome queryOutLocalHome = null;
    VendorOut_PortTypeLocal queryOutLocal = null;
    VendorOut_PortTypeHome queryOutHome = null;
    VendorOut_PortTypeRemote queryOutRemote = null;
    try {
    Properties p = new Properties();
    p.put(
    Context.INITIAL_CONTEXT_FACTORY,
    "com.sap.engine.services.jndi.InitialContextFactoryImpl ");
    p.put(Context.PROVIDER_URL, "server:port");
    p.put(Context.SECURITY_PRINCIPAL, "Administrator");
    p.put(Context.SECURITY_CREDENTIALS, "password");
    InitialContext ctx = new InitialContext();
    Message = "before Lookup";
    Object ref = ctx.lookup("java:comp/env/ejb/VendorOut_PortTypeBean");
    Message = "After Lookup";
    queryOutHome = (VendorOut_PortTypeHome) PortableRemoteObject.narrow(ref, VendorOut_PortTypeHome.class);
    Message = Message + "After Lookup";
    queryOutRemote = queryOutHome.create();
    Message = Message + "After Lookup create";
    MessageSpecifier msg = queryOutRemote.$messageSpecifier();
    msg.setSenderService("TBIT_PROXY_BS");
    queryOutRemote.$messageSpecifier(msg);
    VendorDT_Type reqtype = new VendorDT_Type();
    AddressDT_Type reqtype1 = new AddressDT_Type();
    reqtype1.setStreet(Street);
    reqtype1.setCity(City);
    reqtype1.setCountry(Country);
    reqtype1.setZip(Zip);
    reqtype.setVendorNumber(VendorNumber);
    reqtype.setLastName(LastName);
    reqtype.setSearchTerm(SearchTerm);
    reqtype.setCurrency(Currency);
    reqtype.setAddress(reqtype1);
    queryOutRemote.vendorOut(reqtype);
    Message = Message + "Message Send ";
    } catch (Exception ex) {
    Message = Message + "In Catch"+ ex.getMessage();
    return Message ;
    } //end of class

  • Problem in creating a java proxy for PHP web service

    This is a problem in generating a java proxy for a PHP webservice.
    I have a PHP service running on Wamp Server and also a PHP client which is able to call the service.
    The WSDL for the PHP web service is also generated .
    I am trying to create a java proxy using the jdev (10.1.3.0.3) from the wsdl file.
    The wsdl generated by the php program is
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <definitions xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:si="http://soapinterop.org/xsd" xmlns:tns="urn:hellowsdl" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="urn:hellowsdl">
    <types>
    <xsd:schema targetNamespace="urn:hellowsdl">
      <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
      <xsd:import namespace="http://schemas.xmlsoap.org/wsdl/" />
      </xsd:schema>
      </types>
    <message name="helloRequest">
      <part name="name" type="xsd:string" />
      </message>
    <message name="helloResponse">
      <part name="return" type="xsd:string" />
      </message>
    <portType name="hellowsdlPortType">
    <operation name="hello">
      <documentation>Says hello to the caller</documentation>
      <input message="tns:helloRequest" />
      <output message="tns:helloResponse" />
      </operation>
      </portType>
    <binding name="hellowsdlBinding" type="tns:hellowsdlPortType">
      <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="hello">
      <soap:operation soapAction="urn:hellowsdl#hello" style="rpc" />
    <input>
      <soap:body use="encoded" namespace="urn:hellowsdl" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
    <output>
      <soap:body use="encoded" namespace="urn:hellowsdl" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
      </operation>
      </binding>
    <service name="hellowsdl">
    <port name="hellowsdlPort" binding="tns:hellowsdlBinding">
      <soap:address location="http://localhost/mywork/myphp.php" />
      </port>
      </service>
      </definitions>After making following changes to the wsdl program, I tried to generate java proxy.
    <definitions name="hellowsdl"
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:si="http://soapinterop.org/xsd" xmlns:tns="http://localhost/mywork/hellowsdl.wsdl" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://localhost/mywork/myphpwsdl.wsdll">
    <types>
    <xsd:schema targetNamespace="http://localhost/mywork/hellowsdl.wsdl">
      <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
      <xsd:import namespace="http://schemas.xmlsoap.org/wsdl/" />
      </xsd:schema>
      </types>
    <message name="helloRequest">
      <part name="name" type="xsd:string" />
      </message>
    <message name="helloResponse">
      <part name="return" type="xsd:string" />
      </message>
    <portType name="hellowsdlPortType">
    <operation name="hello">
      <documentation>Says hello to the caller</documentation>
      <input message="tns:helloRequest" />
      <output message="tns:helloResponse" />
      </operation>
      </portType>
    <binding name="hellowsdlBinding" type="tns:hellowsdlPortType">
      <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="hello">
      <soap:operation soapAction="" style="rpc" />
    <input>
      <soap:body use="encoded" namespace="http://localhost/mywork/hellowsdl" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
    <output>
      <soap:body use="encoded" namespace="http://localhost/mywork/hellowsdl" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
      </operation>
      </binding>
    <service name="hellowsdl">
    <port name="hellowsdlPort" binding="tns:hellowsdlBinding">
      <soap:address location="http://localhost/mywork/myphp.php" />
      </port>
      </service>
      </definitions>This is how the java stub file looks like:
    public class HellowsdlBinding_Stub
        extends oracle.j2ee.ws.client.StubBase
        implements demo.mypackage.HellowsdlPortType {
         *  public constructor
        public HellowsdlBinding_Stub(HandlerChain handlerChain) {
            super(handlerChain);
            _setProperty(ENDPOINT_ADDRESS_PROPERTY, "http://localhost/mywork/hellowsdl.php");
            setSoapVersion(SOAPVersion.SOAP_11);
            setServiceName( new QName("http://localhost/mywork/hellowsdl","hellowsdl"));
            setPortName( new QName("http://localhost/mywork/hellowsdl","hellowsdlPort"));
         *  implementation of hello
        public java.lang.String hello(java.lang.String name)
            throws java.rmi.RemoteException {
            StreamingSenderState _state = null;
            try {
                _state = _start(_handlerChain);
                if (_getProperty(ClientConstants.DIME_ENCODE_MESSAGES_WITH_ATTACHMENTS) != null) {
                    _state.getMessageContext().getMessage().setProperty("DimeEncode",_getProperty(ClientConstants.DIME_ENCODE_MESSAGES_WITH_ATTACHMENTS));
                InternalSOAPMessage _request = _state.getRequest();
                _request.setOperationCode(hello_OPCODE);
                _state.getMessageContext().setProperty("oracle.j2ee.ws.mgmt.interceptor.operation-qname",new QName("","hello"));
                demo.mypackage.runtime.HellowsdlBinding_hello_ReqS _myHellowsdlBinding_hello_ReqS = new demo.mypackage.runtime.HellowsdlBinding_hello_ReqS();
            _myHellowsdlBinding_hello_ReqS.setName(name);
            SOAPBlockInfo _bodyBlock = new SOAPBlockInfo(ns1_hello_hello_QNAME);
            _bodyBlock.setValue(_myHellowsdlBinding_hello_ReqS);
            _bodyBlock.setSerializer(myns1_hello__HellowsdlBinding_hello_ReqS_SOAPSerializer);
            _request.setBody(_bodyBlock);
            _state.getMessageContext().setProperty("http.soap.action", "http://localhost/mywork/hellowsdl");
            _send((String) _getProperty(ENDPOINT_ADDRESS_PROPERTY), _state);
            demo.mypackage.runtime.HellowsdlBinding_hello_RespS _myHellowsdlBinding_hello_RespS = null;
            Object _responseObj = _state.getResponse().getBody().getValue();
            if (_responseObj instanceof SOAPDeserializationState) {
                _myHellowsdlBinding_hello_RespS =
                    (demo.mypackage.runtime.HellowsdlBinding_hello_RespS)((SOAPDeserializationState)_responseObj).getInstance();
            } else {
                _myHellowsdlBinding_hello_RespS =
                    (demo.mypackage.runtime.HellowsdlBinding_hello_RespS)_responseObj;
            return _myHellowsdlBinding_hello_RespS.get_return();
        } catch (RemoteException e) {
            // let this one through unchanged
            throw e;
        } catch (JAXRPCException e) {
            throw new RemoteException(e.getMessage(), e);
        } catch (Exception e) {
            if (e instanceof RuntimeException) {
                throw (RuntimeException)e;
            } else {
                throw new RemoteException(e.getMessage(), e);
    *  this method deserializes the request/response structure in the body
    protected void _readFirstBodyElement(XMLReader bodyReader, SOAPDeserializationContext deserializationContext, StreamingSenderState  state) throws Exception {
        int opcode = state.getRequest().getOperationCode();
        switch (opcode) {
            case hello_OPCODE:
                _deserialize_hello(bodyReader, deserializationContext, state);
                break;
            default:
                throw new SenderException("sender.response.unrecognizedOperation", Integer.toString(opcode));
    * This method deserializes the body of the hello operation.
    private void _deserialize_hello(XMLReader bodyReader, SOAPDeserializationContext deserializationContext, StreamingSenderState state) throws Exception {
        try {
            Object myHellowsdlBinding_hello_RespSObj =
                myns1_helloResponse__HellowsdlBinding_hello_RespS_SOAPSerializer.deserialize(ns1_hello_helloResponse_QNAME,
                    bodyReader, deserializationContext);
            SOAPBlockInfo bodyBlock = new SOAPBlockInfo(ns1_hello_helloResponse_QNAME);
            bodyBlock.setValue(myHellowsdlBinding_hello_RespSObj);
            state.getResponse().setBody(bodyBlock);
        } catch (DeserializationException e) {
            if (e.getSoapFaultSubCodeType() == JAXRPCExceptionBase.FAULT_CODE_NONE && e.getSoapFaultCodeType() != JAXRPCExceptionBase.FAULT_CODE_DATA_ENCODING_UNKNOWN) {
                e.setSoapFaultSubCodeType(JAXRPCExceptionBase.FAULT_CODE_BAD_ARGUMENTS);
            throw e;
    public String _getEncodingStyle() {
        return SOAPEncodingConstants.getSOAPEncodingConstants(soapVersion).getURIEncoding();
    public void _setEncodingStyle(String encodingStyle) {
        throw new UnsupportedOperationException("cannot set encoding style");
    public ClientTransport getClientTransport() {
        return super._getTransport();
    * This method returns an array containing (prefix, nsURI) pairs.
    protected String[] _getNamespaceDeclarations() {
        return myNamespace_declarations;
    * This method returns an array containing the names of the headers we understand.
    public QName[] _getUnderstoodHeaders() {
        return understoodHeaderNames;
    * This method handles the case of an empty SOAP body.
    protected void _handleEmptyBody(XMLReader reader, SOAPDeserializationContext deserializationContext, StreamingSenderState state) throws Exception {
    public void _initialize(InternalTypeMappingRegistry registry) throws Exception {
        super._initialize(registry);
        myns1_hello__HellowsdlBinding_hello_ReqS_SOAPSerializer = (CombinedSerializer)registry.getSerializer(SOAPEncodingConstants.getSOAPEncodingConstants(soapVersion).getURIEncoding(), demo.mypackage.runtime.HellowsdlBinding_hello_ReqS.class, ns1_hello_TYPE_QNAME);
        myns1_helloResponse__HellowsdlBinding_hello_RespS_SOAPSerializer = (CombinedSerializer)registry.getSerializer(SOAPEncodingConstants.getSOAPEncodingConstants(soapVersion).getURIEncoding(), demo.mypackage.runtime.HellowsdlBinding_hello_RespS.class, ns1_helloResponse_TYPE_QNAME);
    private static final QName _portName = new QName("http://localhost/mywork/hellowsdl", "hellowsdlPort");
    private static final int hello_OPCODE = 0;
    private static final QName ns1_hello_hello_QNAME = new QName("http://localhost/mywork/hellowsdl", "hello");
    private static final QName ns1_hello_TYPE_QNAME = new QName("http://localhost/mywork/hellowsdl", "hello");
    private CombinedSerializer myns1_hello__HellowsdlBinding_hello_ReqS_SOAPSerializer;
    private static final QName ns1_hello_helloResponse_QNAME = new QName("http://localhost/mywork/hellowsdl", "helloResponse");
    private static final QName ns1_helloResponse_TYPE_QNAME = new QName("http://localhost/mywork/hellowsdl", "helloResponse");
    private CombinedSerializer myns1_helloResponse__HellowsdlBinding_hello_RespS_SOAPSerializer;
    private static final String[] myNamespace_declarations =
                                        new String[] {
                                            "ns0", "http://localhost/mywork/hellowsdl"
    private static final QName[] understoodHeaderNames = new QName[] {  };
    }The errors that are produced are-
    java.rmi.RemoteException: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Bad response: 404 Not Found; nested exception is:
         HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Bad response: 404 Not Found
    Kindly help to resolve this.
    Thanks.

    This is a problem in generating a java proxy for a PHP webservice.
    I have a PHP service running on Wamp Server and also a PHP client which is able to call the service.
    The WSDL for the PHP web service is also generated .
    I am trying to create a java proxy using the jdev (10.1.3.0.3) from the wsdl file.
    The wsdl generated by the php program is
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <definitions xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:si="http://soapinterop.org/xsd" xmlns:tns="urn:hellowsdl" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="urn:hellowsdl">
    <types>
    <xsd:schema targetNamespace="urn:hellowsdl">
      <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
      <xsd:import namespace="http://schemas.xmlsoap.org/wsdl/" />
      </xsd:schema>
      </types>
    <message name="helloRequest">
      <part name="name" type="xsd:string" />
      </message>
    <message name="helloResponse">
      <part name="return" type="xsd:string" />
      </message>
    <portType name="hellowsdlPortType">
    <operation name="hello">
      <documentation>Says hello to the caller</documentation>
      <input message="tns:helloRequest" />
      <output message="tns:helloResponse" />
      </operation>
      </portType>
    <binding name="hellowsdlBinding" type="tns:hellowsdlPortType">
      <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="hello">
      <soap:operation soapAction="urn:hellowsdl#hello" style="rpc" />
    <input>
      <soap:body use="encoded" namespace="urn:hellowsdl" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
    <output>
      <soap:body use="encoded" namespace="urn:hellowsdl" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
      </operation>
      </binding>
    <service name="hellowsdl">
    <port name="hellowsdlPort" binding="tns:hellowsdlBinding">
      <soap:address location="http://localhost/mywork/myphp.php" />
      </port>
      </service>
      </definitions>After making following changes to the wsdl program, I tried to generate java proxy.
    <definitions name="hellowsdl"
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:si="http://soapinterop.org/xsd" xmlns:tns="http://localhost/mywork/hellowsdl.wsdl" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://localhost/mywork/myphpwsdl.wsdll">
    <types>
    <xsd:schema targetNamespace="http://localhost/mywork/hellowsdl.wsdl">
      <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
      <xsd:import namespace="http://schemas.xmlsoap.org/wsdl/" />
      </xsd:schema>
      </types>
    <message name="helloRequest">
      <part name="name" type="xsd:string" />
      </message>
    <message name="helloResponse">
      <part name="return" type="xsd:string" />
      </message>
    <portType name="hellowsdlPortType">
    <operation name="hello">
      <documentation>Says hello to the caller</documentation>
      <input message="tns:helloRequest" />
      <output message="tns:helloResponse" />
      </operation>
      </portType>
    <binding name="hellowsdlBinding" type="tns:hellowsdlPortType">
      <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="hello">
      <soap:operation soapAction="" style="rpc" />
    <input>
      <soap:body use="encoded" namespace="http://localhost/mywork/hellowsdl" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
    <output>
      <soap:body use="encoded" namespace="http://localhost/mywork/hellowsdl" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
      </operation>
      </binding>
    <service name="hellowsdl">
    <port name="hellowsdlPort" binding="tns:hellowsdlBinding">
      <soap:address location="http://localhost/mywork/myphp.php" />
      </port>
      </service>
      </definitions>This is how the java stub file looks like:
    public class HellowsdlBinding_Stub
        extends oracle.j2ee.ws.client.StubBase
        implements demo.mypackage.HellowsdlPortType {
         *  public constructor
        public HellowsdlBinding_Stub(HandlerChain handlerChain) {
            super(handlerChain);
            _setProperty(ENDPOINT_ADDRESS_PROPERTY, "http://localhost/mywork/hellowsdl.php");
            setSoapVersion(SOAPVersion.SOAP_11);
            setServiceName( new QName("http://localhost/mywork/hellowsdl","hellowsdl"));
            setPortName( new QName("http://localhost/mywork/hellowsdl","hellowsdlPort"));
         *  implementation of hello
        public java.lang.String hello(java.lang.String name)
            throws java.rmi.RemoteException {
            StreamingSenderState _state = null;
            try {
                _state = _start(_handlerChain);
                if (_getProperty(ClientConstants.DIME_ENCODE_MESSAGES_WITH_ATTACHMENTS) != null) {
                    _state.getMessageContext().getMessage().setProperty("DimeEncode",_getProperty(ClientConstants.DIME_ENCODE_MESSAGES_WITH_ATTACHMENTS));
                InternalSOAPMessage _request = _state.getRequest();
                _request.setOperationCode(hello_OPCODE);
                _state.getMessageContext().setProperty("oracle.j2ee.ws.mgmt.interceptor.operation-qname",new QName("","hello"));
                demo.mypackage.runtime.HellowsdlBinding_hello_ReqS _myHellowsdlBinding_hello_ReqS = new demo.mypackage.runtime.HellowsdlBinding_hello_ReqS();
            _myHellowsdlBinding_hello_ReqS.setName(name);
            SOAPBlockInfo _bodyBlock = new SOAPBlockInfo(ns1_hello_hello_QNAME);
            _bodyBlock.setValue(_myHellowsdlBinding_hello_ReqS);
            _bodyBlock.setSerializer(myns1_hello__HellowsdlBinding_hello_ReqS_SOAPSerializer);
            _request.setBody(_bodyBlock);
            _state.getMessageContext().setProperty("http.soap.action", "http://localhost/mywork/hellowsdl");
            _send((String) _getProperty(ENDPOINT_ADDRESS_PROPERTY), _state);
            demo.mypackage.runtime.HellowsdlBinding_hello_RespS _myHellowsdlBinding_hello_RespS = null;
            Object _responseObj = _state.getResponse().getBody().getValue();
            if (_responseObj instanceof SOAPDeserializationState) {
                _myHellowsdlBinding_hello_RespS =
                    (demo.mypackage.runtime.HellowsdlBinding_hello_RespS)((SOAPDeserializationState)_responseObj).getInstance();
            } else {
                _myHellowsdlBinding_hello_RespS =
                    (demo.mypackage.runtime.HellowsdlBinding_hello_RespS)_responseObj;
            return _myHellowsdlBinding_hello_RespS.get_return();
        } catch (RemoteException e) {
            // let this one through unchanged
            throw e;
        } catch (JAXRPCException e) {
            throw new RemoteException(e.getMessage(), e);
        } catch (Exception e) {
            if (e instanceof RuntimeException) {
                throw (RuntimeException)e;
            } else {
                throw new RemoteException(e.getMessage(), e);
    *  this method deserializes the request/response structure in the body
    protected void _readFirstBodyElement(XMLReader bodyReader, SOAPDeserializationContext deserializationContext, StreamingSenderState  state) throws Exception {
        int opcode = state.getRequest().getOperationCode();
        switch (opcode) {
            case hello_OPCODE:
                _deserialize_hello(bodyReader, deserializationContext, state);
                break;
            default:
                throw new SenderException("sender.response.unrecognizedOperation", Integer.toString(opcode));
    * This method deserializes the body of the hello operation.
    private void _deserialize_hello(XMLReader bodyReader, SOAPDeserializationContext deserializationContext, StreamingSenderState state) throws Exception {
        try {
            Object myHellowsdlBinding_hello_RespSObj =
                myns1_helloResponse__HellowsdlBinding_hello_RespS_SOAPSerializer.deserialize(ns1_hello_helloResponse_QNAME,
                    bodyReader, deserializationContext);
            SOAPBlockInfo bodyBlock = new SOAPBlockInfo(ns1_hello_helloResponse_QNAME);
            bodyBlock.setValue(myHellowsdlBinding_hello_RespSObj);
            state.getResponse().setBody(bodyBlock);
        } catch (DeserializationException e) {
            if (e.getSoapFaultSubCodeType() == JAXRPCExceptionBase.FAULT_CODE_NONE && e.getSoapFaultCodeType() != JAXRPCExceptionBase.FAULT_CODE_DATA_ENCODING_UNKNOWN) {
                e.setSoapFaultSubCodeType(JAXRPCExceptionBase.FAULT_CODE_BAD_ARGUMENTS);
            throw e;
    public String _getEncodingStyle() {
        return SOAPEncodingConstants.getSOAPEncodingConstants(soapVersion).getURIEncoding();
    public void _setEncodingStyle(String encodingStyle) {
        throw new UnsupportedOperationException("cannot set encoding style");
    public ClientTransport getClientTransport() {
        return super._getTransport();
    * This method returns an array containing (prefix, nsURI) pairs.
    protected String[] _getNamespaceDeclarations() {
        return myNamespace_declarations;
    * This method returns an array containing the names of the headers we understand.
    public QName[] _getUnderstoodHeaders() {
        return understoodHeaderNames;
    * This method handles the case of an empty SOAP body.
    protected void _handleEmptyBody(XMLReader reader, SOAPDeserializationContext deserializationContext, StreamingSenderState state) throws Exception {
    public void _initialize(InternalTypeMappingRegistry registry) throws Exception {
        super._initialize(registry);
        myns1_hello__HellowsdlBinding_hello_ReqS_SOAPSerializer = (CombinedSerializer)registry.getSerializer(SOAPEncodingConstants.getSOAPEncodingConstants(soapVersion).getURIEncoding(), demo.mypackage.runtime.HellowsdlBinding_hello_ReqS.class, ns1_hello_TYPE_QNAME);
        myns1_helloResponse__HellowsdlBinding_hello_RespS_SOAPSerializer = (CombinedSerializer)registry.getSerializer(SOAPEncodingConstants.getSOAPEncodingConstants(soapVersion).getURIEncoding(), demo.mypackage.runtime.HellowsdlBinding_hello_RespS.class, ns1_helloResponse_TYPE_QNAME);
    private static final QName _portName = new QName("http://localhost/mywork/hellowsdl", "hellowsdlPort");
    private static final int hello_OPCODE = 0;
    private static final QName ns1_hello_hello_QNAME = new QName("http://localhost/mywork/hellowsdl", "hello");
    private static final QName ns1_hello_TYPE_QNAME = new QName("http://localhost/mywork/hellowsdl", "hello");
    private CombinedSerializer myns1_hello__HellowsdlBinding_hello_ReqS_SOAPSerializer;
    private static final QName ns1_hello_helloResponse_QNAME = new QName("http://localhost/mywork/hellowsdl", "helloResponse");
    private static final QName ns1_helloResponse_TYPE_QNAME = new QName("http://localhost/mywork/hellowsdl", "helloResponse");
    private CombinedSerializer myns1_helloResponse__HellowsdlBinding_hello_RespS_SOAPSerializer;
    private static final String[] myNamespace_declarations =
                                        new String[] {
                                            "ns0", "http://localhost/mywork/hellowsdl"
    private static final QName[] understoodHeaderNames = new QName[] {  };
    }The errors that are produced are-
    java.rmi.RemoteException: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Bad response: 404 Not Found; nested exception is:
         HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Bad response: 404 Not Found
    Kindly help to resolve this.
    Thanks.

  • JAVA Proxy :: Exception in ejb-jar.xml in NWDS

    Hi All
    I am getting exception while Importing (Inbound) JAVA Proxy ZIP file in NWDS, ejb-jar.xml shows the red cross & when I double click on it got following error -->
    The content of element type "ejb-jar" is incomplete, it must match "(description?,display-name?,small-icon?,large-icon?,enterprise-beans,relationships?,assembly-descriptor?,ejb-client-jar?)".
    I already add the following JAR files in class-path -->
    aii_proxy_xirt.jar
    aii_msg_runtime.jar
    aii_utilxi_misc.jar
    guidgenerator.jar
    One different thing I also notice is that after adding these JAR files in classpath I am not getting my Inbound Interface BEAN under EJB candidates.
    Also nothing is visible under ejbModule usually it shows 4 JAVA files & one template file.
    As a solution I tried searching in google & forum for above exception, most threads suggest to add the Beans to xml files but I am not getting my interface Bean under EJB candidates.
    I also tried reloading all the external JAR files again from System but still same issue.
    Also within the same NWDS one another version of EJB is working fine but I worked on it 6months back, I tried copy its contents to ejb-jar.xml source code but then also nothing happens.
    I am using NWDS Version: 7.0.10
    Can you pls. suggest & let me know what further information I can provide from my side which can help you to investigate it.
    Regards
    Lalit

    hi,
    Your are using server java proxy.
    You can use some other jar files apart from what you are using,.
    ejb20.jar
    exception.jar
    sapj2eeclient.jar
    and after importing your zip file (create a ejb project first ,then add the zar files and then click on the ejbModule and then import your zip file ) close and open your project.
    Do not directly click on ejb-jar.xml.Click on ejbModule and import the .zip file.
    then save your .template file in ejbModule as a .java project.
    then there should not be any error.
    you can refer
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d06315a6-e66e-2910-039c-ba8bbbd23702
    regards,
    ujjwal kumar

  • Java proxy problem:com.sap.aii.proxy.xiruntime cannot be resolved to a type

    hi:
        i am new to Java proxy and new to SAP netweaver developer studio.
        thei PI version is 7.1
        I have generate a java proxy , then create a project in netweaver developer studio and import this java proxy according document "How Tou2026Work with XI 3.0 Java Proxies".
        but i can not find :aii_proxy_xirt.jar  aii_msg_runtime.jar on the PI server, only guidgenerator.jaraii_utilxi_misc.jar could be found. then i could not config the build path.
        in the  SAP netweaver developer studio, the error shows like :com.sap.aii.proxy.xiruntime cannot be resolved to a type
       then how to resolve this problem
       thank you very much

    Hi Cheng,
    I am trying to create a java proxy to send message from WebAS to PI using java proxy.
    I am using NWDS 7.1. Can you please help with step on how to create a java proxy in NWDS 7.1?
    Thanks and best regards,
    Arun prabhu S

  • Java Proxy - XI - RFC Synchronous Scenario OUTBINDING Problem.

    Java Proxy -> XI -> RFC Synchronous Scenario. Problem
    Hi,
         I'm doing a Java Proxy -> XI -> RFC Syncronous Scenario.
         A Java Server Socket is running as a Demon. When a client make a request to the Java Server Socket, this one call Java Proxy Client and set up the parameters.
         The first time that execute the scenario it works perfectly but no the next one and so on.
         The error when I check the monitor (TCODE: SXMB_MONI) is in PLSRV_OUTBOUND_BINDING.
    <Trace level="1" type="B" name="CL_XMS_PLSRV_OUTBINDING-ENTER_PLSRV">
      <Trace level="1" type="T">no outbound binding found.</Trace>
      <Trace level="1" type="T">No standard agreement found for , DES210_DEV, , JPX_DEV, urn:servipago:SERVIPAGO_SAP_02, mi_os_t1</Trace>
    </Trace>
    <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
    And it has sense, because my scenario doesn't begin with the execution of FM (RFC).
    A Hint, my services in the first try are:
         <b>Sender Service:</b>          JPX_DEV (Java Proxy Client)
         <b>Receiver Service:</b>     DES210_DEV (R/3 4.6C)
    But the second try and so on the services that I saw in the monitor are:
         <b>Sender Service:</b>          DES210_DEV (R/3 4.6C)
         <b>Receiver Service:</b>     JPX_DEV (Java Proxy Client)
    I can't understand why they swich each other.
    Any idea?

    Hi,
    Outbound binding problem is because of Reciever Determination/Agreement is not activated or refreshed correctly.
    Try to recreate or refresh and activate it. Then check it.
    also do the cache refresh in SXI_CACHE.
    Also in go to Integration Builder(XI home page)->Administration->Cache Overview and do all the cache refresh.
    Hope this helps
    Regards,
    Moorthy

  • Problem with client Java Proxy.

    Scenario : Java Proxy <> XI <> RFC.
    A web page which is a part of the Java Proxy Enterprise project gives a call to the servlet & in turn EJB code generated from the message interface. When I tried to test the scenario, nothing happens i.e. posting the data returns a blank page.
    No entries in SXMB_MONI. I have put some system.out statements in the servlet code which actually accesses the EJB code. Which log file would contain these statements redirected to standard output?
    Regards,
    Amol

    Hi,
    Instead of System.out.println, you can try writing into a file using FileOutputStream API.
    Or
    first to check whether your proxy is running fine, you can code a standalone java program instead of jsp.
    In your InvokeProxy class (which sends request message to XI), add a main method and call the InvokeProxy method within the main method.
    Example:
    public class InvokeProxy{
            public string getDetails(String ID){
             // bean lookup
             // send request message to XI
            public static void main(String [] args){
               string id = "123";
               InvokeProxy proxy = new InvokeProxy();
               proxy.getDetails(id);
    Hope this helps.
    Regards,
    Uma

  • Problem with Server Java Proxy

    I have got an error: Delivery of the message to the application using connection JPR failed, due to: RecoverableException.
    Could you help me what is wrong with JPR?
    RWB monitoring doesn't show errors
    defaultTrace.trc - no errors
    Messafing System monitor
    Error Category:  XI_J2EE_MESSAGING_SYSTEM 
    Error Code:  INBOUND_DELIVERY_ERROR 
    I have deployed Java proxy on the same server (as XI)

    Hi Sergey,
    These may help you..
    User exit  or Badi for VL31N (create inbound delivery)
    Idoc WHSORD for inbound delivery
    cheers,
    Prashanth

  • Java Proxy error: Exception in method methodExists

    Hello all!
    We are doing the following synchronous scenario:  CRM->XI->JavaProxy--->Third party....
    Here is the process we are following to deploy our Proxy:
    1.Created EJB Module Project in NWDS
    2.Import the files generated by XI into ejbModule folder from ZIP file.
    3.Renamed *PortTypeImpl.template to *PortTypeImpl.java
    4.Compiled all code (no errors)
    5.Added all the references to the SAP libraries required (taken from our XI server):
    com.sap.aii.proxy.xiruntime
    com.sap.xi.util.misc
    com.sap.aii.messaging.runtime
    com.sap.guid
    6.Codified Java Proxy – codified the method <interfacename> in the <intefacename>_PortTypeImpl class.
    7.Edited ejb_jar.xml to add EJBs.
    8.Provided a JNDI name in the file ejb-j2ee-engine.xml.
    9.Built EJB archive (no errors).
    10.Created a new Enterprise Application Project and pointed build path to our EJB Project.
    11.Added our EJB to the Enterprise Application project.
    12.Created the references to the SAP libraries in the Enterprise Application Project in the application-j2ee-engine.xml file:
    com.sap.aii.proxy.xiruntime
    com.sap.xi.util.misc
    com.sap.aii.messaging.runtime
    com.sap.guid
    13.Within the Enterprise Application Project we built an EAR file.
    14.We deployed our .ear file to the J2EE Engine via Visual Admin (no errors).
    15.We registered our Java Proxy  on the ProxyServer, using
    /register?ns=<interface_namespace>&interface=<XI_Interface_Name>&bean=<EJB_JNDI_name> &method=<name of the method implemented by you on the _PortTypeImpl>
    Actually, we did the following:
    url for registering the EJB:
    http://ithpsrq0:50200/ProxyServer/register?ns=http://banco.popular.com.pr/xi/crm&interface=mi_AccountInfo_is&bean=popularinc.com/MiAccountInfoIs_Default&method=miAccountInfoIs
    Message displayed when listing interfaces (http://ithpsrq0:50200/ProxyServer/listAll)
    http://banco.popular.com.pr/xi/crm#mi_AccountInfo_is = popularinc.com/MiAccountInfoIs_Default:miAccountInfoIs
    1 interfaces found
    When running the interface we get the following error:
    com.sap.aii.af.ra.ms.api.DeliveryException: Error checking method name miAccountInfoIs of remote inbound proxy bean $Proxy250: Exception in method methodExists.: com.sap.aii.proxy.xiruntime.core.XmlInboundException: Error checking method name miAccountInfoIs of remote inbound proxy bean $Proxy250: Exception in method methodExists.
    Does anyone have any suggestions?
    What causes a "methodExists" Exception?
    Please help us,
    Thanks a lot!!!

    Hi,
      Is this a runtime of "com.sap.aii.proxy.xiruntime.core"
    please check the jars used, adding this jars will solve this i guess.
    aii_utilxi_misc.jar
    ejb20.jar
    exception.jar
    jARM.jar
    sapj2eeclient.jar
    sapxmltoolkit.jar
    aii_msg_runtime.jar
    aii_proxy_xirt.jar
    Also check, application-j2ee-engine.xml  and see if,
    com.sap.aii.proxy.xiruntime
    com.sap.aii.messaging.runtime
    com.sap.xi.util.misc
    com.sap.guid
    You wil get the jars in XI servers, you can ftp and get the jars, but you may need to search them.
    Anotherthing, always take the jars from the xi servers to be sure you are compatible with the upgrades .
    Hope this solves your problem.
    Anirban.

Maybe you are looking for

  • Safari.exe  Entry point not found - error message.

    The procedure entry point... could not be found... When I try to start up Safari on my wife's pc. I deleted and reinstalled...same response...what gives. What else to do?

  • Anyway to transfer maintain or transfer iWeb Link

    OK, here's my problem.  My wife runs a Junior Cotillion, www.californiajuniorcotillion.com and www.nevadajuniorcotillion.com and we hosted them on MobileMe.  We also had A-Plus redirect the MM adresses such as web.me.com/grahamkent/CJC/  back onto ww

  • Transaction in a BP in more than one currencies

    Hello Experts, I have made few transaction with BP > Vendor in one currency, now I have a requirement of making a trancsaction in Swiss Frank another currency. Can we change the crrency ? Help Required, Regards,

  • ECL Viewer 7.0 patch 3 DXN file font problem  HELP ME!!!!!!!!

    Hi everyone! During display og .DXN files in ECL Viewer the problem window pops up The problem is that program does not see  isocp.shx and simplex.shx files These files holds font data for CAD files I downloaded these files from internet The question

  • Which One to Install SAP 4.7 or 5.0 ?

    HI, Which One to Install SAP 4.7 or 5.0 ?I am not able to understand? i am confused...here i need expert help for looking forward in practise which inturn leads to my career in SAP in Realtime?In realtime which one is using? Thanx..