Webservice through PI
Hi,
Can you please help me in understanding the concept of publishing thwe webservices through PI?
Also,please suggest me the blogs mentioning
Thanks in advance
Simple... If PI wants to consume webservices of third party, we dont publish the web service in the service registry. We simple create scenario using SOAP adaper (Receiver) and consume web service. In this case, we import WSDL of third party and use as receiver or target data structure. In configuration level, use soap adapter and specify the WSDL url and action in the comm channel.
If PI needs to host web service for others to consume then we basically use SOAP sender and create WSDL. Also in this case we publish the web service in the service registry. Hope that helps.
Have you seen this [link |http://www.riyaz.net/blog/pi-71-publishing-service-interface-as-a-webservice-in-sr/technology/sap/527/]for publishing the service interface in registry?
Similar Messages
-
Error while consuming PLSQL Webservice through BPEL
HI ,
I have created a simple PLSQL Web service called "HelloWorld" and it got successfully deployed .
When I tried to test this webservice through BPEL Process Manager , its showing me error everytime that ( Could not create object of class 'dimple.HelloWorldWebServiceUser'; nested exception is: java.lang.ClassNotFoundException: dimple.HelloWorldWebServiceUser</summary> ) .
Please anyone help me out with this problem .
Thanks
Prashant DwivediHI ,
I have created a simple PLSQL Web service called "HelloWorld" and it got successfully deployed .
When I tried to test this webservice through BPEL Process Manager , its showing me error everytime that ( Could not create object of class 'dimple.HelloWorldWebServiceUser'; nested exception is: java.lang.ClassNotFoundException: dimple.HelloWorldWebServiceUser</summary> ) .
Please anyone help me out with this problem .
Thanks
Prashant Dwivedi -
Webservice through an exception -- SAP XI namespace is missing in XML
Hello Experts,
we have a HTTP(synchron) --> XI --> SOAP (synchron) ---> XI --> HTTP Scenario.
A webapplicaton sends a number to XI. XI sends the number (integrationprocess) to a webservice an gets same information back. This information will be send back to the
webapplication.
In same cases the webservices through an exception (it's okay, depend on date).
But XI can't read this XML because one namespace is missing.
The webservice sends the XML correctly. We have tested it.
It seems inside XI one namespace of the XML will lost.
We can't see the reason for it.
An Application Fault Exception is thrown in XI
In the RWB we see this: SOAP: response message contains an error Application/UNKNOWN/APPLICATION_ERROR - application fault
The soap communication channel has an error.
We try to arise the severity of the tracelevel to see more information, but without success.
So we don't find any information for this error.
Do you know this problem?
Thanks in advance!
JürgenHi
for namespaing mssing see the below blogs
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/01a57f0b-0501-0010-3ca9-d2ea3bb983c1
http://www.troobloo.com/tech/xslt.toc.shtml
http://www.w3schools.com/xsl/
http://www.w3.org/TR/xslt
http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/frameset.htm
https://sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/xi-code-samples/generic%20xslt%20mapping%20in%20sap%20xi%2c%20part%20i.pdf
/people/anish.abraham2/blog/2005/12/22/file-to-multiple-idocs-xslt-mapping
Required XSLT Mapping tips!
Thnaks
sudhir sharma -
Problem invoking XI webservice through webdynpro
We have created a webservice on XI that calls the BAPI_COMPANYCODE_GETLIST on an R/3 4.6C system. We generated the WSDL using the Integration builder and corrected the URL to point to the webservice (rather than the wizard proposed URL).
We can call the webservice through XMLspy and other tools. But we are not able to use webdynpro to invoke the webservice. We uploaded the webservice on the web application server so we can get to it through a URL.
The problem is that when we use webdynpro and try to link it to a webservice, we can point to the URL which is for the WSDL we uploaded to the webserver. But there is no other field in webdynpro to specify the URL for the webservice endpoint. The endpoint is actually in the WSDL and it seems correct:
http://servername:50000/XISOAPAdapter/MessageServlet?channel=:BS_EXTERNALAPP:BAPI_COMPANYCODE_GETLIST_WEBSERVICE_SOAP_SENDER;version=3.0;Sender.Service=BS_EXTERNALAPP;Interface=http://xyz.com/xi_demo/BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI
Through XMLspy we can just point to the WSDL. And then we can just specify the username and password and it runs. But with webdynpro, we are not able to invoke it.
Any ideas what we can do?
Here is the WSDL below:
Thanks,
Jay
<?xml version="1.0" encoding="ISO-8859-1"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:rfc="urn:sap-com:document:sap:rfc:functions" xmlns:p1="http://xyz.com/xi/xi_demo" name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI" targetNamespace="http://xyz.com/xi/xi_demo">
<wsdl:types>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:sap-com:document:sap:rfc:functions" targetNamespace="urn:sap-com:document:sap:rfc:functions">
<xsd:element name="BAPI_COMPANYCODE_GETLIST.Response">
<xsd:complexType>
<xsd:all>
<xsd:element name="RETURN" type="BAPIRETURN" minOccurs="0"/>
<xsd:element name="COMPANYCODE_LIST">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="item" type="BAPI0002_1" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="BAPI_COMPANYCODE_GETLIST">
<xsd:complexType>
<xsd:all>
<xsd:element name="COMPANYCODE_LIST">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="item" type="BAPI0002_1" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="BAPI0002_1">
<xsd:sequence>
<xsd:element name="COMP_CODE" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="COMP_NAME" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="25"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="BAPIRETURN">
<xsd:sequence>
<xsd:element name="TYPE" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CODE" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="5"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="MESSAGE" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="220"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LOG_NO" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LOG_MSG_NO" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="6"/>
<xsd:pattern value="\d+"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="MESSAGE_V1" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="MESSAGE_V2" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="MESSAGE_V3" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="MESSAGE_V4" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="rfc.BAPI_COMPANYCODE_GETLIST.Input">
<wsdl:part name="parameters" element="rfc:BAPI_COMPANYCODE_GETLIST"/>
</wsdl:message>
<wsdl:message name="rfc.BAPI_COMPANYCODE_GETLIST.Output">
<wsdl:part name="parameters" element="rfc:BAPI_COMPANYCODE_GETLIST.Response"/>
</wsdl:message>
<wsdl:portType name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI">
<wsdl:operation name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI">
<wsdl:input message="p1:rfc.BAPI_COMPANYCODE_GETLIST.Input"/>
<wsdl:output message="p1:rfc.BAPI_COMPANYCODE_GETLIST.Output"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MIBinding" type="p1:BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI">
<soap:binding xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI">
<soap:operation xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" soapAction="http://sap.com/xi/WebService/soap1.1"/>
<wsdl:input>
<soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MIService">
<wsdl:port name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MIPort" binding="p1:BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MIBinding">
<soap:address location="http://servername:50000/XISOAPAdapter/MessageServlet?channel=:BS_EXTERNALAPP:BAPI_COMPANYCODE_GETLIST_WEBSERVICE_SOAP_SENDER&version=3.0&Sender.Service=BS_EXTERNALAPP&Interface=http%3A%2F%2Fxyz.com%2Fxi%2Fxi_demo%5EBAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>When i try to make the call through Test Data service in Visual composer, i get the error: "Portal request failed (Could not execute Web service operation)". This happens regardless of whether we supply input values for Comp Code and Comp Name.
So Visual composer is reading the WSDL and showing the input parameters correctly. The link for the WSDL needs the same authentication user and pwd as the actual webservice invocation link which is in the WSDL.
So i am not sure why the call is failing because it works easily through XMLspy.
- Jay -
Invoke 3rdparty webservice through XI as sender
Hi,
In our scenario, We need to invoke a 3rd party webservice through PI and then send the data to R/3 system. Once get the reponse from R/3 again we need to send back the response to 3rd party webservices. (synchro scenario)
Could you help me understand "how to invoke 3rd party webservice through PI as sender system and send the data to R/3 and send back the response from R/3 to 3rd party webservice"
Also please let me know if there any examples/links for the above scenario.
Thanks in Advance,
Regards,
NagaCould you help me understand "how to invoke 3rd party webservice through PI as sender system and send the data to R/3
and send back the response from R/3 to 3rd party webservice"
Yours is a SOAP <> XI <> RFC/ PROXY sync scenario.
Also please let me know if there any examples/links for the above scenario.
Yes there would be references (wiki, blog, article) on SDN....just make a search.
Regards,
Abhishek. -
Retrieve Data from the Webservice through Data connection in Adobe Form
hi
i done Student ejb application
i.e, Create,Update,Retrieve,Delete operation. I create the WebServices to these operations. Present i connect the webservice through data connection . create operation is done successfully, but i dont know how to retrieve the the student details through data connection. how i can bind the retrieve values to the table in adobe form .how to bind from webservices to adobe form without context node.I had the same problem in SAP B1 2007. Report worked fine except when it was open from B1. Generally there may be different problems. In my case the same problem was caused by using some procedure which was in a specific schema. Changing the schema into "dbo" solved the problem.
Radoslaw Blaniarz -
Getting error response while trying to access REST webservice through Powerbuilder
Hi Team,
I am trying to access a rest webservice through powerbuilder 12.5(.net).The rest webservice is secured through basic authentication.I am passing the userid and password through powerbuilder to acess the service,But its returning an error .But while i am trying to accss the same REST webservice through SOAPUI, i am able to get the response.
Please find the below line of code which i have written in powerbuilder.
p_testcleint2 lp_rest
string ls_string
lp_rest=create p_testcleint2
PBWebHttp.WebClientCredential lsCredential //configure credentials
lsCredential = create PBWebHttp.WebClientCredential
lsCredential.AccessAuthentication = PBWebHttp.AuthenticationMode.Basic!
lsCredential.Password='Pa$$word1!'
lsCredential.Username='admin'
lp_rest.restConnectionObject.ClientCredential = lsCredential //add credentials to connection
try
lp_rest.PostMessage()
catch (System.Exception ee)
messagebox("Failure",string(ee.Message))
end try
Error i am getting as below :
The remote server returned an error:(401) unauthorized.
Can you please let me know why this error is coming or do i need to any extra paramert in the lsCredential to handle this.
Thanks in advance.
Regards
SubratHi Chris,
Thanks for the reply.
Yes i checked -in fiddler, the basic authentication request is not generating in the fiddler.
In the same Rest service if i turned off the basic authentication then call is happening in Powerbuilder and its displaying in fiddler also.
Regards
Subrat -
Using Webservice through RFC Func Mod Can I able to fill dropdown field
Hi,
I am going to develop offline interactive form using Webservice through RFC Function module.
There are dropdown list fields in my adobe form. Then how can I able to fill these dropdown fields in my form, I mean how to bind the values to dropdown fields.
Thanks & Regards,
nspkumar.Hi,
Option 1:
If the form is designed in transaction SFP, which has a form interface (transaction SFI), then below solution will work:
For example consider the data node name as 'COUNTRY' . Select drop down UI element and go to 'Object' properties tab. Select 'Binding' tab, on the top right hand side of this tab there is small icon, select the icon and enable the option 'Show Dynamic Properties'. Once this option is enabled in the 'Binding' tab you can click on the link 'Specify Item Values'. A popup will open, here specify the binding value as
$record.sap-vhlist.COUNTRY.item[*]
Refer to link:
[Drop down list binding|http://help.sap.com/erp2005_ehp_06/helpdata/en/43/7a667df4ad6fc9e10000000a1553f6/frameset.htm]
Option 2:
If the data connection is directly to the webservice then binding needs to be done similar to option 1 except one change. While binding the value in dynamic properties based on XML schema binding needs to be changed.
As you can see in option 1, for dynamic property binding
$record.sap-vhlist.COUNTRY.item[*]
, there is a value called sap-vhlist. This 'sap-vhlist' gets generated when form is designed in transaction SFP with form interface. So in your case if data connection is from webservice value sap-vhlist needs to changed to the value as per XML schema definition.
Regards
Srikanth KV -
Access webservices through SSL
HI!
I want to access webservices through SSL. I could config the SOA suite to connect to (for example) Enterprise Manager Console through SSL (https://localhost:4443/em), but when I want to try to access a webservice through SSL (https://bonus4:4443/CreditService/ValidateCreditCardServiceSoapHttp?wsdl), I get the next error:
404 Not Found
Resource /j2ee/CreditService/ValidateCreditCardServiceSoapHttp not found on this server
What can I config on SOA Suite(10.1.3.1.0) to use the webservices through SSL?
Thanks You very much, it would be a big help for me!
ViktorHello,
I would invite you to read this blog entry on the subject, it is using stand alone OC4J but the idea is the same using OracleHTTP Server:
- Using HTTPS with Web Services
Could you clarify if you are using OHS or OC4J HTTP server?
Regards
Tugdual Grall -
Call webservices through asp do net page
Anyone got an example of ASP.NET that will call a webservices configure for Oracle Weblogic 12c
I can install the web services on weblogic now need to test through a web page before handing off to the developers.
Can anyone help provide an example how to run the webservices through ASP.NET page?
CheersI believe you are at the wrong forum. However as far as I know like in Jdeveloper ASP has webservice proxy class so you can show wsdl and this will be your starting point.
-
Problem accessing JWS webservice through BPEL
Hi,
I have designed a small BPEL file with which I am trying to access through the BPEL console/a java application. I am getting the following error: -
<detail>
<bea_fault:stacktrace xmlns:bea_fault="http://www.bea.com/servers/wls70/webservice/fault/1.0.0" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">weblogic.wsee.codec.CodecException: Unable to find xml element for parameter: office
at weblogic.wsee.codec.soap11.SoapDecoder.checkNullElement(SoapDecoder.java:378)
at weblogic.wsee.codec.soap11.SoapDecoder.decodeParams(SoapDecoder.java:285)
at weblogic.wsee.codec.soap11.SoapDecoder.decodeParts(SoapDecoder.java:172)
at weblogic.wsee.codec.soap11.SoapDecoder.decode(SoapDecoder.java:125)
at weblogic.wsee.codec.soap11.SoapCodec.decode(SoapCodec.java:180)
at weblogic.wsee.ws.dispatch.server.CodecHandler.decode(CodecHandler.java:139)
at weblogic.wsee.ws.dispatch.server.CodecHandler.handleRequest(CodecHandler.java:40)
at weblogic.wsee.handler.HandlerIterator.handleRequest(HandlerIterator.java:141)
at weblogic.wsee.ws.dispatch.server.ServerDispatcher.dispatch(ServerDispatcher.java:114)
at weblogic.wsee.ws.WsSkel.invoke(WsSkel.java:80)
at weblogic.wsee.server.servlet.SoapProcessor.handlePost(SoapProcessor.java:66)
at weblogic.wsee.server.servlet.SoapProcessor.process(SoapProcessor.java:44)
at weblogic.wsee.server.servlet.BaseWSServlet$AuthorizedInvoke.run(BaseWSServlet.java:285)
at weblogic.wsee.server.servlet.BaseWSServlet.service(BaseWSServlet.java:169)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3498)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Unknown Source)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
</bea_fault:stacktrace>
</detail>
I have set the transaction-timeout accordingly in the following files: -
1) domain.xml
2) orion-ejb-jar.xml
3) transaction-manager.xml
Following is the excerpt from the service: - [I am using JWS annotations]
@WebService
@WLHttpTransport(portName="ResponsibleOfficeSoapPort", serviceUri = "ResponsibleOfficeService")
@WSDL(exposed=true)
@SOAPBinding(parameterStyle=SOAPBinding.ParameterStyle.WRAPPED)
public class ResponsibleOffice {
@WebMethod
public void addResponsibility(String office, String airline, String pRecordLocator) {
Responsibility aResponsibility = new Responsibility();
aResponsibility.setResponsibleOffice(office);
aResponsibility.setResponsibleAirline(airline);
Customer cus = new Customer();
cus.setRecordLocator(pRecordLocator);
cus.setReponsibility(aResponsibility);
ResponsibilityHelper.persist(cus);
Following the BPEL file: -
<?xml version = "1.0" encoding = "UTF-8" ?>
<!--
Oracle JDeveloper BPEL Designer
-->
<process name="TestBPEL" targetNamespace="http://xmlns.oracle.com/TestBPEL"
xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
xmlns:ns1="http://com/aaaa/webservices"
xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns3="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns2="java:com.aaaa.entities"
xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
xmlns:client="http://xmlns.oracle.com/TestBPEL"
xmlns:ora="http://schemas.oracle.com/xpath/extension"
xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc">
<!--
PARTNERLINKS
List of services participating in this BPEL process
-->
<partnerLinks>
<!--
The 'client' role represents the requester of this service. It is
used for callback. The location and correlation information associated
with the client role are automatically set using WS-Addressing.
-->
<partnerLink name="client" partnerLinkType="client:TestBPEL"
myRole="TestBPELProvider"/>
<partnerLink name="ResponsibleOfficeServiceDefinitions"
partnerLinkType="ns1:ResponsibleOffice_PL"
partnerRole="ResponsibleOffice_Role"/>
</partnerLinks>
<!--
VARIABLES
List of messages and XML documents used within this BPEL process
-->
<variables>
<!-- Reference to the message passed as input during initiation -->
<variable name="inputVariable" messageType="client:TestBPELRequestMessage"/>
<!-- Reference to the message that will be returned to the requester-->
<variable name="outputVariable"
messageType="client:TestBPELResponseMessage"/>
<variable name="Invoke_1_addResponsibility_InputVariable"
messageType="ns1:addResponsibility"/>
<variable name="Invoke_1_addResponsibility_OutputVariable"
messageType="ns1:addResponsibilityResponse"/>
</variables>
<!--
ORCHESTRATION LOGIC
Set of activities coordinating the flow of messages across the
services integrated within this business process
-->
<sequence name="main">
<!-- Receive input from requestor. (Note: This maps to operation defined in TestBPEL.wsdl) -->
<receive name="receiveInput" partnerLink="client" portType="client:TestBPEL"
operation="process" variable="inputVariable" createInstance="yes"/>
<!-- Generate reply to synchronous request -->
<invoke name="Invoke_1" partnerLink="ResponsibleOfficeServiceDefinitions"
portType="ns1:ResponsibleOffice" operation="addResponsibility"
inputVariable="Invoke_1_addResponsibility_InputVariable"
outputVariable="Invoke_1_addResponsibility_OutputVariable"/>
<assign name="Assign_1">
<bpelx:append>
<bpelx:from variable="outputVariable" part="payload"
query="/client:TestBPELProcessResponse"/>
<bpelx:to variable="Invoke_1_addResponsibility_OutputVariable"
part="parameters" query="/ns1:addResponsibilityResponse"/>
</bpelx:append>
</assign>
<reply name="replyOutput" partnerLink="client" portType="client:TestBPEL"
operation="process" variable="outputVariable"/>
</sequence>
</process>
[Info: - The Webservice is running on Weblogic 11]
Can someone please help on this?
Thanks.Your webservice seems to be throwing the error:
Unable to find xml element for parameter: officeLooking at your BPEL process, you are assigning nothing to the inputVariable of your Invoke block, Invoke_1_addResponsibility_InputVariable. This means you are not sending any value in the office XML element.
<sequence name="main">
<!-- Receive input from requestor. (Note: This maps to operation defined in TestBPEL.wsdl) -->
<receive name="receiveInput" partnerLink="client" portType="client:TestBPEL"
operation="process" variable="inputVariable" createInstance="yes"/>
<!-- Generate reply to synchronous request -->
<*invoke* name="Invoke_1" partnerLink="ResponsibleOfficeServiceDefinitions"
portType="ns1:ResponsibleOffice" operation="addResponsibility"
inputVariable="Invoke_1_addResponsibility_InputVariable"
outputVariable="Invoke_1_addResponsibility_OutputVariable"/>
You'll want to assign something to the variable before you invoke the servie. Otherwise, you just get the same result every time you run it.
When you do run your process from the BPEL console, you can look on the Flow tab for that instance. Doubleclick on the INVOKE block, and you will see the XML that got sent to your web service.
Andy -
How can I restrict a webservice through SRA by user
Hi,
currently, we have a webservice authenticating by IP. We are installing the JES Portal Server and SRA.
How can we continue authenticating the webservice by client IP, if the request pass through gateway SRA without modify the webservice.
The problem is, the webservice is not available for all users. Other solution can be restrict the access to the webservice to some users. How we can get restricted by user?
Thanks in advance for your answer.
Oscar ArmandoHow can we continue authenticating the webservice by
client IP, if the request pass through gateway SRA
without modify the webservice.You can not. If the request is going the SRA, then that is what your web app will think the client IP is.
The problem is, the webservice is not available for
all users. Other solution can be restrict the access
to the webservice to some users. How we can get
restricted by user?Sorry, again. The gateway service is only configurable globally. It can not be changed be user.
One suggestion would be to exclude this webservice from SRA, so that links to it are not rewritten, and requests for it do not go through SRA. Then, requests come directly from the client to the webservice, which properly authenticates by IP. Under the 'Rewriter' tab, add the webservice to the URI's not to rewrite box. -
Testing my WebService through WSADMIN I am getting java.rmi.RemoteException
Hello,
I am testing my WebService with name ZEDI_GET_TPDATA_WSD through WSADMIN. It opens the WebService Home Page.
Overe there I put my User Name and Password.
Then I click on Test. But when I click on Operations
"ZediGetTpdata (test.types.p1.ZediGetTpdata parameters)".
It gives me below error
Cannot find operation: wsdl = http://zhmscaqb.whirlpool.com:7992/sap/bc/srt/rfc/sap/ZEDI_GET_TPDATA_WSD?sap-client=800&wsdl=1.1, endpoint = ZEDI_GET_TPDATA_WSDSoapBinding, operation = public abstract test.types.p1.ZediGetTpdataResponse test.ZEDI_GET_TPDATA_WSD.zediGetTpdata(test.types.p1.ZediGetTpdata) throws java.rmi.RemoteException,test.ZediGetTpdataRfcException
Pls suggest.
Regardswhat is ZEDI_GET_TPDATA_WSD ?
is it a web service developed in java or is it a RFC exposed as a web service? -
R/3 call webservice through XI
We try to call web service from R/3 system through XI, and indeed planning to use ABAP Proxy to pass parameters from R/3 to XI.Web Server have already got its own wsdl for request & response.
Do we need any mapping for R/3 parameters to wsdl request format? Is SOAP adapter needed here?
How to make XI generate request in wsdl-defined format in this case?
ThanksHi Rokie,
<b>Do we need any mapping for R/3 parameters to wsdl request format? Is SOAP adapter needed here?</b>
Since ur scenario is <b>Proxy<->XI<->SOAP</b>.u can use the same data type/XSD as given in the WSDL.
i mean to say..u can use same data structure in sender and reciver side...in that case u need not require any mapping....
But if u want to use different srtucture...u need to do the transformation..so u have to go for mapping....
<b>How to make XI generate request in wsdl-defined format in this case?</b>
thats not difficult!!!
u need to write a report in R/3...which will trigger the proxy....proxy inturn will send the required data to webservice...and the webservice will give the response upon correct input.
regards
biplab -
Unable to successfuly test webservice through SOAP UI while the FM works
Hi,
We have recently upgraded to EHP6. We created a few function modules through which web services were created. Now when we test the FM's they work perfectly fine whereas some of the webservices are not responding correctly when being tested thriough an external tool: SOAP UI.
This particular issue is just persisting in case of only a few webservices whereas the others are working perfectly fine. After checking all the configuration seetings (though I am sure they are maintained correctly since some of the webservices are working fine) I have tried regenerating a new service and then going about testing the new wsdl file in SOAP UI but the output is same everytime. I also tried deactivating and reactivating the FM and then creating the wsdl out of the service but nothing seems to work.
How can I test my webservice in such a case and be sure of it to be working correctly?
Kindly help out with this issue.
Regards,
ShivangiHi Shivangi,
What precisely do you mean by the following?
some of the webservices are not responding correctly when being tested thriough an external tool: SOAP UI
Is it like you do not get any response from your web service, or an error response? Or you do receive a response, but it differs from what you get when testing the FM directly in ECC?
In the first case, make sure you have configured your web services correctly in SOAMANAGER (or WSCONFIG + LPCONFIG in case of lower system versions).
In case of the latter, make sure you use statements like "IS INITIAL" or "IS SUPPLIED" correctly, because input parameters may look somehow different in ECC when the FM is executed externally.
You might also want to put an external break point for the user that authorizes your external connections and debug the FM from there to see what's wrong. For this purpose, when displaying your FM, choose: Utilities -> Settings from the top menu, and in the window that appers, go to tab page ABAP Editor, sub-tab page Debugging and type a user for external debugging (it has to be a dialog user), then place an external break point in the code.
Hope this helps,
Greg
Maybe you are looking for
-
ABC Indicator field in PM MODULE
Hi gurus, I have a problem. I change a ABC Indicator value of Functional Locations to A via transaction IL02. However, when i get a report with transaction IW38, I dont see A value in ABC Indicator field in some of the Functional Locations. I am sure
-
I initially had my windows XP up and running. I sent my computer to apple to fix something. When it came back and I boot windows the trackpad won't work and even if I try to uninstall and reinstall it doesn't work. Any ideas?
-
Podcast feed image doesn't show up
Hi, I have two separate podcast image issues here: 1. I can't get the feed image of a new podcast to show up at all. The podcast has been showing up for a while now. How long does it take for the feed image to show up? Is there no maximum size for fe
-
Quicktime on a Web Page ActiveX
I cannot get this webpage to play Quicktime on Windows: http://www.lionsgatebethesda.com/virtualtour_quicktime.html Is there something I am missing in the code? Why on earth did Windows do that stupid ActiveX thing? -Kirk
-
Windows Explorer Preview pane does not work with .docx files
This question follows on from previously unresolved questions posted on this forum (see http://social.technet.microsoft.com/Forums/en-US/aec7b30a-0709-4d54-b5c7-570dc5b115df/preview-pane-and-windows-explorer?forum=officeitproprevious) and another for