Generated Class is not called by Inbound Proxy
Uploading data to Ztable of ECC by using inbound proxy.
The messages are tranfered to SAP ECC from SAP XI.
Monitoring in SXMB_MONI in SAP XI DEV can see Success flag
Monitoring in SXMB_MONI in SAP ECC can see inbound message stored in QUEUES only.
I configured the Application Integration Engine as per the help document.
In Reciever XI Adapter set the addressing type URL.
Coding is correct in the method of the generated class.
Let me know if any configurations yet to be done.
Let me know how to proceed furthur.
ThankYou in Advance.
hi
Go to SMQR of the ECC and register and activate the queues again.
Also ensure that u are implementing the correct methods of the proxy
EXECUTE-SYNCHRONOUS / EXECUTE-ASYNCHRONOUS
rgds
Arun
Similar Messages
-
Aysnch Proxy calling from Inbound Proxy
Hello Experts,
My scenario:-
Legacy sending File to Inbound proxy and from Inbound proxy I am calling the outbound proxy method to send the data back to Legacy system.
Its like File request -Inbound Proxy- Outbound Proxy Response- File.
FileRequest-Inbound Proxy----message in R3 as well in XI moni is successful.
File Outbound response-File-----message in R3 is coming as empty and because of this the message fails in Xi moni.
I tried to debug the scenario using test tab with the moni payload, I am able to see the data populated in debugging mode, But after the Outbound method is called the response message is coming is empty. commit work is also used inside outbound method.
I tried every possible ways,but not getting any clue.
chiragHi,
Just check...........in the inbound proxy code, the structure of the response msg is updated as the current structure of response msg.......may be you are filling the data in the old structure of response msg and then asssinging it in the outbound proxy call.......you need to fill the data in the new structure of response msg in your inbound proxy code.
Regards,
Rajeev Gupta -
Last version of class file not called by Tomcat
Hi,
I'm a beginner in JSP/Tomcat.
I would like to include as much java code as possible inside java classes and just call java methods from my JSP pages.
For instance in project PCliente I've created the Java class
/u5/web/jakarta-tomcat-4.1.27/webapps/ROOT/WEB-INF/classes/PCliente.java
The class compiles successfully into PCliente.class which is stored in the same directory as the source.
The first time I call the class from my JSP page it runs OK.
The jsp page is in
/u5/web/jakarta-tomcat-4.1.27/webapps/ROOT/pcliente/resultados.jsp.
After I make some changes in PCliente.java, compile it, and run again the class from the JSP page, it doesn't get the last version of PCliente.class but a previous version. Also, I ignore where this previous version is kept (I assume Tomcat keeps a backup !? Where ?).
Can someone please tell me what am I (or Tomcat or both) doing wrong ?
I still have a serious handicap with Tomcat's configuration. A simple hint regarding this problem would be very apreciated.
I'm using Tomcat 4.1.27 and J2SDK 1.3.1_9 installed in a Solaris environment.
Thanks for your help,
MiguelHi,
It sounds like your hitting the good ole rule that you need to restart the web application server (sometimes just a refresh will work, depends on the app server) when deploying new/updated classes.
In short, if you restart Tomcat it should use the newer class...
dapanther... -
Methods of class were not called...
class FAniCtrl extends MovieClip
//---------------------------------------------- Properties
private var mRepeats :Number;
private var mCurrentRepeat :Number;
public var mAni :Number;
public var mAniName :String;
private var my_mcl :MovieClipLoader;
private var mclListener :Object;
//---------------------------------------------- Methods
* constructor method
public function FAniCtrl()
super();
mCurrentRepeat = 0;
mRepeats = 1;
mAni = -1;
mAniName = "";
_visible = false;
this.stop();
///what is wrong with following code section: OnFrameEntry
and OnLoaded were never called.
this.my_mcl = new MovieClipLoader();
this.mclListener = new Object();
this.mclListener.pparent = this;
this.mclListener.onLoadInit = function(
target_mc:MovieClip
) : Void
this.pparent.onEnterFrame = function() : Void
this.OnFrameEntry();
this.pparent.OnLoaded();
this.my_mcl.addListener(mclListener);
* destroy method
public function Destroy():Void
_visible = false;
this.unloadMovie();
public function Load(
inAniName :String,
inRepeats :Number
) : Void
_visible = true;
mRepeats = inRepeats;
mAniName = inAniName;
my_mcl.loadClip(inAniName,this);
this.stop();
public function LoadNPlay(
inAniName :String,
inRepeats :Number
) : Void
_visible = true;
mRepeats = inRepeats;
mAniName = inAniName;
my_mcl.loadClip(inAniName,this);
//TBD
public function Play() : Void
if(mAniName == "")
return;
_visible = true;
this.gotoAndPlay(1);
public function Stop() : Void
_visible = false;
this.gotoAndStop(1);
public function Resume() : Void
if(mAniName == "")
return;
//TBD
this.play();
public function Pause() : Void
//TBD
this.stop();
public function OnLoaded() : Void
trace("OnLoaded");
public function OnRound() : Void
_global.GLDXI_AniRounded(mAni);
public function OnEnd() : Void
trace("OnEnd");
_visible = false;
_global.GLDXI_AniFinished(mAni);
public function OnFrameEntry() : Void
trace("OnFrameEntry");
if(this._currentframe == this._totalframes)
mCurrentRepeat++;
if(mCurrentRepeat >= mRepeats)
mCurrentRepeat = 0;
OnRound();
OnEnd();
this.stop();
else
OnRound();Sorry... I missed it. My bad.
I think I see your problem now:
my_mcl.loadClip(inAniName,this);
You are replacing your clip, and any code, by using 'this'
here. You should
have a container to hold the loaded movie, within your clip,
and then use
this.container instead.
Dave -
Head Developer
http://www.blurredistinction.com
Adobe Community Expert
http://www.adobe.com/communities/experts/ -
ABAP Proxy Inbound message does not call generated method
Hi,
we tried to generate a ABAP Proxy for a customer demo. It just should retrieve some data and write them to a database table.
the generation and activation of the proxy was without errors. If we call the check function the method works fine.
But if we receive data from XI via the regarding interface it looks as if the execute-method of the generated class is not called. We can see the message in SXMB_Moni, but nothing is written to the db table.
Does someone have any idea?Hi Peter,
There will be some error in the Proxy Side.
Check this in Transaction Code-SXMB_MONI of Application System(R/3 etc) not in the XI system.
There may be some communication(http etc) issues.
Also check this -
/people/krishna.moorthyp/blog/2005/12/23/monitoring-for-processed-xml-messages-in-abap-proxy
Hope this helps to findout what is the error.
Regards,
Moorthy -
Child class not called at run time labview
I'm developing a large application using a few Class.
In development mode, everything works fine. When I build the application and run the executable, one of my child class is not called at all. In some of the methods of that child class I have checked the option in "Window Appearance" to show the Front Panel when VI Load. The VI show it self but is not executing. The run button is in a state that indicate there is no top vi calling it.
I have played whit Execution : Preallocated clone reentrant execution and General: Separate compiled code from source file.
And I set them back to default.
Two days lost trying to figure what append to my application.
Please Help.
NitrofHi Nitrof,
Check out this excerpt straight from the NI Training Manual on object-oriented programming (image attached). There's a chance that the child classes aren't being included in the build. They need to be included somewhere in the application VI so that the Application Builder knows to include the class in the build.
Also check out this forum that sounds like it's describing a similar problem: http://forums.ni.com/t5/LabVIEW/Problems-with-dynamic-class-load-in-executable/m-p/2139116
Hope this helps!
Alexandra
National Instruments
Applications Engineer
Attachments:
Forum1937225.png 146 KB -
Outbound proxy in Inbound proxy
Hi Experts,
I am doing two way interface. JDBC asyn - proxy-JDBC asyn
I am calling outbound proxy in inbound proxy here.
While i am calling it is giving HTTP connection error.
So can i call outbound proxy in inbound proxy ????
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="INTERNAL">CLIENT_RECEIVE_FAILED</SAP:Code>
<SAP:P1>400</SAP:P1>
<SAP:P2>ICM_HTTP_CONNECTION_FAILED</SAP:P2>Outbound proxy inside inbound proxy scenario usually works fine. But few suggestions,
1. Check if the message is failing in request side of asynchronous scenario. If this is the case then I think the error which you are getting is probably due to improper channel configuration.
2. If problem is not the one mentioned in point 1 above then, test the proxy in transaction SPROXY of ECC as to whether outbound proxy is called while inbound proxy is executed manually in transaction SPROXY . Once you execute the inbound proxy then go to transaction "SXMB_MONI" of ECC to check whether a message which outbound proxy is required to send to PI appears over there, if it appears there that means there is no issue on programming of proxy.
Hope it might help in finding resolution.
Thanks,
Amit -
Startup class is not working in oc4j
hi
I have a servlet .In init of that servlet I will create an instance of a startup class .
In web.xml configuration I gave <load-on-startup></load-on-startup> .I created a war and an ear and deployed my application .The startup class is not called.
But when I configured the servlet in the default-web-app the startup class is running.
And furthur when I hot deploy my ear the startup class is running.
But when I restart my application server the startup class is not invoked.
can anybody help
Regards
Gajendran.Ghi
I had put auto-start=true in server.xml .then also it is not working.
when I redeploy my ear,the startup class is invoked,but when i restart the
server it does'nt
gaj -
Call transaction in ABAP Inbound proxy
Hi All,
I am processing transaction KKPAN in inbound proxy. As per my knowledge, there is no BAPI or other way of processing this transaction. I have recorded a BDC, and I am calling this BDC using Call Transaction in my Inbound proxy.
The problem is, control never returns back to the proxy after I call this BDC using Call Transaction. However, interestingly, If there is an error in BDC, the control comes back to the proxy. Any ideas, why it does not successfully update data using BDC in inbound proxy?
Your inputs are appreciated.
Thanks,
NavdeepThanks for you response Akshay !
However, It didn't solve my problem. In my case, the inbound proxy class is being called successfully. The problem comes, when I use Call Transaction in the class. The call transaction works and returns error message, if there is some error in the processing; however, for when there is no error in the BDC data, the control never comes back after call transaction.
However, if I use SPROXY to test this interface, by copying the payload of the message and using the same user (As in Comm Channel), I am able to call Call Transaction without any problem. The data gets created successfully.
Now this is getting really tricky.
Still looking for ideas
Regards,
Navdeep
Message was edited by:
Navdeep Singla -
PI settings help
I am trying to transfer PR from ERP6.0 EHP4 to SRM7.0 using CPPR scenario.
I configured ERP/SRM and PI configuration in Integration directory.
But i get Reciever determination error in XML at ERP/SRM AND PI
RCVR_DETERMINATION">NO_RECEIVER_CASE_BE
Error Text: No receiver could be determined
In SRM, Inbound Message(reciever) is green but Call Inbound Proxy is giving below error.
<Trace level="1" type="System_Error">Application-Error exception return from pipeline processing! <Trace level="1" type="T">Application Error at Receiver... => ROLLBACK WORK</Trace>
<Trace level="1" type="T">System Error at Receiver... => ROLLBACK WORK</Trace>
I tested configuration in Integration directory.
Sender aggreeemnt is green
Reciever determination is red and giving below error.
Internal Error : You do not have sufficient authorization for this operation.
I have done below setting in Integration directory.
Business system setting.
1.Selected Business System BC_MM_MXX_594
2.Create communication channel(Gen_Rec_xi) as Receiver
for above Business system BC_MM_MXX_594.
-Use adapter type XI, http://sap.com/xi/XI/System SAP Basis7.xx and RFC MXX_Integration,
1.Selected Business System BC_SRM_SXX_300
2.Create communication channel(Gen_Rec_xi) as Receiver
for above Business system BC_SRM_SXX_300.
-Use adapter type XI, http://sap.com/xi/XI/System SAP Basis7.xx and RFC SXX_Integration.
-->>one doubt here? Should i have to create Comm channel for sender type also from ERP and SRM? pls confirm.
I created object in Integration directory as follows.
Create Object by selecting Business System BC_MM_MXX_594.
1)Selected Internal communication
2)Reciever Determination : BC_MM_MXX_594 PurchaseRequestERPSourcingRequest_Out
3)Specified Interface determination : BC_MM_MXX_594 PurchaseRequestERPSourcingRequest_Out BC_SRM_SXX_300.
4)Specified Reciever agreement BC_MM_MXX_594 BC_SRM_SXX_300 PurchaseRequestERPSourcingRequest_in(communication channel selected is Gen_Rec_xi)
5)Generated Objects and saved as CPPR_scenario.
6)Activated all objects created in CPPR_Scenario.
Pls suggest something wrong with Reciever determination?
How to find where the problem is located? at ERP or PI or SRM?.
Also onething i noted is Integrated configuration is empty in Integration directory.
Any configuration should be done for IOC.? pls confirm.
Regards
ChandraAlso i noticed below
In ERP xml ->Inbound message(SENDER).
Does this error indicate problem while sending from ERP to SRM or SRM to ERP.
because i can see sender service and interface is empty and SAP reciever is having ERP service.
however reciever does not fetched the corresponding(purchaseRequestxxxxxxx) interface names.
- <SAP:Sender>
<SAP:Service />
<SAP:Interface namespace="" />
</SAP:Sender>
- <SAP:Receiver>
<SAP:Party agency="" scheme="" />
<SAP:Service>BC_MM_MXX_594</SAP:Service>
<SAP:Interface namespace="http://sap.com/xi/APPL">QueryCodeList</SAP:Interface>
</SAP:Receiver>
<SAP:Interface namespace="http://sap.com/xi/APPL">QueryCodeList</SAP:Interface>
SOAP:mustUnderstand="1">
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="RCVR_DETERMINATION">NO_RECEIVER_CASE_BE</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>No receiver could be determined</SAP:Stack>
<SAP:Retry>M</SAP:Retry>
Regards
Chandra -
How to call BAPI from ABAP Inbound Proxy
Hi All
Can some one provide/giude a sample code on how to call a BAPI from generated Method (Inbound Proxy) and how are the table parameters passed from Proxy to BAPI.
Thanks
Ravi/Hello Ravi,
In the proxy before calling the BAPI, construct the table, fill it with the appropiate values by lopping over the proxy request object. Now use this table for calling BAPI
Cheers,
Naveen -
Hi,
I have configured a proxy for a BAPI (SAP EM EventHandler.AddEventMessage02) but it does not work.
EventHandler.AddEventMessage02 has a deep structure.
Step by Step:
ABAP Proxy generated.
Activate changes
Export WSDL from Proxy.
Import WSDL to ESR, and generate a Service Interface.
Activate changes
Use SIW to generate the AIF configuration
Correct syntax ABAP errors in the code generated.
Activate changes
When I execute the service, AIF log says message header does not exist.
Looking through debug, the source data is not mapped to the target. When BAPI is called, curr_line structure is INITIAL
So I tried to check if the mappings are fine in /AIF/CUST but when I tried to define a source mapping, AIF says "DDIC structure ZCHAR1 does not exist"
Do you have any tips?
Thanks,
Erik BengtsonThe solution to my mapping problem is the following:
Map: Source TRACKINGHEADER to DESTINATION TRACKINGHEADER
In /AIF/CUST Destination Structure add the Function Before Mapping. This function will copy TRACKINGHEADER/ITEM/* to the destination TRACKINGHEADER/*
FUNCTION ZMA_E1_MAP.
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(RAW_STRUCT)
*" REFERENCE(RAW_LINE)
*" REFERENCE(SMAP) TYPE /AIF/T_SMAP
*" REFERENCE(INTREC) TYPE /AIF/T_INTREC
*" REFERENCE(SENDING_SYSTEM) TYPE /AIF/AIF_BUSINESS_SYSTEM_KEY
*" OPTIONAL
*" TABLES
*" RETURN_TAB STRUCTURE BAPIRET2 OPTIONAL
*" CHANGING
*" REFERENCE(OUT_STRUCT)
*" REFERENCE(DEST_LINE)
*" REFERENCE(DEST_TABLE)
*" REFERENCE(APPEND_FLAG) TYPE C
BREAK-POINT. "#EC NOBREAK
FIELD-SYMBOLS: <_item> TYPE ANY TABLE.
FIELD-SYMBOLS: <_row> TYPE ANY.
ASSIGN COMPONENT 'ITEM' OF STRUCTURE RAW_LINE TO <_item>.
LOOP AT <_item> ASSIGNING <_row> .
MOVE-CORRESPONDING <_row> TO DEST_LINE.
ENDLOOP.
ENDFUNCTION. -
Sync Async using proxies ( Calling Outbound proxy from Inbound proxy )
I'm trying to generate Asynchronous Outbound message from the Synchronous Inbound message message due to a requirement. My question is : is it really possible to develop such a scenario?. I'm getting weird error such as Kernal exception etc. Please let me know if you have developed such scenario and what should we do dfifferently in such scenarios?. Thank you for any suggestions.
Hi,
This error has has nothing to do with Calling Outbound Proxy from from Inbound Proxy. The scenario which you are telling is very much possible.
It looks like there is some problem in your proxy code while calling RFC from within there or something like that. Try catching the exception and see what is the exact error or put in debug mode and see the step where exactly your code is failing.
Use the following links for Catching Exception in Proxy
Inbound ABAP Proxy Trace and error handling
Handling Exceptions
ABAP Server Proxies - Fault Handling
Exception handling in integration processes
ABAP Proxy and fault messages
/people/bhanu.thirumala/blog/2006/02/07/abap-proxy--xml-to-abap-transformation
Thanks
Amit
Reward point if answer is helpful -
Calling Stored Procedure w/JPublisher generated classes
Hi,
We are trying to pass Oracle nested tables as input/output parameters to several of our stored procedures to support bulk binding operations in the database from our applications. We have some database defined types and stored procedures that use these as input/output parameters which have been tested and working at the database level. I managed to get JPublisher to create these classes and compile fine, but I am not sure exactly how to register these classes as parameters with the stored procedure Java call. Any assistance is appreciated.
Here is a sample of the db types/procedures:
TYPE USER_APP_TYPE IS OBJECT
User_ID VARCHAR2(50), -- input fields
App_ID VARCHAR2(50),
App_Type VARCHAR2(50),
App_Obj_ID VARCHAR2(50),
Status VARCHAR2(30), -- output fields
Desc_String VARCHAR2(255),
Comments VARCHAR2(255)
TYPE USER_APP_LIST IS TABLE OF USER_APP_TYPE;
CREATE OR REPLACE
PACKAGE BODY PKG_MOD_BULK
AS
PROCEDURE LOOKUPAPPBYUSER_BULK(
p_InOutRS IN OUT USER_APP_LIST)
IS
BEGIN
... do work - fill in output fields ...
END LOOKUPAPPBYUSER_BULK;
END PKG_MOD_BULK;So using JPublisher 3 classes were generated with constructors and getter/setter methods:
UserAppType.java
UserAppTypeRef.java
UserAppList.java
My consumer POC code looks like this:
public class BulkBindingDemo
@SuppressWarnings("CallToThreadDumpStack")
public static void main(String[] args)
Connection conn = null;
try
String UserName = "user";
String Password = "pass";
// Load JDBC driver
Class.forName("oracle.jdbc.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@mydatabse.com:1521:mysid", UserName, Password);
// Create instances of custom database UDT classes.
UserAppList myAppList = new UserAppLicList();
UserAppType[] myAppArr = new UserAppType[2];
// Populate UDTs
myAppArr[0] = new UserAppType("bob" ,"acct","fiscal","1FG452ABC",null,null,null,null,null,null,null);
myAppArr[1] = new UserAppType("joe","hr","benefits","89JTYG671",null,null,null,null,null,null,null);
myAppList.setArray(myAppArr);
// Not sure how to set parameter as input/output.
CallableStatement cs = conn.prepareCall("BEGIN MY_SCHEMA.PKG_MOD_BULK.LOOKUPAPPBYUSER_BULK(?); END;");
cs.setObject("p_InOutRs", myAppLicList);
cs.execute();
ResultSet rs = cs.getResultSet();
// Get results - null fields from above should be populated
if (rs.first())
myAppList = (UserAppList)rs.getObject("p_InOutRs");
myAppArr = myAppList.getArray();
System.out.println("status: " + myAppArr[0].getStatus());
System.out.println("desc str: " + myAppArr[0].getDescString());
System.out.println("comments: " + myAppArr[0].getComments());
// additional fields here..
//MyObject[] myObjectAry = (MyObject[])p_myObjectArray.getArray();
//cs.registerOutParameter(1,Types.CHAR);
catch (Exception e)
e.printStackTrace();
finally
if (conn != null)
try { conn.close(); }
catch (Exception e) {}
}So this code will compile and run up to the stored procedure call itself, but I'm not sure how to set the parameters for in/out with these generated classes. Any ideas?Anyone? Still haven't figured this one out...
-
How can I call a ABAP proxy class from BADI? PLease help
hi Experts,
I have a scenario where I have to call a ABAP proxy class from a BADI. How can I do this? Does anybody has sample code for the same?
Please help.
Thanks
GopalHi,
You can call a method of a class from BADI. Here are the steps.
1) In the BADI implementation create a object for the proxy class.
2) Call the Execute_Synchronous method.
You can define a BADI by using SE18 and you can implement it by using SE19.
Sample code...
================================================
METHOD ZIF_EX_VBADI~CONVERTUPPER.
DATA: OBJ TYPE REF TO ZTESTCLASS.
DATA: IT_DATA TYPE ZIN_MT,
IT_RES TYPE ZOUT_MT,
SEXCEPTION TYPE REF TO CX_AI_SYSTEM_FAULT.
TRY.
CREATE OBJECT OBJ
EXPORTING
LOGICAL_PORT_NAME = 'TESTPORT'.
CATCH CX_AI_SYSTEM_FAULT INTO SEXCEPTION.
ENDTRY.
ENDMETHOD.
================================================
Thanks,
Vivek LR
Maybe you are looking for
-
GI for consignment and how amount is calculated
All, I have a material where the base UOM and GR/GI Uof Entry are both KGs yet the Order Price UOM on the info record is TNE. When the GI is done for 4977.88 KG Info record price is 877EUR/TNE The expected amount is 4977.88KG * .877EUR/KG = 436
-
Numbers SUMIF with condition based on another cell?
This works great! =SUMIF(Food Log :: Date,"=March 20, 2008",Food Log :: Calories) But I want the condition to be based on a cell value: =SUMIF(Food Log :: Date,"=A2",Food Log :: Calories) Is there a way to use the SUMIF function with a condition base
-
Need help port forwarding on A1264 Airport Express
Hey, I am having some trouble forwarding a port. I have followed guides online, My OS is Windows 7 1) I created a static ip for my computer 10.0.1.151 2) Went into Airport Utility, Under Internet > DHCP tab I clicked "+", used my computers mac addre
-
I bought a film on my iPhone with a gift card. But I now want to download it on my iPad, will this cost me again?
-
Can't open my project.... Lost my project!!!
Hi, This is my 1st post on these forums. I had a question about iMovie. I made a project but when I finished, I did something and accidently moved the file to the desktop and desappeared from the iMovie projects. Now it appears in the desktop as a .r