Getting Inbound Java Proxy Exception in method "onMessage"
I have built an Inbound Java proxy, deployed the EJB, viewed it in the J2EE admin tool, registered the JPR settings (also listAll, reviewed results, looks OK), configure the XI scenario. When I run the XI scenario using the Runtime workbench I get the following error in the BPM Synchronous Send step (calling the Java Proxy)
"com.sap.aii.af.ra.ms.api.DeliveryException: Exception in method onMessage".
Does anyone have any suggestions?
What causes an "onMessage" Exception?
Thanks Sudhir Here is the process I am following to deploy my Proxy, would you please validate it. Created EJB Project in NWDS, unziped XI gened proxies into ejbModule folder, renamed *PortTypeImpl.template to *PortTypeImpl.java (will add real code later), compiled all code (no errors), edited ejb_jar.xml to match your suggested format, can view EJB Candidates (and see my Proxy Bean), built EJB.JAR file (via Wizard), created new Enterprise Application Project and pointed build path to my EJB Project, within the Enterprise Application Project I built an EAR file (which includes the "EJB Project JAR File", Deployed Enterprise Application Project to the XI J2EE Engine. I can log into XI J2EE Admin and see my EJB Project and the Proxy Bean I am trying to execute. Is this the process you used to deploy the proxy bean?
Also you you turn on JPR Tracing to see what parameters are passed into the JPR engine?
Similar Messages
-
Hi all,
We are implementing a Inbound syncronous java proxy in our scenario. We were able to create and deploy the EJB successfully in the J2EE engine. The adpater configuration is also working fine. When we fire the message we are getting an exception in RWB saying
<b>Delivery of the message to the application using connection JPR failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Exception in method onMessage.: com.sap.engine.services.ejb.exceptions.BaseEJBException: Exception in method onMessage.. Setting message to status failed.</b>
I'm unable to understand the error. Can somebody tell me what this exception means?
Regards
ArvindSatish,
Thanks for the reply. My biggest confusion here is if the control is actually going to the proxy class.
>>>Delivery of the message to the application using connection JPR failed>>>
When it says delivery of message failed what does it mean , is the message not reaching the proxy class or is it becuase the proxy class is not able to send the message to atrget URL which is the logic which I have implemented in the class.
regards
Arvind -
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
Lalithi,
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 -
RFC - Java Proxy (Synchronous) invoking method
Hi,
I have problems to call my inbound java proxy.
My scenario consist of send RFC -> Java Proxy (Synchronous)
Proxy this registered
http://hcp095.intra.csc.es:50100/ProxyServer/register?ns=http://csc.es/xi/rca&interface=Z_RCA_SCS&bean=ZRCASCS_PortTypeBean&method=zRCASCS
ejb-jar.xml:
<ejb-jar>
<description>EJB JAR description</description>
<display-name>EJB JAR</display-name>
<enterprise-beans>
<session>
<ejb-name>ZRCASCS_PortTypeBean</ejb-name>
<home>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundHome4</home>
<remote>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundRemote4</remote>
<local-home>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundLocalHome4</local-home>
<local>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundLocal4</local>
<ejb-class>es.csc.xi.rca.ZRCASCS_PortTypeBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
</enterprise-beans>
</ejb-jar>
Class Impl:
package es.csc.xi.rca;
public class ZRCASCS_PortTypeImpl extends AbstractProxy implements ZRCASCS_PortType {
public ZRCASCSResponse_Type zRCASCS(ZRCASCS_Type parameters) throws ZRCASCSException_Message_Exception, SystemFaultException, ApplicationFaultException{
//throw new RuntimeException();
Rca_ws a = new Rca_ws();
return a.zRCASCS(parameters);
Error: XI_Monitor
<SAP:Category>XIAdapterFramework</SAP:Category>
<SAP:Code area="MESSAGE">GENERAL</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: Error invoking method zRCASCS of proxy bean $Proxy305: cannot assign instance of com.sap.guid.GUID to field com.sap.aii.proxy.xiruntime.core.MessageSpecifierImpl.guid of type com.sap.guid.IGUID in instance of com.sap.aii.proxy.xiruntime.core.MessageSpecifierImpl: com.sap.aii.proxy.xiruntime.core.XmlInboundException: Error invoking method zRCASCS of proxy bean $Proxy305: cannot assign instance of com.sap.guid.GUID to field com.sap.aii.proxy.xiruntime.core.MessageSpecifierImpl.guid of type com.sap.guid.IGUID in instance of com.sap.aii.proxy.xiruntime.core.MessageSpecifierImpl</SAP:AdditionalText>
<SAP:ApplicationFaultMessage namespace="" />
Error: defaultTrace
#hcp095.intra.csc_XID_19271950#ANGUZMAN#ec20b7f019f611de98340011259e6830#
SAPEngine_Application_Thread[impl:3]_36##0#0#Error##Plain##
#com.sap.aii.proxy.xiruntime.core.XmlProxyException: Error invoking method zRCASCS of proxy bean $Proxy366:
cannot assign instance of com.sap.guid.GUID to field com.sap.aii.proxy.xiruntime.core.MessageSpecifierImpl.guid
of type com.sap.guid.IGUID in instance of com.sap.aii.proxy.xiruntime.core.MessageSpecifierImpl
at com.sap.aii.proxy.xiruntime.core.XmlProxyJ2EE.call(XmlProxyJ2EE.java:192)
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_0.onMessage(JPRLocalLocalObjectImpl0_0.java:175)
at com.sap.aii.af.ra.ms.impl.ServicesImpl.deliver(ServicesImpl.java:276)
at com.sap.aii.adapter.xi.ms.XIEventHandler.onDeliver(XIEventHandler.java:1049)
at com.sap.aii.af.ra.ms.impl.core.queue.RequestConsumer.onMessage(RequestConsumer.java:119)
at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:850)
at com.sap.aii.af.ra.ms.runtime.MSWorkWrapper.run(MSWorkWrapper.java:56)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(AccessController.java:180)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
If somebody can help me.
Thank you very muchSolved!!!
to assign library references to the project application-j2eeengine.xml
com.sap.aii.proxy.xiruntime
com.sap.aii.messaging.runtime
com.sap.xi.util.misc
com.sap.guid -
Inbound Java Proxy doesnu00B4t work
Hi
I have configured the following steps for an Inbound Java Proxy:
1.- Create a Business System (Web AS Java) where is located the Proxy.
2.- Create a XI receiver comm. channel with the respective configuration
3.- Create a Java Proxy and implemented in NWDS
4.- Generate a .jar archive
5.- Generate a .ear archive and deploy to the Integration Server.
6.- Register the Proxy.
The scenario is JDBC --> XI --> Java Proxy. In the SXMB_MONI TC show no errors but the java proxy doesn´t work, that is, it doesn't do anything. Somebody knows why?thanks Krishna, I've look into the RWB and see an error in the Adapter Engine, I attach the Log in the Audit Log Tab of the message:
Success Message successfully received by messaging system. Profile: XI URL: http://myAppServer:50000/MessagingSystem/receive/JPR/XI Credential (User): XIAPPLUSER
Success Using connection JPR. Trying to put the message into the receive queue.
Success Message successfully put into the queue.
Success The message was successfully retrieved from the receive queue.
Success The message status set to DLNG.
Success Java proxy runtime (JPR) accepted the message
Error Delivery of the message to the application using connection JPR failed, due to: Exception in method $messageSpecifier..
Success The asynchronous message was successfully scheduled to be delivered at Mon Sep 04 10:43:06 GMT-04:00 2006.
Success The message status set to WAIT.
Success Retrying to deliver message to the application. Retry: 1
I cannot see all the text in the error message, but it tell me that the error is in the JPR? -
Sync inbound java proxy timeout
Hi all
my scenario abap proxy to java proxy sync.
but i had timeout error with some bulk data, but not too big...
does anyone know how to increase time for inbound java proxy?
regards;
dennisDear Ogawa,
Please if you have step by step document please send me .
i am getting this error in my scenario:
I am working on Java server proxy, In my scenario i am picking a file from sender File Adapter and in Receiver side i am using java proxy (Inbound). But in SXMB_MONI , it give me the Error and Error no is :110
See the Detailed Error in Call Adapter.
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Call Adapter
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="INTERNAL">CLIENT_RECEIVE_FAILED</SAP:Code>
<SAP:P1>110</SAP:P1>
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>Error while receiving by HTTP (error code: 110, error text: )</SAP:Stack>
<SAP:Retry>A</SAP:Retry>
</SAP:Error>
Please help me .
Regards
Lateef -
[urgent]inbound java proxy
Hi
how can i know if receiver XI adapter touch inbound EJB by registering url?
my scenario is ABAP Proxy to Java proxy Sync.
i can see mapping error on moni because payload inbound adapter has empty ,
my issue, XI seems not to call inbound EJB?
on adapter monitoring, JPR green
what missing ?
XI receiver
HTTP 1.0
XI3.0
integration server
URL Address
Target Host : XI IP
service number : 50000
path : /MessagingSystem/receive/JPR/XI
authentication Type : Use Logon Data for Non-SAP System
UserName : XIAPPLUSER
password : password
thanks
ogawaHi,
Please can you put here what the error is:...check if the mapping is working properly...
Also can you check if the registering is done correctly.
Please check on this thread
Java Proxy Runtime: failure to locate proxy bean on inbound call
Regards
Vijaya -
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. -
Java Proxy Runtime: failure to locate proxy bean on inbound call
Hello gurus of the SDN,
I have been trying to get an inbound Java Proxy scenario to work in XI 3.0 but have not been able to get the JPR to recognize my generated and deployed java code. My scenario is set up to call the java proxies generated from a message interface based on the MATMAS Idoc. I successfully deployed the generated java proxies on the same host box as is running the XI instance. The objects are named as follows
Message interface on XI = Inbound_MATMAS04
Generated proxy bean = Inbound_MATMAS04_PortTypeBean
Implementing class = InboundMATMAS04_PortTypeImpl
Implementing method = inboundMATMAS04
I used the JPR transport servlet to register the interface and implementing class but am not sure if I did this correctly. I used the following entry in my web browser:
http://nadcp786:50000/ProxyServer/register?
ns=urn:xiTrainingLabs:groupXX:SAP&
interface=InboundMATMAS04&
bean=InboundMATMAS04_PortTypeImpl&
method=inboundMATMAS04
I also tried using the localejb/ prefix for the bean name in the above step since the code is co-located. When I trigger the scenario, the Idoc info is passed into XI and the Java Proxy Runtime is called, but I get the following error response back in the SOAP header:
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIAdapterFramework</SAP:Category>
<SAP:Code area="PARSING">GENERAL</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: Cannot locate proxy bean InboundMATMAS04_PortTypeImpl: com.sap.aii.proxy.xiruntime.core.XmlInboundException: Cannot locate proxy bean InboundMATMAS04_PortTypeImpl</SAP:AdditionalText>
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack />
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
Finally, appended at the end of this post is the audit log of the messaging system showing that the JPR is called but without being able to locate the bean. I think I am missing a configuration step somewhere, but cant figure out what it is!! Can anyone help me?
Many thanks in advance.
Regards,
Nick Simon
Time Stamp Status Description
2004-10-25 19:47:32 Success The message was successfully received by the messaging system. Profile: XI URL: http://nadcp786.bcsdc.lexington.ibm.com:50000/MessagingSystem/receive/JPR/XI
2004-10-25 19:47:32 Success Using connection JPR. Trying to put the message into the receive queue.
2004-10-25 19:47:32 Success The message was successfully retrieved from the receive queue.
2004-10-25 19:47:32 Success The message status set to DLNG.
2004-10-25 19:47:32 Success Java proxy runtime (JPR) accepted the message
2004-10-25 19:47:34 Error JPR could not process the message. Reason: Cannot locate proxy bean localejbs/InboundMATMAS04_PortTypeImpl
2004-10-25 19:47:34 Error Delivery of the message to the application using connection JPR failed, due to: Cannot locate proxy bean localejbs/InboundMATMAS04_PortTypeImpl.
2004-10-25 19:47:34 Error The message status set to FAIL.
2004-10-25 19:47:34 Error Asynchronous error detected: Cannot locate proxy bean localejbs/InboundMATMAS04_PortTypeImpl. Trying to report it.
2004-10-25 19:47:34 Error Asynchronous error reported.
Message was edited by: Nicholas SimonHi
How do you determine the JNDI naming of the a EJB?
I have following entry in JNDI directory in the root
Object Name FlightQueryIn
Class Name javax.naming.Reference
Context Name
Object Value Reference Class Name:
Type: clientAppName
Content: sap.com/JavaProxyEAR
Type: interfaceType
Content: remote
Type: home
Content: com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundHome4
Type: ejb-link
Content: FlightSeatAvailabilityQueryIn_PortTypeBean
Type: jndi-name
Content: FlightQueryIn
Type: remote
Content: com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundRemote4
I tried to register the bean with JPR using:
http://ctsapxid01:50100/ProxyServer/register?ns=http://sap.com/xi/XI/Demo/Airline&interface=FlightSeatAvailabilityQuery_In&bean=FlightQueryIn&method=flightSeatAvailabilityQueryIn
I followed the following blog
http://wiki.sdn.sap.com/wiki/display/Java/JavaProxyChangesinPI7.1fromPI7.0
Thanks,
Chris -
Message Inbound with Java Proxy
Hi all,
I try looking for java proxy example code to write a whole inbound message into file. But I can't to find it. I try with these blogs but still confuse.
/people/prasad.ulagappan2/blog/2005/06/27/asynchronous-inbound-java-proxy
/people/rashmi.ramalingam2/blog/2005/06/25/an-illustration-of-java-server-proxy
Could you please to help and give me a example code?
Thanks and Regards
ParkHi,
Refer this link
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/d06315a6-e66e-2910-039c-ba8bbbd23702
I hope this would help you -
I am using an Inbound Async Java Proxy to send via socket three strings, via SXMB_MONI and RWB->MM->MDT I can see message was successfully delivered to JP System that for me is the XI J2EE engine, the JP is not sending anything (the logic is very simple) much worse I hardcoded the strings that is to supose to send and still nothing happens, I think the JPR is not calling the EJB, this is the body of my ejb-jar.xml, I have doubts on the values of the local, home, remote... tags
<ejb-jar>
<description>EJB JAR description</description>
<display-name>EJB JAR</display-name>
<enterprise-beans>
<session>
<ejb-name>MiIaAlertaDMS_PortTypeBean</ejb-name>
<home>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundHome4</home>
<remote>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundRemote4</remote>
<local-home>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundLocalHome4</local-home>
<local>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundLocal4</local>
<ejb-class>sapPegDmsPEGBPM00.MiIaAlertaDMS_PortTypeBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
</enterprise-beans>
</ejb-jar>
Any ideas on this problem?
Thanks in advance.HI,
Can you just cross check with the help of this blog-
/people/prasad.ulagappan2/blog/2005/06/27/asynchronous-inbound-java-proxy
Also as I told, you can write a file from payload in Java Proxy- to debug
Regards,
Moorthy -
Java Proxy as Sender in PI 7.1
Hello everybody,
I would like to build a Java Proxy as a sender in PI 7.1. To be more precise, I would like to implement an asynchronous distribution scenario from MDM to PI. I understand the process of deploying and calling a receiver Java Proxy, but currently I don't know how to do the sender proxy. I can import the PI WSDLs, but I only get methods with return parameter void, taking the PI message type as input.
public void modifyRecordOutA(mdm.masterdatareplication.ModifyRecordRequest modifyRecordRequest) { }
So far so good, but somehow I have to send the data to PI, right? Could anybody tell me how to do this? Is there any documentation available that does not refer to older versions of the NWDS?
Thanks in advance,
Jörg
P.D.: Hints referring to attach pictures to the request would also be welcome, if there is something special to be considered.Hi,
You can have 2 types of Java proxies viz. client(putting data into xi pipeline) & server (xi pipeline sends request to these proxies.)
From system point of view, the requirements vary in case of these two. for server proxies you can have a webas java business system and associated technical system in sld.in case of client proxies, refer SAP note #809420.
But for a Java proxy, I would need a separate Java server(?) to run the application on, is this correct?
You do not need a separate Java server. The basic difference between ABAP proxies and Java proxies is ABAP proxies reside on the perticular application system(CRM or R/3) but java proxies reside on SAP Web AS J2EE stack of your XI server.
Just search SDN pointers on Java proxy developement and you will get good pointers. There is one How-to guide on service marketplace by the name "HowToWorkWithJavaProxies.pdf".
Regarding your dev environment, you can always make use of NWDS, you need to be very much familier with EJB concepts and deployment. Check help.sap.com for more details.
few links for java proxies
/people/rashmi.ramalingam2/blog/2005/06/25/an-illustration-of-java-server-proxy
/people/prasad.ulagappan2/blog/2005/06/27/asynchronous-inbound-java-proxy
Learning Java proxies - landscape question
Check these links also,
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/a068cf2f-0401-0010-2aa9-f5ae4b2096f9
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f272165e-0401-0010-b4a1-e7eb8903501d
Rgds
joel
Edited by: joel trinidade on Feb 18, 2009 3:06 PM -
I am trying to connect to an external server from a proxy , but I get a java.connection exception : remote host did not respond within the time
out period ..
how do i solve this issue ? can i explicitly set an increased time out on the connection ?I am trying to use sockets to address the issue of time outs..the code i have is as follows..i am trying to post an xml file , i dont seem to be getting a response nor am i erroring out ?
String host = "http://mysite.activation.com";
Socket sckt = new Socket(host,80);
sckt.setSoTimeout(10000);
String method = "POST";
String messageString = "<?xml version='1.0' encoding='UTF-8' ?>" +
"<Test.Users>" +
"<User userID='"+test+"' />"+
"</Test.Users>" ;
OutputStream out = sckt.getOutputStream();
out.write(method.getBytes());
out.write(messageString.getBytes());
out.flush();
out.close(); -
Call Client Java Proxy from Server Java Proxy
Hi Gurus!!
I'm trying to call a Client Java Proxy from a Server Java Proxy.
Is possible to do this? I think must be possible.
I have called this Client Java Proxy from another application, and run ok.
I have tried to call it following the Guide to call Java Client Proxies:
es.navantia.xi.mm.dispositivosRobotizadosKasto.MIRobotOut_PortTypeHome queryOutHome = null;
es.navantia.xi.mm.dispositivosRobotizadosKasto.MIRobotOut_PortTypeRemote queryOutRemote = null;
try {
// Get naming context
Properties p = new Properties();
p.put(
Context.INITIAL_CONTEXT_FACTORY,
"com.sap.engine.services.jndi.InitialContextFactoryImpl");
p.put(Context.PROVIDER_URL, "myurl:50104");
p.put(Context.SECURITY_PRINCIPAL, "MMIGUEZ");
p.put(Context.SECURITY_CREDENTIALS, mypasswrod);
Context ctx = new InitialContext(p);
Object ref = ctx.lookup("RobotOut");
// Look up jndi name of proxy bean
try {
queryOutHome =
(MIRobotOut_PortTypeHome) PortableRemoteObject.narrow(
ref,
MIRobotOut_PortTypeHome.class);
} catch (Exception e) {
throw new RuntimeException(e + "1");
// Get Remote interface
queryOutRemote = queryOutHome.create();
} catch (Exception e) {
throw new RuntimeException(e + "2");
but I get this error
"com.sap.aii.af.ra.ms.api.DeliveryException: Error invoking method mIRobotIn of proxy bean $Proxy351: es.navantia.xi.mm.dispositivosRobotizadosKasto.MIRobotOut_PortTypeHome: com.sap.aii.proxy.xiruntime.core.XmlInboundException: Error invoking method mIRobotIn of proxy bean $Proxy351: es.navantia.xi.mm.dispositivosRobotizadosKasto.MIRobotOut_PortTypeHome"
es.navantia.xi.mm.dispositivosRobotizadosKasto.MIRobotOut_PortTypeHome is the corresponding PortTypeHome to the Client Java Proxy.
I have tried to call too calling directly from the server Java Proxy to the method correcponding to the Client Java Proxy. The error I get is:
"com.sap.aii.af.ra.ms.api.DeliveryException: Error invoking method mIRobotIn of proxy bean $Proxy351: es/navantia/xi/mm/dispositivosRobotizadosKasto/DTRobot_Type: com.sap.aii.proxy.xiruntime.core.XmlInboundException: Error invoking method mIRobotIn of proxy bean $Proxy351: es/navantia/xi/mm/dispositivosRobotizadosKasto/DTRobot_Type"
Tha call to the client is:
es.navantia.xi.mm.dispositivosRobotizadosKasto.MIRobotOut_PortType clase = null;
es.navantia.xi.mm.dispositivosRobotizadosKasto.DTRobot_Type client_req = null;
es.navantia.xi.mm.dispositivosRobotizadosKasto.DTRobotResponse_Type client_res = null;
client_res = clase.mIRobotOut(client_req);
Please, any help will be useful.
Thanks and regards,
Manuel Míguez.Hi,
Now I get another error message:
com.sap.aii.af.ra.ms.api.DeliveryException: Error invoking method mIRobotIn of proxy bean $Proxy351: es/navantia/xi/mm/dispositivosRobotizadosKasto/MITextoOut_PortTypeRemote: com.sap.aii.proxy.xiruntime.core.XmlInboundException: Error invoking method mIRobotIn of proxy bean $Proxy351: es/navantia/xi/mm/dispositivosRobotizadosKasto/MITextoOut_PortTypeRemote
Now, my source is:
MITextoOut_PortTypeHome queryOutHome = null;
MITextoOut_PortTypeRemote queryOutRemote = null;
try {
// Get naming context
Context ctx = new InitialContext();
// Look up the EJB name in the environment
Object ref = ctx.lookup("java:comp/env/ejb/TextoOut");
// Object ref = ctx.lookup("java:comp/env/ejb/MITextoOut_PortTypeBean");
// Cast to Home interface
queryOutHome = (MITextoOut_PortTypeHome)
PortableRemoteObject.narrow(ref,
MITextoOut_PortTypeHome.class);
// Get Remote interface
queryOutRemote = queryOutHome.create();
} catch (Exception e) {
System.out.println("RemoteException occurred: "+e.getMessage());
e.printStackTrace();
//return;
try {
queryOutRemote.$messageSpecifier();
} catch (RemoteException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
DTTexto_Type Texto_type = new DTTexto_Type();
Texto_type.setTexto(req_texto);
DTTextoResponse_Type Texto_response = new DTTextoResponse_Type();
try {
Texto_response = queryOutRemote.mITextoOut(Texto_type);
} catch (SystemFaultException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (ApplicationFaultException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
I have tryed removing queryOutRemote.$messageSpecifier() and I get the error:
com.sap.aii.af.ra.ms.api.DeliveryException: Error invoking method mIRobotIn of proxy bean $Proxy351: es/navantia/xi/mm/dispositivosRobotizadosKasto/DTTexto_Type: com.sap.aii.proxy.xiruntime.core.XmlInboundException: Error invoking method mIRobotIn of proxy bean $Proxy351: es/navantia/xi/mm/dispositivosRobotizadosKasto/DTTexto_Type
Somebody knows what could be the cause of these errors?
Thanks and regards,
Manuel. -
Java Proxy message in waiting status
Hi,
Let me explain my case, In our Integration Scenario we have configured an Inbound Java Proxy as the How to guide (HOW TO WORK WITH JAVA PROXIES) expain, but the proxy doesn't hava code, that is, it have the code by default when its created, and when we register it and the scenario runs, in the message monitoring the status of the message to the JP Business Service is in WAITING status, and in the details it says sometimes that an old reference to another JNDI name of bean is doesn't locate or the message "MessageSpecifier could not be reset".
Remember, the Imp. class has only the default code and the scenario is JDBC --> XI --> JavaProxy
Any ideas?Hi Hector,
Status: WAITING
The message had been sent and it is failed and is currently waiting for another attempt.
Solution :
When the fist attempt to deliver the message has failed (a recoverable exception arose), the message is usually rescheduled and the status is updated to WAITING. As long as the message is in this status, the Messaging System retries to deliver the message according to the configured retry settings (default 3 tries).
Regards
Agasthuri Doss
Maybe you are looking for
-
How to download all columns in analytics
Hi, We are using obiee 10g. In criteria we are having 10 columns. but in results we are displaying only 8 columns. Out requirement is when we download excel/cvs, we need to get all the 10 columns. Please let us know. Thanks
-
NOT FASTER!! MUCH SLOWER!! When I close Firefox, I can no longer save my tabs. WHAT GIVES? When a new page isn't coming up, I can no longer stop it from loading & try again. WHY do my tabs need to be above the toolbars? I've loved using Firefox & hav
-
Hi, I'm trying to find out if there any known excel add-ins that conflict with BPC for Excel (v7) and how the conflicts manifest themselves. I am currently specifically interested in conflicts with SAP BW BEx Analyser but would be interested in any o
-
Change of decimal places in productive system
Hello We are on ECC 6.0 in a post Go Live environment. In our productive system we have set the decimal places to 2. For our business requirements, we would like to maintain 3 decimal places to 3 for Logistics modules (SD / MM & PP) where as we would
-
Live view different from design view
Hi folks, Does anyone know why, in dreamweaver, there is a difference between the site design in Design View and what you see in live view; and how should oneapproach this difference? Thanks.