Call proxy service from other proxy service with attachment

Hi!
I have got an email sending proxy service I would like to call this from an other proxy service and I want to send attachment in email. I can send email with attachment if i call this proxy as a webservice (e.g. from soapUI)
But if i want to call this email proxy service from other proxy service, the attachment in email is empty. I put a log action (expression: $attachments) in the beginning of email proxy service, and I saw this in the log file:
+<con:attachments xmlns:con="http://www.bea.com/wli/sb/context"/>+
So the attachment is really empty...
I use service callout. I put an insert action in request action of service callout:
In Variable:
attachments
XPath:
+.+
Location:
as first child of
Expression:
+<con:attachment xmlns:con="http://www.bea.com/wli/sb/context">+
+     <con:Content-Type>application/octet-stream</con:Content-Type>+
+     <con:Content-Disposition>attachment; filename="{$v_fileName}"</con:Content-Disposition>+
+     <con:Content-Transfer-Encoding>base64</con:Content-Transfer-Encoding>     +
+     <con:body>{$attachments/ctx:attachment/ctx:body/*}</con:body>+
+</con:attachment>+
Why cannot I call this email proxy service from other proxy service for sending email with attachment?
I tried to solve this other. I called an email sending business service from this proxy service. But in this case I cannot set the body of email. If I put just one Transport Header action in publish action, I could send the email (with empty body). But If I put a replace action in publish action as well then the OSB didn't send the email and I couldn't find any error message in log file... How could I set the body of email in publish action?
Thanks!
Viktor

You should be able to get the current user id from the SPListItemEventProperties object. From here you should be able to create a Claim. For example get the user by using
user = SPWeb.Users.GetByID(properties.CurrentUserId)
SPClaim claim = SPClaimProviderManager.CreateUserClaim(user.email, SPOriginalIssuerType.TrustedProvider, issuerIdentifier);
https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.claims.spclaimprovidermanager.createuserclaim(v=office.14).aspx
Blog | SharePoint Field Notes Dev Tools |
SPFastDeploy | SPRemoteAPIExplorer

Similar Messages

  • Calling another ITS service from existing ITS service

    Hi to Everyone,
    I would like your advice on calling another ITS service from existing ITS service.
    From my current ITS service eg. "Z_TESTA", i wish to call another ITS service "Z_TESTB". The problem is that it always prompt for userid and password when i called the 2nd ITS service. However, user already enter the password & id when they login to the 1st ITS service. Is there a way to call this new ITS service w/o the userid & password prompt again?
    Below is the codes that we used to call the new ITS service:
    (a) "http://.../scripts/wgate/webgui/!?~transaction=z_testb"
    OR
    (b) "http://.../scripts/wgate/z_testb/!"
    We used both method (a) and (b) but same outcome. Thank you in advance!
    YanaJ

    Hi YanaJ,
    in order to skip a manual login you have to have the credentials somewhere. If you disabled cookies, what I told you will not work. Another possibility would the usage of X509 client certificates. But this requires that you have a setup that distributes the certificates of all of your users. I personally nether setup such scenario. Maybe someone other can explain what you have to do.
    Best regards,
    Klaus

  • Canu00B4t call an EJB from other EJB

    Hi developers,
    I need do the next task :
    I have a EJB in an EAR and i need call some functionality from other EJB in diferent EAR , when execute the code show the next message error:
    java.rmi.RemoteException: com.sap.engine.services.ejb.exceptions.BaseRemoteException: Exception in method generaMDMOutput.
         at com.sapconsulting.customer.inc.CustomerIncObjectImpl0.generaMDMOutput(CustomerIncObjectImpl0.java:135)
         at com.sapconsulting.customer.inc.CustomerIncObjectImpl0p4_Skel.dispatch(CustomerIncObjectImpl0p4_Skel.java:127)
         at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java(Compiled Code))
         at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java(Inlined Compiled Code))
         at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java(Compiled Code))
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java(Compiled Code))
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java(Compiled Code))
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java(Compiled Code))
         at java.security.AccessController.doPrivileged1(Native Method)
         at java.security.AccessController.doPrivileged(AccessController.java(Compiled Code))
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java(Compiled Code))
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java(Compiled Code))
    Caused by: java.lang.ClassCastException: com.sap.engine.interfaces.cross.ObjectReferenceImpl
         at com.sapconsulting.customer.inc.CustomerIncBean.generaMDMOutput(CustomerIncBean.java:141)
         at com.sapconsulting.customer.inc.CustomerIncObjectImpl0.generaMDMOutput(CustomerIncObjectImpl0.java:119)
         ... 11 more
    the code to invoke the EJB is the next:
    ctx = new InitialContext();
    TestEJBLocalHome home = (TestEJBLocalHome) ctx.lookup("sap.com/TestEJB_ear/TestEJBBean");
                   TestEJB servicio=(TestEJB)home.create();
    the EJB are in the same server , please help,
    regards

    Hi Siarhei,
    thank's for your answers , i'll explain the scenario , i think i copied wrong the code that i have ,
    i have two EAR's applications , i want to call one EJB from the other EJB in other EAR , the call have to be remote , my code is the next :
    ctx = new InitialContext();
    Object obj = ctx.lookup("sap.com/TestEJB_ear/TestEJBBean");  
    TestEJBHome home = (TestEJBHome) PortableRemoteObject.narrow(obj,TestEJBHome.class);
    TestEJB servicio= home.create();
    i've confugured the ejb-xml.jar adding
    <ejb-ref>
    <ejb-ref-name>ejb/TestEJBBean</ejb-ref-name>
    <ejb-ref-type>Session</ejb-ref-type>
    <home>com.innovativesystems.onl.TestEJBHome</home>
    <remote>com.innovativesystems.onl.TestEJB</remote>
    </ejb-ref>
    I've configured the  ejb-j2ee-jar.xml adding
    <ejb-ref>
    <ejb-ref-name>ejb/TestEJBBean</ejb-ref-name>
    <jndi-name>sap.com/TestEJB_ear/TestEJBBean</jndi-name>
    </ejb-ref>
    I've configured the application-j2ee-engine.xml adding a hard reference
    <reference
    reference-type="hard">
    <reference-target
    provider-name="sap.com"
    target-type="application">TestEJB_ear</reference-target>
    </reference>
    with all this configuration still send me the message java.lang.classcast ,
    something is missing????  ,
    regards

  • Invoking one web service from another web service

    Hi there,
    I want to invoke a web service lets say X. But befor sending parameters to this web service, what i want to do is first pass the parameters to a web service called Y and Y will decide wether to call X or not. In other words i want to invoke a web service from another web service.
    Its kind of urget so do the needful asap.
    Thanks

    Calling another webservice from within a webservice does not require anything special. The service (say svc1) that calls another service (svc2) will be a web svc client. So you will have to do the same steps for svc1 as you would do for any other web service client

  • 3 iphones in household.All use same apple ID.But all contacts get mixed between phones and facetime calls come in from other contacts.Ho can we change this so our phone information isn't visible to each other?

    3 iphones in household.All use same apple ID.But all contacts get mixed between phones and facetime calls come in from other contacts.How can we change this so our phone information isn't visible to each other?

    Use separate Apple IDs for each family member and use Family Sharing features of those things (if any) that you do want to share. https://www.apple.com/ios/whats-new/family-sharing/

  • Problem accessing https Web service from behind proxy

    Hi all,
    I have this constant timeout issue which occurs whenever I try to access the Web service from behind a proxy.
    Find below the error logs -
    AxisFault
    faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
    faultSubcode:
    faultString: java.net.ConnectException: Connection timed out: connect
    faultActor:
    faultNode:
    faultDetail:
    {http://xml.apache.org/axis/}stackTrace:java.net.ConnectException: Connection timed out: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
    at java.net.Socket.connect(Socket.java:452)
    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:324)
    at org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:136)
    at org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:100)
    at org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:129)
    at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:389)
    at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:87)
    at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
    at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
    at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:144)
    at org.apache.axis.client.Call.invokeEngine(Call.java:2688)
    at org.apache.axis.client.Call.invoke(Call.java:2671)
    at org.apache.axis.client.Call.invoke(Call.java:2357)
    at org.apache.axis.client.Call.invoke(Call.java:2280)
    at org.apache.axis.client.Call.invoke(Call.java:1741)
    I am using Tomcat 5.0.19 . Could anyone suggest a possible solution to the same?
    The system works fine when I use a http endpoint.

    Hi,
    By default, your application tries to connect to the Net directly : if you have to specify a proxy, use either these lines in your code :
    System.setProperty("http.proxySet", "true");
    System.setProperty("http.proxyHost", "proxy");
    System.setProperty("http.proxyPort", "8080");
    Or specify them in the command line with the "-D"option.
    Ex : java .... -Dhttp.proxySet=true .... MyApp
    Hope it helps.
    See ya

  • How can i create proxy service from another proxy on different domain

    i have a demo webservice. it has many operations on proxy service's message flow. How can i create proxy service from demo's wsdl on different domain
    Edited by: fresh man on Jul 1, 2012 11:17 PM

    You can either export the WSDL in a sbconfig.jar and then import this sbconfig.jar in the new domain. Then you can create a new Proxy in new domain based on the WSDL you imported.
    Alternatively, you can open the WSDL in the old domain, copy the text content of WSDL, then open new domain sbconsole and create a new WSDL type resource and paste the content you copied from old domain WSDL here. Then you can create a new Proxy Service based on this WSDL resource you created.
    Although, may I ask why do you need to create this new Proxy Service on a different domain? If you want to create a service similar to existing Proxy Service on different domain, then you can export the existing proxy service along with any dependencies to a sbconfig.jar and them import them in any other domain.
    If you want your new Proxy Service to invoke the existing Proxy on different domain, then you need to create a Business Service in the new domain (calling domain) which can invoke your existing Proxy service in other domain.

  • How to pass username/password to BPEL web service from java proxy?

    Hi all,
    Environment : SOA Suite 11g
    I am using basic http authentication in my SOA services using "oracle/wss_http_token_client_policy" policy. Now i need to invoke these SOA web services from a java proxy.
    Please let me know how this can be done.
    Thanks in advance

    Have you tried the below posts ?
    BPEL to invoke Webservice secured with HTTP Basic authentication
    Invoke a BPEL process using HTTP Basic Authentication
    http://docs.oracle.com/cd/E21764_01/web.1111/e13713/owsm_appendix.htm#CHDBAHBI
    Thanks,
    Vijay

  • Calling web service from oracle forms fails with ORA_JAVA.JAVA_ERROR

    Problem Description:
    I'm following the steps as per the doc:
    http://www.oracle.com/technology/products/forms/htdocs/10gr2/howto/webservicefromforms/ws_10_1_3_from_forms.html
    to create a java stub to call external web service and then use java importer in oracle forms to call this web service from oracle forms.
    WSDL for external web service used is http://www.webservicex.net/CurrencyConverter.asmx?wsdl
    Calling the web service using JDeveloper works fine but from Oracle Forms returns ORA_JAVA.JAVA_ERROR; Unable to call out to Java, Invalid object type for argument 1
    The code from oracle form to call web service is as below:
    DECLARE
    jo ora_java.jobject;
    rv ora_java.jobject;
    ex ora_java.jobject;
    outString varchar2(2000);
    BEGIN
    jo:= CurrencyConvertorStub.new;
    --This will get the exchange rate from US Dollars to UK Sterling.
    rv:= CurrencyConvertorStub.ConversionRate(jo,'CAD','USD');
    message (float_.floatValue(RV));
    EXCEPTION
    WHEN ORA_JAVA.JAVA_ERROR then
    message('Unable to call out to Java, ' ||ORA_JAVA.LAST_ERROR);
    WHEN ORA_JAVA.EXCEPTION_THROWN then
    ex := ORA_JAVA.LAST_EXCEPTION;
    outString := Exception_.toString(ex);
    message(outString);
    END;
    Any help/ideas on this is greatly appreciated. Thanks.

    Yes, it is the message line - so basically this call fails => rv:= CurrencyConvertorStub.ConversionRate(jo,'CAD','USD'); and control goes in the exception block
    WHEN ORA_JAVA.JAVA_ERROR then
    message('Unable to call out to Java, ' ||ORA_JAVA.LAST_ERROR);
    Below is the code from java stub that was generated using JDeveloper by using web services stub/skeleton and associating the WSDL
    public Double ConversionRate(String FromCurrency, String ToCurrency) throws Exception
    URL endpointURL = new URL(endpoint);
    Envelope requestEnv = new Envelope();
    Body requestBody = new Body();
    Vector requestBodyEntries = new Vector();
    String wrappingName = "ConversionRate";
    String targetNamespace = "http://www.webserviceX.NET/";
    Vector requestData = new Vector();
    requestData.add(new Object[] {"FromCurrency", FromCurrency});
    requestData.add(new Object[] {"ToCurrency", ToCurrency});
    requestBodyEntries.addElement(toElement(wrappingName, targetNamespace, requestData));
    requestBody.setBodyEntries(requestBodyEntries);
    requestEnv.setBody(requestBody);
    Message msg = new Message();
    msg.setSOAPTransport(m_httpConnection);
    msg.send(endpointURL, "http://www.webserviceX.NET/ConversionRate", requestEnv);
    Envelope responseEnv = msg.receiveEnvelope();
    Body responseBody = responseEnv.getBody();
    Vector responseData = responseBody.getBodyEntries();
    return (Double)fromElement((Element)responseData.elementAt(0), java.lang.Double.class);
    }

  • Urgent: Calling web service from PL/SQl fails with XML parsing

    Hi,
    I am trying to call a web service from PL/SQL (using SOAP protocol and UTL_HTTP built in Package).I am using Oracle 9i .I am calling from pl/sql block invoking web service method created in java.
    I am getting the below response object as a SOAP protocol, but i couldn't able to parse the SOAP.
    Could you please provide the values of FirstName, LastName and ErrorDescription
    declare
    request_env varchar2(32767);
    v_xml XMLTYPE;
    l_user_first_name varchar2(100);
    l_user_last_name varchar2(100);
    l_error_value varchar2(100);
    begin
    response_env:='<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Body>
    <UserInfoObjResponse xmlns:axis2ns1="http://www.test.com/services">
    <axis2ns1:FirstName >First Name Output</axis2ns1:FirstName>
    <axis2ns1:LastName>Last Name Output</axis2ns1:LastName>
    <axis2ns1:ErrorDescription />
    </UserInfoObjResponse>
    </soapenv:Body>
    </soapenv:Envelope>';
    dbms_output.put_line('Length of Request:' || length(response_env));
    dbms_output.put_line ('Request: ' || response_env);
    v_xml := XMLTYPE(response_env);
    -- SELECT EXTRACTVALUE(v_xml, '//UserInfoObjResponse/FirstName') INTO l_user_fast_name varchar2(100); FROM DUAL;
    dbms_output.put_line ('l_user_first_name: ' || l_user_first_name);
    dbms_output.put_line ('l_user_last_name : ' || l_user_last_name);
    dbms_output.put_line ('l_error_value: ' || l_error_value);
    end;

    In Oracle 9i:
    SQL> declare
      2    response_env varchar2(32767);
      3    v_xml XMLTYPE;
      4    l_user_first_name varchar2(100);
      5    l_user_last_name varchar2(100);
      6    l_error_value varchar2(100);
      7  begin
      8    response_env:='<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
      9                     <soapenv:Body>
    10                       <UserInfoObjResponse xmlns:axis2ns1="http://www.test.com/services">
    11                         <axis2ns1:FirstName >First Name Output</axis2ns1:FirstName>
    12                         <axis2ns1:LastName>Last Name Output</axis2ns1:LastName>
    13                         <axis2ns1:ErrorDescription />
    14                       </UserInfoObjResponse>
    15                     </soapenv:Body>
    16                   </soapenv:Envelope>';
    17
    18    dbms_output.put_line('Length of Request:' || length(response_env));
    19  --  dbms_output.put_line ('Request: ' || response_env);
    20
    21    v_xml := XMLTYPE(response_env);
    22
    23    select EXTRACTVALUE(v_xml,'/*:Envelope/*:Body/*:UserInfoObjResponse/*:FirstName/text()') first_name,
    24           EXTRACTVALUE(v_xml,'/*:Envelope/*:Body/*:UserInfoObjResponse/*:LastName/text()') last_name,
    25           EXTRACTVALUE(v_xml,'/*:Envelope/*:Body/*:UserInfoObjResponse/*:ErrorDescription/text()') error_description
    26      into l_user_first_name, l_user_last_name, l_error_value
    27      from dual;
    28
    29    dbms_output.put_line ('l_user_first_name: ' || l_user_first_name);
    30    dbms_output.put_line ('l_user_last_name : ' || l_user_last_name);
    31    dbms_output.put_line ('l_error_value: ' || l_error_value);
    32  end;
    33  /
    Length of Request:530
    l_user_first_name: First Name Output
    l_user_last_name : Last Name Output
    l_error_value:
    PL/SQL procedure successfully completed.In Oracle 10g:
    SQL> declare
      2    response_env varchar2(32767);
      3    v_xml XMLTYPE;
      4    l_user_first_name varchar2(100);
      5    l_user_last_name varchar2(100);
      6    l_error_value varchar2(100);
      7  begin
      8    response_env:='<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
      9                     <soapenv:Body>
    10                       <UserInfoObjResponse xmlns:axis2ns1="http://www.test.com/services">
    11                         <axis2ns1:FirstName >First Name Output</axis2ns1:FirstName>
    12                         <axis2ns1:LastName>Last Name Output</axis2ns1:LastName>
    13                         <axis2ns1:ErrorDescription />
    14                       </UserInfoObjResponse>
    15                     </soapenv:Body>
    16                   </soapenv:Envelope>';
    17
    18    dbms_output.put_line('Length of Request:' || length(response_env));
    19  --  dbms_output.put_line ('Request: ' || response_env);
    20
    21    v_xml := XMLTYPE(response_env);
    22
    23    select r.*
    24      into l_user_first_name, l_user_last_name, l_error_value
    25    from XMLTABLE('/' PASSING v_xml
    26                  COLUMNS
    27                  first_name varchar2(30) PATH '/*:Envelope/*:Body/*:UserInfoObjResponse/*:FirstName/text()',
    28                  last_name varchar2(30) PATH '/*:Envelope/*:Body/*:UserInfoObjResponse/*:LastName/text()',
    29                  error_description varchar2(30) PATH '/*:Envelope/*:Body/*:UserInfoObjResponse/*:ErrorDescrition/text()'
    30                  ) r;
    31
    32    dbms_output.put_line ('l_user_first_name: ' || l_user_first_name);
    33    dbms_output.put_line ('l_user_last_name : ' || l_user_last_name);
    34    dbms_output.put_line ('l_error_value: ' || l_error_value);
    35  end;
    36  /
    Length of Request:530
    l_user_first_name: First Name Output
    l_user_last_name : Last Name Output
    l_error_value:
    PL/SQL procedure successfully completed.Max
    http://oracleitalia.wordpress.com
    Edited by: Massimo Ruocchio on Feb 14, 2010 11:55 PM
    Added the first one.

  • Calling a Web Service from another Web Service

    Hello,
    I have the following scenario: Web Service -> XI -> RFC.
    I have created the XI -> RFC configurations in the XI and exposed them as a Web Service. I tested the generated WSDL with WebDynpro for Java and it works well (I also uploaded the WSDL to the XI server and tested it from the wsnavigator).
    I have created a Web Service from a Java class, deployed it on the XI server (the same XI server as the one with the RFC scenario), tested it and it works well.
    Now I want to call the service I exposed from the XI from inside my Web Service.
    How can I do that? Are there any code samples for that? I searched and couldn't find any.

    create a standalone proxy for your WSDL of the web service deployed on XI java stack and use its API library in the caller Web service...
    find the details here...
    http://help.sap.com/saphelp_nw04/helpdata/en/77/1484b9ecb98c41af4a01131d8d46d3/content.htm

  • Calling one WTC service from another WTC service

    Hi,
    We have a service called COLLECT defined in our WTC server.
    Recently we've added a second service called SUM in the same WTC server.
    We were wondering if it's possible to call SUM from COLLECT, and if it is, what configuration changes should be made in order to do it?
    Currently both services are exported by the WTC server (and imported by our Tuxedo).
    Thanks,
    Shy

    Hi Shy,
    Although I haven't tried it, I'm fairly certain you cannot call a Tuxedo EJB using tpcall() within a WTC based application. What I normally advise customers to do when writing a Tuxedo EJB is to implement two separate interfaces. One is obviously the TuxedoService interface that all Tuxedo EJBs must implement. In particular you must implement the service() method that accepts a TPServiceInformation instance that provides access to the typed buffer passed to the EJB. Normally one then extracts the necessary fields or information from the typed buffer, performs whatever necessary business logic needs to be performed, and then constructs a reply typed buffer.
    What I recommend is that you separate out the business logic into a separate interface and have your class implement both interfaces. The service() method would only deal with the marshalling/unmarshalling of the information contained in the typed buffers, and leave all business processing to methods on the second interface. Then if you need to access another "service", you would use the second interface, thus saving you from all the typed buffer manipulation.
    So in your case, the business logic in the second interface of the COLLECT implementation would simply call the SUM implementations second interface (the EJB's business logic) instead of trying to call a Tuxedo service. While this helps in reuse of the business logic, it doesn't address the issue of trying to transparently move a service implementation from say Tuxedo to WLS. If that's what you are trying to do, you might try exporting the SUM service from WTC to the Tuxedo domain gateway, and then importing the SUM service from that gateway. This would likely cause a network round trip if it works, but it's something to consider.
    Another alternative is to use something like the Apache Tuscany/Java project and build your Java applications using SCA. Tuxedo SALT includes a Tuscany/Java binding extension that allows Tuscany/Java applications to transparently call Tuxedo services. The choice of whether to actually call a Tuxedo service or call a Tuscany/Java based SCA service is determine by the binding selection and not changes in your code. Just a thought...
    Regards,
    Todd Little
    Oracle Tuxedo Chief Architect

  • How to call BPEL process from Java Web Service?

    Any example/sample/tutorial on this?
    TIA.

    I've done something similar a few times, specifically using a standalone Java application to invoke a BPEL process (so that it can be called from a cron job, for instance).
    The thing to remember is that a BPEL process presents itself to the outside world as a Web service. If your Java Web service can communicate with other Web services (by sending a message of the appropriate format to the URL of the other Web service), then exactly the same technique can be used to call the BPEL process. You know what the input message has to look like, and you know where the process is located on your network, so set up the Java Web service to send the message to that address.

  • Accessing BAPI web services from CAF External Services

    We have wsdl files that corresponds to BAPI calls.  Using CAF, we want to create an external service using those wsdl files and then create an application service which will be in turn used by web dynpro for developing our composites. We did the following steps:
    1. Created a new  Composite Application Service project
    2. Then right click on the External Services, select import, choose Web service.
    3. Select 'Local File System or URL' option. Copy the URL from the wsdl file and pasted the URL in the 'Browse' text field and click Next. Got an error in loading the web service.
    4. Removed the Proxy Server settings in Developer Studio but in vain. Tried all possible combinations with the URL also (such as with and without the wsdl key at the end of the URL and using the 'UDDI or URL' option under the Proxy Definition of the External Services Import and also with the Window => Preferences => Proxy settings).
    5. Since the above options failed, copied the wsdl files to the local drive and then choose that WSDL from the file system. Able to import.
    6. Created the application service and provided the custom code for the request and response.
    7. Registered the external service in the CAF browser -> Administrative tools -> External Service Configuration
    8. Tested the service through the Developer Studio.
    The error I get is: ERROR: IOError while working with the message. Check the nested exception: Connect Refused: connect:
    Any idea on what needs to be done to resolve it?

    authentication is required at design time to read the wsdl from bapis. did you provide username and password when importing the web service.
    you can always add the username and password to the url to see if you can successfully get to the wsdl. Like that http://<webas_abap_servername>:<portnumber>/sap/bc/soap/wsdl11?services=BAPI_PO_CREATE&sap-client=<clientnumber>&sap-user=<username>&sap-password=<password>

  • Invoking multiple host web services from JCAPS web service (RemoteException

    I am trying to invoke 2 web services sequentially ( not JCAPS service , some host service exposed as web service ), from my jcd which is also exposed
    as a web service.Both the host service have incorporated basic http authentication scheme,and i am setting the security credentials in the enviornment.
    (ie SOAP/HTTP external systems - client).
    However when I deploy my web service and try to invoke the host services,the first host service being called is invoked successfully and i get the response back.But the second service throws a RemoteException and the SOAP response carries "Client not authorized" message in faultstring detail tag.
    I do have separate external SOAP/HTTP systems for both the services,also the external systems have been configured with
    the HTTP basic authentication credentials.
    Infact I tried creating 2 separate JCAPS service for calling the host services individually.I am able to get the expected output
    from the services.
    The issue only arises when the host services are invoked in a sequential manner from a single JCAPS service.
    Please do let me know if i can fill in some more gaps in the information i have provided.
    Could this possibly be an issue in JCAPS?

    I have couple of doubts in this context.
    a) Is this issue only restricted when web services not developed using JCAPS are invoked or it arises also when 2 JCAPS external services are invoked
    sequentially.(I tried a PoC where in i created 2 deployments for calling the host services and invoked the deployment using another JCAPS web service and it worked fine)
    b) Also if this issue only arises when the external web services being invoked have security credentials or just invoking any web services in sequence create
    this problem.
    PS : Any link to contact the sun support team?

Maybe you are looking for

  • Deeplink by Section Header into a PDF Document

    Wonder if anyone has some insight into deeplinking into existing PDF's from an HTML page. In particular, we would like to deeplink to the same section header in each document. Since there are over 1200 pdf documents, would like to not use page number

  • [missing] DV Firewire

    I am just now trying to hookup a firewire deck to load and edit on my Powerbook. I am using the JVC dv3000 deck. I can not see or hear anything in Final Cut 4.5 but I can control the deck. If I go to iMovie, I can see and hear the video as well as co

  • ENDDA  system date format  on the underlying system

    Hi, I have a problem , while my program runs very well on my sytem , it gives problems on other system as the date format on the other system is different. Is there any function to decide the dateformat on the runtime ?

  • Additional Results

    I was following the following tutorial: "Logging Additional Results tp TestStand Database" http://www.ni.com/tutorial/14595/en/ When I got to Method 1, Step 3, I tried to enter a Custom Name for the data. The Name I enter always remains red. Even whe

  • Which init.ora file in use?

    I found init.ora in a couple places. How do I determine which init.ora file my oracle is using? Is there a sqlplus command to fine the init.ora in use? So far, I found them here: c:\oracle11g\dbs\init.ora c:\oracle11g\admin\mydb1\pfile\init.ora.81720