WebService Call: RCVR_DETERMINATION: NO_RECEIVER_CASE_BE
Hello,
I want to call an external Web Service from my ABAP Code, but I get an error in transaction sxmb_moni:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Inbound Message
-->
- <SAP:Error SOAP:mustUnderstand="1" xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<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>
</SAP:Error>
I have no idea, where this error message comes from... Have you any solution proposals?
Thank you
Hi Yu
for the error RCVR_DETERMINATION.NO_RECEIVER_CASE_BE error
look at these thrad discussed the same
Consume a Web Service: No receiver could be determined
Error in my HTTP > XI > RFC (BAPI) senario
Http to IDOC Error
Regards
Abhishek
Similar Messages
-
RCVR_DETERMINATION.NO_RECEIVER_CASE_BE
Hi,
I am trying to consume a web service (which published by a third party, out side of my network) through PI 7.11 . I have created the external definition via the web service WSDL then defined the Service Interfaces, Message Mappings and Operation Mapping in IR. Later i configured the scenario in ID and tested in Test Configuration in ID. It found correct receivers with the payload.
I also generated ABAP Proxy in ECC system and run test in SPROXY. It gave me "RCVR_DETERMINATION.NO_RECEIVER_CASE_BE No receiver could be determined" error message. I have run "http://<saphost>:<port>/CPACache/refresh?mode=full" many times but didnt help. I copied below TRACE message from SXMB_MONI.
I also noticed that there are two lines per test. One is sender and one is receiver but both Interfaces are same and outbound one.
What could be the problem?
KR,
Altug<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Receiver Determination
-->
<SAP:Trace xmlns:SAP="http://sap.com/xi/XI/Message/30">
<Trace level="1" type="T">CL_XMS_MAIN->DETERMINE_EXT_PID: CENTRAL</Trace>
<Trace level="1" type="T">Party normalization: sender</Trace>
<Trace level="1" type="T">Determining the sender agreement</Trace>
<Trace level="1" type="B" name="CL_XMS_HTTP_HANDLER-HANDLE_REQUEST" />
<!-- ************************************
-->
<Trace level="1" type="T">XMB was called with URL /sap/xi/engine?type=entry</Trace>
<Trace level="1" type="T">User = XXXXXX</Trace>
<Trace level="1" type="T">Message ID = 4C0A5693C69C010DE10080000AA6001A</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-ENTER_XMS">
<Trace level="1" type="T">CL_XMS_MAIN->DETERMINE_EXT_PID: CENTRAL</Trace>
<Trace level="1" type="T">CL_XMS_MAIN->DETERMINE_INT_PID: SAP_CENTRAL</Trace>
<Trace level="1" type="B" name="CL_XMS_TROUBLESHOOT-ENTER_PLSRV" />
<Trace level="1" type="T">system-ID = BPD</Trace>
<Trace level="1" type="T">client = 100</Trace>
<Trace level="1" type="T">language = E</Trace>
<Trace level="1" type="T">user = XXXXXX</Trace>
<Trace level="1" type="Timestamp">2010-06-09T06:04:21Z CET</Trace>
<Trace level="1" type="T">ACL Check is performed</Trace>
<Trace level="1" type="T">XML validation is executed</Trace>
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_UC_EXECUTE">
<Trace level="1" type="T">PLNAME = CENTRAL</Trace>
<Trace level="1" type="T">QOS = BE</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_SYNC" />
<!-- ************************************
-->
<Trace level="1" type="T">>>>PID delete old pid determination coding</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST" />
<Trace level="1" type="B" name="PLSRV_XML_VALIDATION_RQ_INB">
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
<Trace level="1" type="B" name="CL_XMS_PLSRV_VALIDATION-ENTER_PLSRV">
<Trace level="1" type="T">Reading sender agreement</Trace>
<Trace level="1" type="T">Message does not contain a sender agreement</Trace>
<Trace level="1" type="T">Inbound validation by Integration Engine does not take place</Trace>
</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST" />
<Trace level="1" type="B" name="PLSRV_RECEIVER_DETERMINATION" />
<!-- ************************************
-->
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL" />
<!-- ************************************
-->
<Trace level="1" type="B" name="CL_RD_PLSRV-ENTER_PLSRV">
<Trace level="1" type="T">R E C E I V E R - D E T E R M I N A T I O N</Trace>
<Trace level="1" type="T">Cache Content is up to date</Trace>
<Trace level="1" type="T">No Relation found - accept given Receivers.</Trace>
</Trace>
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
</Trace>
<Trace level="1" type="T">An Exception has occured</Trace>
<Trace level="1" type="T">Error Text: No receiver could be determined</Trace>
<Trace level="1" type="T">SystemError message generated. Guid: 4C0C7AEFF2EC0079E10080000AA60016</Trace>
<Trace level="1" type="T">Error during execution of message : 4C0A5693C69C010DE10080000AA6001A</Trace>
<Trace level="1" type="T">ApplicationMessage was (=RefToMsgId): 4C0A5693C69C010DE10080000AA6001A</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
<!-- ************************************
-->
</SAP:Trace> -
Webservice call to XI Interface through SOAP Adapter from a Web application
I am getting the following error, when I try to call the XI Interface using soap adapter from a web application.
ERROR :
SystemError:
<context>XIAdapter</context>
<code>ADAPTER.JAVA_EXCEPTION</code>
<text><![CDATA[
com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException
at some time i am getting the following error.
faultCode: HTTP
faultSubcode:
faultString: (500)Internal Server Error
faultActor:
faultNode:
faultDetail:
{}:return code: 500
<SAP:Error><SAP:Category>XIServer</SAP:Category><SAP:Code>RCVR_DETERMINATION.NO_RECEIVER_CASE_BE</SAP:Code><SAP:Stack>No receiver could be determined</SAP:Stack></SAP:Error>
HttpErrorCode:500
(500)Internal Server Error
can any of one help to resolve this.
Thanks in advanceGanie
You are getting the exception at very first point of Pipeline Service i.e Receiver Determination, do compare the namespace, Sender Interface Name & Sender Service name with the payload you are sending from web-application, they must be exactly same.
The best way to get the test payload is suggested in above reply. -
Oracle 10gR2 WebService Call-In & Call-Out via PL/SQL (Step-by-Step Guide)
Hi Everyone,
This guide is for those of you who tried to Call-In and Call-Out WebService via Oracle 10gR2 using PL/SQL but failed a couple of times, re-installed a couple of times and retry, got it to work but don't know what made it work scenarios.
Hope this helps ;-)
Thanks,
Henry Wu
Instructions on how to use Oracle10gR2 Webservice Call-Out feature (Oracle JAX-RPC DII - Dynamic Invocation (DII) APIs)
PREREQUISITE
=================================================================
1. Download Oracle Database 10g Release 2 (10.2.0.1.0) (ZIP, ~655MB)
http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201winsoft.html
http://download.oracle.com/otn/nt/oracle10g/10201/10201_database_win32.zip
1.1 Choose Enterprise Edition
2. Download 10.1.3.1 Callout Utility for 10g (R1 +R2) RDBMS (ZIP, ~13MB)
http://download.oracle.com/technology/sample_code/tech/java/jsp/dbws-callout-utility-10131.zip
2.1 Extract to C:\oracle\product\10.2.0\db_1\dbws_callout_utility_10131
3. Download OC4J Standalone - Oracle Containers for J2EE (OC4J) 10g Release 3 (10.1.3.3) (ZIP, ~93MB; Pure Java—runs on all certified platforms)
http://www.oracle.com/technology/software/products/ias/index.html (Download Site)
http://download.oracle.com/otn/java/oc4j/101330/oc4j_extended_101330.zip
3.1 Extract to C:\oracle\product\10.2.0\db_1\oc4j_extended_101330
STEP-BY-STEP PROCEDURES
=================================================================
1. Prepare the database
1.1 Connect to SYS account (or any account that can connect as SYSDBA)
1.2 alter system set shared_pool_size=96M scope=both
1.3 alter system set java_pool_size=80M scope=both
1.4 ALTER USER SCOTT ACCOUNT UNLOCK;
1.5 ALTER USER SCOTT IDENTIFIED BY "tiger";
1.6 ALTER USER SCOTT QUOTA UNLIMITED ON USERS;
1.7 GRANT PUBLIC TO SCOTT;
1.8 GRANT Create Public Synonym TO SCOTT;
2. Load Oracle SOAP client to SCOTT (for Oracle 10g Release 2 Database)
2.1 Commands
2.1.1 Open command prompt (cmd.exe)
2.1.2 loadjava -u scott/tiger -r -v -f -genmissing -s -grant public C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\webservices\lib\soap.jar C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\lib\dms.jar C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\jlib\javax-ssl-1_1.jar C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home\lib\servlet.jar C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home\lib\mail.jar C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home\lib\activation.jar C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home\lib\http_client.jar C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home\lib\ejb.jar
2.1.3 It will take around 3 minutes and you will see "something" like the following when it completes (count may not be exact) :
Classes Loaded: 909
Resources Loaded: 75
Sources Loaded: 0
Published Interfaces: 0
Classes generated: 0
Classes skipped: 0
Synonyms Created: 984
Errors: 0
2.1.3 Close this command prompt
3. Load Oracle JAX-RPC client to SYS (for Oracle 10g Release 2 Database)
3.1 Commands
3.1.1 Open command prompt (cmd.exe)
3.1.2 loadjava -u sys/oracle -r -v -f -genmissing -s -grant public C:\oracle\product\10.2.0\db_1\dbws_callout_utility_10131\sqlj\lib\dbwsclientws.jar C:\oracle\product\10.2.0\db_1\dbws_callout_utility_10131\sqlj\lib\dbwsclientdb102.jar
3.1.2.1 It will take around 15 minutes and you will see "something" like following when it completes (count may not be exact) :
Classes Loaded: 4027
Resources Loaded: 81
Sources Loaded: 0
Published Interfaces: 0
Classes generated: 61
Classes skipped: 0
Synonyms Created: 4108
Errors: 0
3.1.3 Close this command prompt
4. Execute UTL_DBWS packages to SYS (for Oracle 10g Release 2 Database)
4.1 Commands
4.1.1 Connect to SYS account only
4.1.2 Execute the following (in TOAD you should execute them as Script, press the "thunder" button)
4.2.1 @"C:\oracle\product\10.2.0\db_1\dbws_callout_utility_10131\sqlj\lib\utl_dbws_decl.sql"
4.2.2 @"C:\oracle\product\10.2.0\db_1\dbws_callout_utility_10131\sqlj\lib\utl_dbws_body.sql"
4.2.3 CREATE PUBLIC SYNONYM utl_dbws FOR sys.utl_dbws;
5. Call-out a free Web Service using SCOTT
5.1 Commands
5.1.1 Connect to user SCOTT with password of TIGER
5.1.2 Copy and Paste the following "Anonymous Block" (sample #1) and execute it :
5.1.2.1 It sould return "PL/SQL DII client return ===> Redwood City"
declare
service_ utl_dbws.SERVICE;
call_ utl_dbws.CALL;
service_qname utl_dbws.QNAME;
port_qname utl_dbws.QNAME;
operation_qname utl_dbws.QNAME;
string_type_qname utl_dbws.QNAME;
retx ANYDATA;
retx_string VARCHAR2(1000);
retx_double number;
retx_len number;
params utl_dbws.ANYDATA_LIST;
l_input_params utl_dbws.anydata_list;
l_result ANYDATA;
l_namespace VARCHAR2(1000);
begin
-- open internet explorer and navigate to http://webservices.imacination.com/distance/Distance.jws?wsdl
-- search for 'targetNamespace' in the wsdl
l_namespace := 'http://webservices.imacination.com/distance/Distance.jws';
-- search for 'service name' in the wsdl
service_qname := utl_dbws.to_qname(l_namespace, 'DistanceService');
-- this is just the actual wsdl url
service_ := utl_dbws.create_service(HTTPURITYPE('http://webservices.imacination.com/distance/Distance.jws?wsdl'), service_qname);
-- search for 'portType name' in the wsdl
port_qname := utl_dbws.to_qname(l_namespace, 'Distance');
-- search for 'operation name' in the wsdl
-- there will be a lot, we will choose 'getCity'
operation_qname := utl_dbws.to_qname(l_namespace, 'getCity');
-- bind things together
call_ := utl_dbws.create_call(service_, port_qname, operation_qname);
-- default is 'FALSE', so we make it 'TRUE'
utl_dbws.set_property(call_, 'SOAPACTION_USE', 'TRUE');
-- search for 'operation soapAction' under <wsdl:operation name="getCity">
-- it is blank, so we make it ''
utl_dbws.set_property(call_, 'SOAPACTION_URI', '');
-- search for 'encodingstyle' under <wsdl:operation name="getCity">
utl_dbws.set_property(call_, 'ENCODINGSTYLE_URI', 'http://schemas.xmlsoap.org/soap/encoding/');
-- search for 'binding style'
utl_dbws.set_property(call_, 'OPERATION_STYLE', 'rpc');
-- search for 'xmlns:xs' to know the value of the first parameter
-- under <wsdl:message name="getCityResponse"> you will see the line <wsdl:part name="getCityReturn" type="xsd:string" />
-- thus the return type is 'string", removing 'xsd:'
string_type_qname := utl_dbws.to_qname('http://www.w3.org/2001/XMLSchema', 'string');
-- in the line <wsdl:operation name="getCity" parameterOrder="zip">
-- the parameterOrder is 'zip', thus we put in 'zip'
-- the 'ParameterMode.IN' is used to specify that we will be passing an "In Parameter" to the web service
-- the 'ParameterMode.IN' is a constant variable in the sys.utl_dbws package
utl_dbws.add_parameter(call_, 'zip', string_type_qname, 'ParameterMode.IN');
utl_dbws.set_return_type(call_, string_type_qname);
-- supply the In Parameter for the web service
params(0) := ANYDATA.convertvarchar('94065');
-- invoke the web service
retx := utl_dbws.invoke(call_, params);
-- access the returned value and output it to the screen
retx_string := retx.accessvarchar2;
dbms_output.put_line('PL/SQL DII client return ===> ' || retx_string);
-- release the web service call
utl_dbws.release_service(service_);
end;
5.1.3 Copy and Paste the following "Anonymous Block" (sample #2) and execute it :
5.1.3.1 It should return "PL/SQL DII client return ===> twelve thousand three hundred and forty five"
declare
service_ utl_dbws.SERVICE;
call_ utl_dbws.CALL;
service_qname utl_dbws.QNAME;
port_qname utl_dbws.QNAME;
operation_qname utl_dbws.QNAME;
string_type_qname utl_dbws.QNAME;
retx ANYDATA;
retx_string VARCHAR2(1000);
retx_double number;
retx_len number;
params utl_dbws.ANYDATA_LIST;
l_input_params utl_dbws.anydata_list;
l_result ANYDATA;
l_namespace VARCHAR2(1000);
begin
-- open internet explorer and navigate to http://www.dataaccess.com/webservicesserver/numberconversion.wso?WSDL
-- search for 'targetNamespace' in the wsdl
l_namespace := 'http://www.dataaccess.com/webservicesserver/';
-- search for 'service name' in the wsdl
service_qname := utl_dbws.to_qname(l_namespace, 'NumberConversion');
-- this is just the actual wsdl url
service_ := utl_dbws.create_service(HTTPURITYPE('http://www.dataaccess.com/webservicesserver/numberconversion.wso?WSDL'), service_qname);
-- search for 'portType name' in the wsdl
port_qname := utl_dbws.to_qname(l_namespace, 'NumberConversionSoap');
-- search for 'operation name' in the wsdl
-- there will be a lot, we will choose 'NumberToWords'
operation_qname := utl_dbws.to_qname(l_namespace, 'NumberToWords');
-- bind things together
call_ := utl_dbws.create_call(service_, port_qname, operation_qname);
-- default is 'FALSE', so we make it 'TRUE'
utl_dbws.set_property(call_, 'SOAPACTION_USE', 'TRUE');
-- search for 'operation soapAction' under <operation name="NumberToWords">
-- it is blank, so we make it ''
utl_dbws.set_property(call_, 'SOAPACTION_URI', '');
-- search for 'encodingstyle'
-- cannot find xml tag 'encodingstyle', so we just use the following as the generic encoding style
utl_dbws.set_property(call_, 'ENCODINGSTYLE_URI', 'http://schemas.xmlsoap.org/soap/encoding/');
-- search for 'binding style'
-- although 'document' was used, it produced an error, thus we will use 'rpc'
-- this value is generally only 'document' or 'rpc'
utl_dbws.set_property(call_, 'OPERATION_STYLE', 'rpc');
-- search for 'xmlns:xs' to know the value of the first parameter
-- under <xs:element name="NumberToWords"> you will see the line <xs:element name="ubiNum" type="xs:unsignedLong" />
-- thus the return type is 'unsignedlong', removing 'xs:'
-- however, upon testing, using 'unsignedlong' produced an error, while 'string' did not, so we will use 'string'
string_type_qname := utl_dbws.to_qname('http://www.w3.org/2001/XMLSchema', 'string');
-- under <xs:element name="NumberToWords"> you will see the line <xs:element name="ubiNum" type="xs:unsignedLong" />
-- the element name is 'ubiNum', thus we put in 'ubiNum'
-- the 'ParameterMode.IN' is used to specify that we will be passing an "In Parameter" to the web service
-- the 'ParameterMode.IN' is a constant variable in the utl_dbws package
utl_dbws.add_parameter(call_, 'ubiNum', string_type_qname, 'ParameterMode.IN');
utl_dbws.set_return_type(call_, string_type_qname);
-- supply the In Parameter for the web service
params(0) := ANYDATA.convertvarchar('12345');
-- invoke the web service
retx := utl_dbws.invoke(call_, params);
-- access the returned value and output it to the screen
retx_string := retx.accessvarchar2;
dbms_output.put_line('PL/SQL DII client return ===> ' || retx_string);
-- release the web service call
utl_dbws.release_service(service_);
end;
NOTES AND REFERENCES
=================================================================
This detailed step-by-step guide was produced with the following guide http://www.oracle.com/technology/sample_code/tech/java/jsp/callout_users_guide.htm
I could still not load Oracle JAX-RPC client to SCOTT (step 4) as it produces an error. See the following for more details :
http://forums.oracle.com/forums/thread.jspa?threadID=633219&tstart=0
Also, I could not consume some of the other free Web Services out there for reasons I don't know, hope someone can help clarify. See the following for more details :
http://forums.oracle.com/forums/thread.jspa?threadID=630733&tstart=0
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Instructions on how to use Oracle10gR2 Webservice Call-In feature
PREREQUISITE
=================================================================
1. Download Oracle Database 10g Release 2 (10.2.0.1.0) (ZIP, ~655MB)
http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201winsoft.html
http://download.oracle.com/otn/nt/oracle10g/10201/10201_database_win32.zip
1.1 Choose Enterprise Edition
2. Download OC4J Standalone - Oracle Containers for J2EE (OC4J) 10g Release 3 (10.1.3.3) (ZIP, ~93MB; Pure Java—runs on all certified platforms)
http://www.oracle.com/technology/software/products/ias/index.html (Download Site)
http://download.oracle.com/otn/java/oc4j/101330/oc4j_extended_101330.zip
2.1 Extract to C:\oracle\product\10.2.0\db_1\oc4j_extended_101330
STEP-BY-STEP PROCEDURES
=================================================================
1. Connect to SYS account and create user STORE
CREATE USER store IDENTIFIED BY store;
GRANT connect, resource TO store;
2. Connect to Oracle using the user STORE and password STORE
CONNECT store/store;
3. Execute the following objects for this excercise
CREATE SEQUENCE order_sq;
CREATE TABLE product_types (
product_type_id INTEGER
CONSTRAINT product_types_pk PRIMARY KEY,
name VARCHAR2(10) NOT NULL
CREATE TABLE products (
product_id INTEGER
CONSTRAINT products_pk PRIMARY KEY,
product_type_id INTEGER
CONSTRAINT products_fk_product_types
REFERENCES product_types(product_type_id),
name VARCHAR2(30) NOT NULL,
description VARCHAR2(50),
price NUMBER(5, 2)
CREATE TABLE customers (
customer_id INTEGER
CONSTRAINT customers_pk PRIMARY KEY,
first_name VARCHAR2(10) NOT NULL,
last_name VARCHAR2(10) NOT NULL,
dob DATE,
phone VARCHAR2(12)
CREATE TABLE orders (
order_id INTEGER
CONSTRAINT orders_pk PRIMARY KEY,
product_id INTEGER
CONSTRAINT purchases_fk_products
REFERENCES products(product_id),
customer_id INTEGER
CONSTRAINT purchases_fk_customers
REFERENCES customers(customer_id),
quantity INTEGER NOT NULL
INSERT INTO customers (
customer_id, first_name, last_name, dob, phone
) VALUES (
1, 'John', 'Brown', '01-JAN-1965', '800-555-1211'
INSERT INTO product_types (
product_type_id, name
) VALUES (
1, 'Book'
INSERT INTO products (
product_id, product_type_id, name, description, price
) VALUES (
1, 1, 'Modern Science', 'A description of modern science', 19.95
COMMIT;
CREATE OR REPLACE PACKAGE dbfunc AS
FUNCTION place_order (
p_product_id INTEGER,
p_customer_id INTEGER,
p_quantity INTEGER
RETURN VARCHAR2;
END dbfunc;
CREATE OR REPLACE PACKAGE BODY dbfunc AS
FUNCTION place_order (
p_product_id INTEGER,
p_customer_id INTEGER,
p_quantity INTEGER
RETURN VARCHAR2 IS
v_customer_count INTEGER;
v_product_count INTEGER;
v_order_id INTEGER;
BEGIN
-- count the number of products with the
-- supplied p_product_id (should be 1 if the product exists)
SELECT COUNT(*)
INTO v_product_count
FROM products
WHERE product_id = p_product_id;
IF v_product_count = 0 THEN
RETURN 'No such product';
END IF;
-- count the number of customers with the
-- supplied p_customer_id (should be 1)
SELECT COUNT(*)
INTO v_customer_count
FROM customers
WHERE customer_id = p_customer_id;
IF v_customer_count = 0 THEN
RETURN 'No such customer';
END IF;
-- get the next value from orders_sq
SELECT order_sq.nextval
INTO v_order_id
FROM dual;
-- place the order
INSERT INTO orders (
order_id, product_id, customer_id, quantity
) VALUES (
v_order_id, p_product_id, p_customer_id, p_quantity
COMMIT;
RETURN 'Order placed with id of ' || v_order_id;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
RETURN 'Order not placed';
END place_order;
END dbfunc;
4. Install and Configure OC4J
4.1 Change Directory
4.1.1 Open command prompt (cmd.exe)
4.1.2 CD C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\bin
4.2 Configure Environment variables (type in command prompt)
4.2.1 set JAVA_HOME=C:\oracle\product\10.2.0\db_1\jdk
4.2.2 set ORACLE_HOME=C:\oracle\product\10.2.0\db_1\oc4j_extended_101330
4.3 Starting OC4J for the first time
4.3.1 oc4j -start
4.3.2 If this is not your first time to "start" oc4j, go to step 4.3.4
4.3.3 Set oc4jadmin password (use the password "oracle" w/o the quotation marks)
08/03/21 17:13:54 Set OC4J administrator's password (password text will not be displayed as it is entered)
Enter password:
Confirm password:
Confirm password: The password for OC4J administrator "oc4jadmin" has been set.
08/03/21 17:14:01 The OC4J administrator "oc4jadmin" account is activated.
4.3.4 OC4J has started if you see the message :
08/03/21 17:14:16 Oracle Containers for J2EE 10g (10.1.3.3.0) initialized
4.3.5 Leave this command prompt open
4.4 Configure Data Source
4.4.1 Open a new command prompt via the cmd.exe command
4.4.2 type "hostname" and then press enter
4.4.3 Keep this command prompt open for later use
4.4.4 Open Windows Explorer and navigate to the folder C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home\config
4.4.5 Open the file data-sources.xml
4.4.6 Modify and Save the file so that it will look something like the following :
4.4.6.1 Note that "hpv2710us" is my hostname found in step 4.4.2
4.4.6.2 Note that "ORCLDEV" is the name of my Oracle Instance. (Default installation uses ORCL only)
<connection-pool name="Example Connection Pool">
<connection-factory factory-class="oracle.jdbc.pool.OracleDataSource"
user="store"
password="store"
url="jdbc:oracle:thin:@//hpv2710us:1521/ORCLDEV">
</connection-factory>
</connection-pool>
4.4.7 Close the text editor
4.4.8 Close the Windows Explorer
4.4.9 Close this command prompt (type exit)
5. Publishing a PL/SQL Package as a Database Web Service
5.1 Create the config.xml file
5.1.1 Open Notepad.exe
5.1.2 Copy and Paste the following :
5.1.2.1 Note that "hpv2710us" is my hostname found in step 4.4.2
5.1.2.2 Note that "ORCLDEV" is the name of my Oracle Instance. (Default installation uses ORCL only)
<web-service>
<display-name>PLSQL Web Service</display-name>
<description>PLSQL Sample</description>
<destination-path>./dbfunc.ear</destination-path>
<temporary-directory>/tmp</temporary-directory>
<context>/plsqlsample</context>
<stateless-stored-procedure-java-service>
<jar-generation>
<schema>store/store</schema>
<db-url>jdbc:oracle:thin:@hpv2710us:1521:ORCLDEV</db-url>
<prefix>db.func.place.order</prefix>
<db-pkg-name>dbfunc</db-pkg-name>
</jar-generation>
<uri>/dbfunc</uri>
<database-JNDI-name>jdbc/OracleDS</database-JNDI-name>
</stateless-stored-procedure-java-service>
<wsdl-gen>
<wsdl-dir>wsdl</wsdl-dir>
<option name="force">true</option>
<option name="httpServerURL">http://localhost:8888</option>
</wsdl-gen>
<proxy-gen>
<proxy-dir>proxy</proxy-dir>
<option name="include-source">true</option>
</proxy-gen>
</web-service>
5.1.3 Save file as config.xml in the directory C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home\config
5.1.3.1 Note it should be config.xml and not config.txt
5.1.4 Close the text editor
5.2 Publish dbfunc Oracle Package as a Web Service
5.2.1 Open a new command prompt via the cmd.exe command
5.2.2 CD C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home
5.2.3 mkdir ear
5.2.4 CD ear
5.2.5 set ORACLE_HOME=C:\oracle\product\10.2.0\db_1\oc4j_extended_101330
5.2.6 set CLASSPATH=.;%ORACLE_HOME%\webservices\lib\wsdl.jar;%ORACLE_HOME%\lib\xmlparserv2.jar;%ORACLE_HOME%\soap\lib\soap.jar
5.2.7 java -jar %ORACLE_HOME%\webservices\lib\WebServicesAssembler.jar -config C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home\config\config.xml
Please wait ...
STORE.DBFUNC
5.2.8 java -jar %ORACLE_HOME%\j2ee\home\admin_client.jar deployer:oc4j:localhost:23791 oc4jadmin oracle -deploy -file C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home\ear\dbfunc.ear -deploymentName dbfunc
08/03/21 17:46:23 Notification ==>Application Deployer for dbfunc COMPLETES. Operation time: 296 msecs
5.2.9 java -jar %ORACLE_HOME%\j2ee\home\admin_client.jar deployer:oc4j:localhost:23791 oc4jadmin oracle -bindWebApp -appname dbfunc -webModuleName dbfunc_web
5.2.10 java -jar %ORACLE_HOME%\j2ee\home\admin_client.jar deployer:oc4j:localhost:23791 oc4jadmin oracle -bindAllWebApps -appname dbfunc
5.2.11 Close this command prompt (type exit)
6. Test dbfunc Web Service
6.1 Restart OC4J
6.1.1 Open the command prompt you used to start OC4J in step 4.1.1/4.3.1
6.1.2 In the keyboard, hit Ctrl+C
6.1.2.1 Type "Y" and then hit Enter
08/03/21 18:02:51 Shutting down OC4J...
Terminate batch job (Y/N)? Y
6.1.2.2 Note that the command prompt should still be open
6.1.2.2.1 If you accidentally closed the command prompt just do the following
6.1.2.2.1.1 Do 4.1.1 to 4.2.2 and then proceed to 6.1.3
6.1.3 oc4j -start
Starting OC4J from C:\oracle\product\10.2.0\db_1\oc4j_extended_101330\j2ee\home...
08/03/21 18:07:57 Oracle Containers for J2EE 10g (10.1.3.3.0) initialized
6.1.4 Leave this command prompt open
6.2 Use the Web Service to "Order an Item"
6.2.1 Connect to Oracle using the user STORE and password STORE
6.2.2 select * from orders
6.2.2.1 Zero row should return
6.2.3 Open Internet Explorer
6.2.4 Navigate to http://localhost:8888/plsqlsample/dbfunc
6.2.5 Input the following :
6.2.5.1 param0 value: 1
6.2.5.2 param1 value: 1
6.2.5.3 param2 value: 10
6.2.6 Click the Invoke button
6.2.7 A pop-up window will appear having the following contents :
<?xml version="1.0" encoding="UTF-8" ?>
- <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <SOAP-ENV:Body>
- <ns1:placeOrderResponse xmlns:ns1="http://db.func.place.order/dbfunc.wsdl" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<return xsi:type="xsd:string">Order placed with id of 1</return>
</ns1:placeOrderResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
6.2.8 Go back to SQLPLUS or Toad and execute "select * from orders" again
6.2.8.1 There should be one row
ORDER_ID, PRODUCT_ID, CUSTOMER_ID, QUANTITY
1, 1, 1, 10
NOTES AND REFERENCES
=================================================================
This detailed step-by-step guide was produced with the following article by Jason Price http://www.oracle.com/technology/pub/articles/price_10gws.htmlSuccess!!!
I had to grant this permissions:
call dbms_java.grant_permission( 'WS_TEST', 'SYS:java.lang.RuntimePermission', 'getClassLoader', '' );
call dbms_java.grant_permission( 'WS_TEST', 'SYS:java.lang.RuntimePermission', 'accessClassInPackage.sun.util.calendar', '' );
call dbms_java.grant_permission( 'WS_TEST', 'SYS:java.lang.RuntimePermission', 'setFactory', '' )
call dbms_java.grant_permission( 'WS_TEST', 'SYS:java.util.PropertyPermission', 'HTTPClient.socket.idleTimeout', 'write' );
call dbms_java.grant_permission( 'WS_TEST', 'SYS:java.net.SocketPermission', 'localhost', 'resolve' );
call dbms_java.grant_permission( 'WS_TEST', 'SYS:java.net.SocketPermission', '127.0.0.1:8084', 'connect,resolve' );
As I wrote earlier, WS_TEST is my user into which I load JAX-RPC client. Note that, if you load JAX-RPC client into user another than SYS, you have NOT to use -s -grant public option (wassam wrote about this too). Another thing is that I (finally) didn't load OC4J. To consume WebService I use utl_dbws.invoke(call_Handle CALL, request SYS.XMLTYPE) function.
voytec001 -
Steps required to enable webservice calls in SAP ECC 6.0
Hi Friends,
I'm working on XI, more on part of webservices and as I dont have a good knowledge on BASIS part, I would like to know the steps required to enable the webservice calls in SAP ECC 6.0.
Blogs/documents could be helpful.
Thanks in advanceduplicate thread
[Required infrastructure to enable web service calls in SAP ECC 6.0 system; -
TREX - search via webservice call
Hi All,
We would like to access the trex functionality to search in the ECC DMS (Document Management System) via a webservice call.
I could not yet find any standard defined webservices for this purpose.
Can anyone tell me whether what I'm searching for exists?
Kind regards
JorisHi Joris,
there are Webservice APIs on the level of EP-KM (here called IMS for "index management services") and on the level of SAP NetWeaver Enterprise Search. The TREX engine itself does not expose any APIs for project development.
Best, Karsten -
Hi all,
Has anyone worked on Inspire. I am working on a typical scenario integration on primavera with PS.
But when I do start sync I get " could not start Synch. Error during webservice call"
When I check Sender SOAP CC in SAP PI in RWB , I get no information. It's status is green and no logs. Also SXMB_moni has no logs.
Is there a problem with my Sender SOAP CC confihuration .or application has failed
Can anyone help me on this.
Regards,Hi,
I tried to reach the URL using SOAPUI but got the following error :
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<SOAP:Fault>
<faultcode>SOAP:Server</faultcode>
<faultstring>Server Error</faultstring>
<detail>
<s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
<context>XIAdapter</context>
<code>ADAPTER.JAVA_EXCEPTION</code>
<text>com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Application:STREAM_TRANSFORMATION_EX:
at com.sap.aii.adapter.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:1193)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:46)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:71)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:38)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:22)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:189)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:16)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:21)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:16)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:133)
at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164)
at $Proxy1413.process(Unknown Source)
at com.sap.aii.af.app.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:287)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:46)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:71)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:38)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:22)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:189)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:16)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:21)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:16)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)
at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:133)
at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164)
at $Proxy788.process(Unknown Source)
at com.sap.aii.adapter.soap.web.MessageServlet.callModuleProcessor(MessageServlet.java:187)
at com.sap.aii.adapter.soap.web.MessageServlet.doPost(MessageServlet.java:513)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:162)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:81)
at com.sap.engine.services.servlets_jsp.server.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:124)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:73)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:468)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:298)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:399)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:388)
at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:48)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:84)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:244)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:78)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:43)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:42)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:428)
at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:247)
at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:45)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:327)</text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
What could be the issue. Plz help -
Error:RCVR_DETERMINATION" NO_RECEIVER_CASE_BE
hi all,
In my soap-xi-rfc scenario this is the error i am getting in MONI when using .wsdl file from EP
<i><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>N</SAP:Retry>
</SAP:Error></i>
but when i am testing the same data from HTTP client it is working fine.
I have deleted the receiver determination and interface determination and created again,but the error continues.
Also in MONI in the message list i can see the sender interface but i am not able to see the receiver system and interface
Can anyone help me out with this??
thanks and regards,
NisheetaHi,
Check the trace in SXMB_MONI, and refresh cache.
Check you configred the determinations correctly or not,
check the receiver interfaces also in IR.
Please compare the entries in IB directory (receiver determination) with entries in Monitoring (SXMB_MONI): Service, Interface, Namespace
also see the below links
RCVR_DETERMINATION">NO_RECEIVER_CASE_BE
Consume a Web Service: No receiver could be determined
Regards
Chilla
<i>reward points if it is helpful..</i> -
BRM Webservice call from BPM as an automated activity in CE 7.2
Dear All,
A simple BRM ruleset is created and published as a webservice. The WSDL is available at NWA ->SOA Management-> Application and Scenario Communication-> Single Service Administration.
The webservice test in WSNAVIGATOR provides the expected results.
In the BPM process flow, an automated activity has been created for the webservice call. This activity contains the 'Service Interface' and 'Service Reference' of the imported WSDL.
Issue:
When the process is started, the BRM webservice call results in error. The error is not visible in the log but the process flow shows a green symbol on the automatic activity, thereby indicating that the webservice call does not end and the process remains in 'In progress' state.
Can you please provide your inputs?
Thanks,
PritishDear All,
The issue is resolved with the help of following document.
http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/9009be68-1e9a-2c10-fd91-8f5fcb00474c.
Regards,
Pritish -
Regarding Connection Time Out issue in Webservice call to database.
Hi,
We are facing one issue with the webservices call to DB and ILOG. We are declaring and executing the webservice in the following way-
//Request Object
EDP.ILog.PEWM_EXPDOC_Help_Information_ProxyService.DecisionServiceRequest helpRequest = EDP.ILog.PEWM_EXPDOC_Help_Information_ProxyService.DecisionServiceRequest();
//Response Object
EDP.ILog.PEWM_EXPDOC_Help_Information_ProxyService.DecisionServiceResponse helpResponse = EDP.ILog.PEWM_EXPDOC_Help_Information_ProxyService.DecisionServiceResponse();
//Proxy Service Object Initialisation
DecisionServicePEWM_EXPDOC_Help_InformationService helpService = DecisionServicePEWM_EXPDOC_Help_InformationService();
helpService.executeDecisionService(parameters : helpRequest, out parametersOutput : helpResponse);
All the webservices are configured corectly in External Resources of Process Administrator. Now, the issue is that whenever we are trying to execute the service with good amount of load on OBPM Process Admin Engine, it is throwing the following exception-
"Exception:java.net.ConnectException: Connection timed out: connect"
We are unable to find the root cause of the issue as the webservices call is still throwing the above exception.
Please provide some resolution as soon as possible.
Thanks in advance,
AbhishekJust to be sure, we're talking about a client process in BPM accessing an ILOG web service or a DB web service, right? Is this DB web service something custom built?
Be aware that certain things can run inside the workspace and not the engine. You almost have to work at making this happen. The easiest way is to make this happen is to invoke a BPM object method from within a BPM object presentation or JSP. If you do have this situation open the BPM object method and click on properties and check the box run on server side.
I can't think of anything that wouldn't scale for connections to Web Services in an engine. I'd be looking at tuning your ILog Web services. Perhaps it can't keep up and the engine gets a timeout. How often does this happen? The engine should retry the automatic until is works. But it tries 3 or so times, it gives up. This retry is configurable.
HTH,
Mark -
Webservice call to IDOC can be synchronous ?
Hi Friends ,
I would like to use XI exposed Webservice Call to SO create IDOC.Can we get the response as SO Number . As i know that IDOC is asynchronous but is there anyother way to make in synchronous ?
I have tried with BAPI it is working fine . But we need to work with IDOC as synchronus . Any input will be appreciated .
Thanks.,
V.Rangarajanhi,
you can check the idoc creation and acknowledgments using Ale audit.
You have to use bpm for your scenario Since Idocs are always Asynchronous.
For Ale Audits you can see :
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/f6d2d790-0201-0010-9382-b50b499b3fbe
/people/mitesh.parekh/blog/2008/12/01/receiving-aleaud-as-acknowledgment-in-ccbpm
regards,
ujjwal kumar -
Hi All,
I’m having a hard time figuring out how to make Rest WebService calls.
I tried executing this directly through browser and I get an error.
http:localhost:8080/rest/bean/atg/userprofiling/ProfileServices/loginUser?arg1=[email protected]&arg2=Password
13:18:20,613 ERROR [RestSecurityServlet] Error code: 401
Access to the requested resource is not allowed: /atg/userprofiling/ProfileServices
atg.rest.RestException: Access to the requested resource is not allowed: /atg/userprofiling/ProfileServices
at atg.rest.processor.RestSecurityProcessor.checkAccess(RestSecurityProcessor.java:546)
at atg.rest.processor.RestSecurityProcessor.handleGetRequest(RestSecurityProcessor.java:313)
at atg.rest.processor.RestSecurityProcessor.doRESTGet(RestSecurityProcessor.java:199)
at atg.rest.servlet.RestPipelineServlet.serviceRESTRequest(RestPipelineServlet.java:417)
at atg.rest.servlet.RestPipelineServlet.service(RestPipelineServlet.java:260)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.PipelineableServletImpl.service(PipelineableServletImpl.java:320)
at atg.rest.servlet.RestPipelineServlet.service(RestPipelineServlet.java:264)
at atg.rest.servlet.HeadRestServlet.service(HeadRestServlet.java:130)
at atg.servlet.pipeline.PipelineableServletImpl.service(PipelineableServletImpl.java:267)
From the documentation I understand that I need to create a session, is the session only necessary to access secured components since this
particular method “ProfileServices.loginUser “ has been declared as not secure in restSecurityConfiguration.xml
Also, are there two different ways in which I can log in
1. Using RestSession.createSession providing the username and password.
2. Or using ProfileServices.loginUser or ProfileFormHandler
Can someone please clarifyIf you are invoking the REST web-service from a Java client then you can create a RestSession object using the createSession method. But in your case you seem to be invoking it with a HTTP request which by default would be treated as a GET request by ATG's REST implementation. Therefore being a GET, it would try to fetch a property "loginUser" from /atg/userprofiling/ProfileServices component (based on your URL) which would always fail.
To invoke loginUser() method of ProfileServices with your passed argument you need to tell ATG's REST system to treat your incoming request not as GET but as a POST request which you can do using atg-rest-http-method control parameter in your request like this
http:localhost:8080/rest/bean/atg/userprofiling/ProfileServices/loginUser?arg1=[email protected]&arg2=Password&atg-rest-http-method=POST
It should work this way provided your restSecurityConfiguration.xml is proper. -
Hi all,
I like to ask if someone has ever get or heard from this
error (or may help me to discuss how would be the best way to fix
it). Also please note that the error didn´t occure when I used
Flexbuilder 2.01 Hotfix 2 and the Flashplayer 9.0.47.
The error just occured in myapp when I make a webservice call
which response message includes a array of parameters.
There is one workaround in the WSDL definition of the
parameters, cause the WSDL contains at this place a <choice>
tag, which is just partial supported by FLEX. The workaround for
this is to use an own wsdl for the flex client where the including
tags use attributes for minOccurs="0" maxOccurs="1" .
The console window from FB3 shows (beneath some hundred stack
entries) the following error:
VerifyError: Error #1068: iwp.myapp.searchform.MySearchForm
and iwp.myapp.searchform.MySearchForm cannot be reconciled.
at
iwp.myapp.searchform::MySearchForm/getSearchFormResultHandler()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.rpc::AbstractOperation/
http://www.adobe.com/2006/flex/mx/internal::dispatchRpcEvent()[E:\dev\flex\sdk\frameworks\ projects\rpc\src\mx\rpc\AbstractOperation.as:196
at mx.rpc::AbstractInvoker/
http://www.adobe.com/2006/flex/mx/internal::resultHandler()[E:\dev\flex\sdk\frameworks\pro jects\rpc\src\mx\rpc\AbstractInvoker.as:198
at
mx.rpc::Responder/result()[E:\dev\flex\sdk\frameworks\projects\rpc\src\mx\rpc\Responder.a s:48]
at
mx.rpc::AsyncRequest/acknowledge()[E:\dev\flex\sdk\frameworks\projects\rpc\src\mx\rpc\Asy ncRequest.as:81]
at
DirectHTTPMessageResponder/completeHandler()[E:\dev\flex\sdk\frameworks\projects\rpc\src\ mx\messaging\channels\DirectHTTPChannel.as:387]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()
I really appreciated if somone could help me with this or has
an idea how I can go on.
( one Question Is there a way to get the "open source"
sourcecode before FB3 is released?)
best regards
kcellHi all,
today I found the reason for the crash, whcih occure when my
app called the webservice function in the new flashplayer 9.0.115).
The reason was that in the ResultHandler-function of the
webservice call there were nested "switch" conditions used and in
two of the "case" branches a "break;" missed. So the problem could
easily be fixed, but I just want to inform people if the got a
similar problem they should try to start the problem with "empty"
Result/Fault Handler functions.
( the old version (9.0.47) seems to be more robust against a
missing "break;" , but for sure have other leaks and of course
features)
so kepp on flexing ;)
best regards,
kcell -
Lov Webservice called multiple times instead of once
Hi,
I am having a LOV which is being populated by a webservice call.
I have attached this LOV to a view object attribute.
Binded this attribute to a UI(Combo list of values) and when I pick the value from LOV, it fires a
webservice call and fetches data.
When I select a particular value from the list of values, it again fires the webservice call twice.
Can some one advice me on how I can avoid the second and third calls to the webservice being made.
I want the call to be made only once.
Also is there any method in the VOImpl which can help me change this behavior when overriden.
Thanks,
Malathy.One possible solution is store the LOV values in some scope while retrieving it first time from the web service.
Next time whenever LOV is called then return the LOV values from the scope instead of calling the web service.
psedo code:
if (ADFContext.getCurrent() != null &&
ADFContext.getCurrent().getSessionScope().containsKey("LOV_LIST")) {
LOVList =
(List<SelectItem>)ADFContext.getCurrent().getSessionScope().get("LOV_LIST");
} else {
LOVList = this.populateVendorListFromWS();
ADFContext.getCurrent().getSessionScope().put("LOV_LIST",
LOVList );
}Hope it helps. -
XMII 12.x Can you get the Server's Time Zone from a webservice call?
Is there a MII / NW webservice call to get the server's time zone?
After thinking about it a little my best approach was just a simple JSP page, because I really was more intersted in the servers GMT offset.
<%@page import="java.util.*" %>
<%
Calendar myCalendar = new GregorianCalendar();
int gmtOffset = (myCalendar.get(Calendar.ZONE_OFFSET) + myCalendar.get(Calendar.DST_OFFSET))/(1000 * 3600);
%>
<%=gmtOffset %>
Maybe you are looking for
-
Accounting Document for New Movement Type
Good day! Here's the scenario: I have created a new movement type in SPRO. I just copied from the existing movement type closely related to what I wanted to create. I executed the transaction in MB1C and it went well and generated a Material Document
-
Hi everybody! i have any problem about report sale. I sale for customer 5 boxes, each box store 100 Items. I want to report in sale analysis with quality is 500 Items. General, Just system show me quality is 5 boxes. Can you help me treat this proble
-
What is the equivalent to wwv_corners in portal 10g?
Hi, I'm migrating some pl/sql applications from portal 8i to 10 g, and I've found that the wwv_corners is gone in 10g. what happened? how come I cannot find anything on the documentation about this inner hidden database objects? Does anyone know wher
-
I need to update my imac g5 from os x 10.4.11 to os x 10.5
can any1 help me find a free download of os x 10.5. I'm using 10.4.11 on an imac g5 powerpc
-
ive got this problem with itouch 4th gen when im trying to upgrade my ios to ios 6.1.3 when it is verifying it suddenly shutdown and it keeos on blinking with the logo and i cannot open it...what is the main cause of thst..tnx