OnDemand Web Services, SSO, SSO Token

Hello,
We are working on a project that requires integration between an external application and Oracle CRM OnDemand. We are using the OnDemand web services for this and have got the integration going.
However we are currently using a fixed username/password for instantiating the web services sessions and would like to change that using SSO such that we pass the SSO Token and obtain a session id and then use that for the same integration.
Not sure how to get SSO going though. I've read the posts on this forum and have now gotten SSO enabled for our company and user. We also know that we need to pass on the URL a SSO Token instead of Username/Password.
However dont know where/how to get the SSO Token?
Any pointers will be appreciatd. If someone has the pseudo code of the 3-4 steps to getting the SSO token going would be appreciated.
Thanks

Ok got it. So I guess the SSO Token does not meet our use case then.
Here's our use case.
We have an custom web application that users log into. These users are also OnDemand users with a OD Username/Password but the values are not the same as the custom web app username/password.
What we need is, when these users log into the custom web app and perform certain tasks the web app behind the scenes creates a web service session with OD and inserts some data. We were currently using a common username/password to do inserts, but now we want to do it based on each users login, but do not want to locally store in the custom app the OD Uid/Pwd's. So we thought SSOToken would allow us to do this where since the users are logged into the custom web app that app would then use the SSO Token to create a session with OD and insert data.
Any ideas would be appreciated.

Similar Messages

  • Invoking Siebel CRM OnDemand Web Service via BPEL

    I'm trying to invoke a Siebel CRM OnDemand Web Service via BPEL. Basically, the Siebel guide says to post to a url with user/pwd to get a session ID returned from a cookie. I did that using embedded java and have the session ID as a variable in my BPEL process. My problem is with now calling the Web Service to perform the action. I have a WSDL from Siebel, but the guide says to use an HTTP post with the session ID in the url and the XML in the body. How do I do that? Shouldn't the WSDL handle that when I create the Partner Link? Do I need to use more embedded Java for this or can I set up a Partner Link? I created a Partner Link and it shows the methods I want to use, but I get the following error when I try to call it because I don't know where to add the session ID:
    <ErrorCode xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">SBL-ODU-01006</ErrorCode>
    <ErrorMessage xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">Internal Error: Session is not available. Aborting.</ErrorMessage>
    Any help would be GREATLY appreciated. Please let me know if you need more information.
    THANKS!

    The Siebel OnDemand web services can accept the siebel session token in the URL. Append ';jessionid={%sessionIdFromCookie%}' to the end point. Obviously this has to be done dynamically. Refer to the article called 'Making BPEL Processes Dynamic' (http://www.oracle.com/technology/pub/articles/bpel_cookbook/carey.html) pay particular attention to the 'Eliminating address dependency at run time' section.
    Peter

  • Invoke Siebel OnDemand Web Service via BPEL

    Hi,
    We are trying to invoke Siebel OnDemand Web Service via BPEL.
    We have followed the steps as mentioned in
    http://www.oracle.com/technetwork/topics/ofm-siebel-blog-postings-092216.html
    But still we are unable to get the Session Id.
    Do we need to opne any port to resolve this issue or do we have any other way to get the session ID.
    Please let me know if there is any solution to this...
    Thanks

    Thanks for the update..
    We are trying to invoke the CRM On Demand session ID using the BPEL. It seems the we are having some problem with the URL
    https://secure-ausomxapa.crmondemand.com/Services/Integration?command=login
    => `Integration?command=login
    we are trying to access the URL from our SOA server using wget and we are getting following result.
    [XXXXXXXXXXXXXXX ~]$ wget https://secure-ausomxapa.crmondemand.com/Services/Integration?command=login
    --07:32:19-- https://secure-ausomxapa.crmondemand.com/Services/Integration?command=login
    => `Integration?command=login'
    Resolving secure-ausomxapa.crmondemand.com... 141.146.149.68
    Connecting to secure-ausomxapa.crmondemand.com|141.146.149.68|:443...
    We are expecting that we are unable to access the URL using 443 port.

  • Problem building schema - Siebel OnDemand Web Services

    I'm trying to call a Siebel OnDemand Web Service from BPEL.
    I've downloaded the Contact.wsdl from OnDemand and imported it into my project.
    I've created a partner link and created variables for the input and output.
    The problem is that JDeveloper cannot build the schemas defined in the wsdl.
    If you try to copy a value to the Input variable, JDeveloper gives the error:
    Exception - Problem building schema!
    You cannot navigate the schema path.
    Does anyone know why this is happening?

    I'm also trying to do this.
    Some info from the Siebel web services guide:-
    "The login request is an HTTPS request to instantiate a session and obtain a session ID. A client invokes login by sending an HTTP GET request to a URL like the following:
    https://secure.crmondemand.com/Services/Integration?command=login
    NOTE: The login parameter value is case sensitive.
    ■ Login input. The input to login is provided in the URL parameters and the HTTP headers, as follows:
    ■ The only URL parameter to be set is command. This parameter value is login.
    Two HTTP headers, UserName and Password, must be set with the appropriate values for your system. For example:
    ❏ UserName: [email protected]
    ❏ Password: mypass
    ■ Login output. The login command returns the following items:
    ■ A session cookie, jsessionid. The client must use this cookie when submitting subsequent requests, including logoff requests.
    ■ A status code of 200, if the session does not encounter any errors. This indicates that the request succeeded.
    Then to get data out ....
    Integration request input. The jsessionid returned to the client during login must be included with the request. The request must contain the jsessionid either as a cookie or as a URL parameter, as follows:
    https://secure.crmondemand.com/Services/Integration/object;jsessionid=xyZ12489w3482413
    Does anyone have any ideas on how we might do this using the Oracle BPEL PM?
    Thanks in advance.

  • Siebel OnDemand Web Services and BPEL II

    We are trying to do a POC for a given client that is trying to decide between SOD and another on demand CRM product.
    Our POC is to integrate SOD using bpel and sending data to a back end system with SOD as the originator and instigator of the flow.
    We intend to take data from an integration event pull it into bpel do a transformation to add data to it and update SOD to complete the circuit.
    We are having a few issues and was wondering if you can provide some insight since we would like to put SOD at this site.
    Our issues are :)
    Issue 1
    When we import the WSDL for the Integration event the scheema's are not resolved.
    Issue 2. When we import more than one WSDL in our flow it has issues with duplicates between the 2 wsdls..
    issue 3.
    We have succesfully used the example application to do our login and faked out the endpoint but have not been able to automate this step.
    We found an example online at oracle ( http://www.oracle.com/technology/tech/fmw4apps/siebel/ofm-siebel-blog-postings.html)
    (We got that link from the other BPEL post: Siebel OnDemand Web Services and BPEL
    But when we copy the code into our embeded java object it doesn't work. I think that we may be missing some of the code to use.
    Do we have the full copy of this java object?
    here is hte error that we get from bpel
    Exception reported is: Siebel_On_Demand.bpel:33: Class bpel.p0.URL not found.
    URL wsURL = new URL(wsLocation + "?command=login");
    ^
    Siebel_On_Demand.bpel:33: Class bpel.p0.URL not found.
    URL wsURL = new URL(wsLocation + "?command=login");
    ^
    Siebel_On_Demand.bpel:34: Class bpel.p0.HttpURLConnection not found.
    HttpURLConnection wsConnection = (HttpURLConnection)wsURL.openConnection();
    ^
    Siebel_On_Demand.bpel:34: Class bpel.p0.HttpURLConnection not found.
    HttpURLConnection wsConnection = (HttpURLConnection)wsURL.openConnection();
    ^
    Siebel_On_Demand.bpel:42: Class bpel.p0.HttpURLConnection not found.
    if (wsConnection.getResponseCode() == HttpURLConnection.HTTP_OK)
    ^
    Siebel_On_Demand.bpel:42: Undefined variable or class name: HttpURLConnection
    if (wsConnection.getResponseCode() == HttpURLConnection.HTTP_OK)
    We appriciate any help that cam be provided :)
    Thanks
    Message was edited by:
    user642301

    I'm also trying to do this.
    Some info from the Siebel web services guide:-
    "The login request is an HTTPS request to instantiate a session and obtain a session ID. A client invokes login by sending an HTTP GET request to a URL like the following:
    https://secure.crmondemand.com/Services/Integration?command=login
    NOTE: The login parameter value is case sensitive.
    ■ Login input. The input to login is provided in the URL parameters and the HTTP headers, as follows:
    ■ The only URL parameter to be set is command. This parameter value is login.
    Two HTTP headers, UserName and Password, must be set with the appropriate values for your system. For example:
    ❏ UserName: [email protected]
    ❏ Password: mypass
    ■ Login output. The login command returns the following items:
    ■ A session cookie, jsessionid. The client must use this cookie when submitting subsequent requests, including logoff requests.
    ■ A status code of 200, if the session does not encounter any errors. This indicates that the request succeeded.
    Then to get data out ....
    Integration request input. The jsessionid returned to the client during login must be included with the request. The request must contain the jsessionid either as a cookie or as a URL parameter, as follows:
    https://secure.crmondemand.com/Services/Integration/object;jsessionid=xyZ12489w3482413
    Does anyone have any ideas on how we might do this using the Oracle BPEL PM?
    Thanks in advance.

  • Using Ajax and Siebel CRM OnDemand Web Services

    Hello,
    Is anyone using Ajax to access Siebel CRM OnDemand Web Services from a web page? If so do you perhaps have a code sample?
    thank you.

    Hi Zohaib,
    your problem is that you need to obtain and import the SSL security certificate from your CRMOD server into the certificate store of your client application.
    for example:
    C:\Oracle\Middleware11113\jdk160_18\bin\keytool -importcert -trustcacerts -keystore C:\Oracle\Middleware11113\jdk160_18\jre\lib\security\cacerts -storepass changeit -noprompt -file C:\Users\Mick\Documents\Projects\SCB\DER\DER.cer -alias crmodnew
    To be sure you are using that trust store you can then explicitly set the path to it thus:
    System.setProperty("javax.net.ssl.trustStore", "/Oracle/Middleware11113/wlserver_10.3/server/lib/cacerts");
    This should get you going in accessing CRMOD from your Java code (ie running the java class directly in jdev) i nJDeveloepr 11.1.1.4, however be aware that there is an issue in the embedded WebLogic Server 10.3.4.0 that prevents successfully calling a CRMOD ws (you can login but not invoke a QueryPage for instance). To work around this until it is fixed I suggest you use JDeveloper 11.1.1.3 as the embedded WLS in this does work when accessing CRMOD web services, however you need to undertake the extra steps of enabling JSSE in your embedded WLS as well as importing the above cert into the WLS cert store, ie:
    C:\Oracle\Middleware11113\jdk160_18\bin\keytool -importcert -trustcacerts -keystore C:\Oracle\Middleware11113\wlserver_10.3\server\lib\DemoTrust.jks -storepass DemoTrustKeyStorePassPhrase -noprompt -file C:\Users\Mick\Documents\Projects\SCB\DER\DER.cer -alias crmodnew
    C:\Oracle\Middleware11113\jdk160_18\bin\keytool -importcert -trustcacerts -keystore C:\Oracle\Middleware11113\wlserver_10.3\server\lib\DemoIdentity.jks -storepass DemoIdentityKeyStorePassPhrase -noprompt -file C:\Users\Mick\Documents\Projects\SCB\DER\DER.cer -alias crmodnew
    Cheers,
    Mick.

  • Integrating a non-Portal system via a web service SSO

    Hi all,
    Hope you could help with this scenario.  There is a request from a client to integrate a non-Portal website into their Portal system via a single-sign on web service.  In particular,
    1.  Portal user will see an iView in the Portal with the following form elements:
         --username field
         --employee ID field
         --submit button
         *there will be no password field because it is already fixed (can be fixed/hardcoded in the web service call)
    2.  Upon clicking the Submit button, the web service call is executed
         --the web service response contains a URL (which is the non-Portal website)
    3.  The Portal automatically displays the contents of the URL in the iView
    Is this a feasible scenario?  What is the best way to implement this?
    Thanks in advance

    Hi Charisse,
    You are going in the right direction. I can give some technical input like you need to create the wsdl and need to create a stub after that using this wsdl and inside this stub all the informations will need to be mentioned.
    Regards,
    Sen

  • Unable to call Web Service with Username Token

    -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
    I posted this in the JDeveloper forum but got no response.
    -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
    I have JDeveloper 10g release 3.
    I created a regular Java application. Added a Web service proxy with no special mappings or anything. Right clicked on the proxy and said "Secure Proxy". I only used basic plain text username token. Added a method to my class that call instantiates a client, and called the operation.
    However when I run this I get the following error message.
    SEVERE: No username found
    Error::oracle.j2ee.ws.common.soap.fault.SOAP11FaultException: No username found
    The Web Service Security Proxy Wizard created an xml in my src file, that I updated to put the username and password of the web service. Below is the xml file.
    <oracle-webservice-clients xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:noNamespaceSchemaLocation='http://xmlns.oracle.com/oracleas/schema/oracle-webservices-client-10_0.xsd'>
    <webservice-client>
    <service-qname namespaceURI="http://tempuri.org/SOAPTestWS/Service1" localpart="Service1"/>
    <port-info>
    <wsdl-port namespaceURI="http://tempuri.org/SOAPTestWS/Service1" localpart="Service1Soap"/>
    <runtime enabled="security">
    <security>
    <inbound/>
    <outbound>
    <username-token name="myusername" password="xxxxx" password-type="PLAINTEXT" add-nonce="false" add-created="false"/>
    </outbound>
    </security>
    </runtime>
    <operations>
    <operation name='TryMe'>
    </operation>
    </operations>
    </port-info>
    </webservice-client>
    </oracle-webservice-clients>
    And this configuration file is processed in the stub file.
    setupConfig("project2/runtime/Service1Soap_Stub.xml");
    What am I doing wrong. I cannot find any documentation on the secure web service client wizard and it's generated code.
    Thanks, MIke L.

    Mike,
    I updated the 3 xml files with the name and password and I get a different error now ...
    WARNING: Unable to connect to URL: https://dssd001.ca.boeing.com:443/bartinterface/SOAP/resSetup.cgi due to java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: javax.net.ssl.SSLException: SSL handshake failed: X509CertChainIncompleteErr
    java.rmi.RemoteException: ; nested exception is:
         HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: javax.net.ssl.SSLException: SSL handshake failed: X509CertChainIncompleteErr
    I am using the simple text based username auth, but jdev for some reason still goes and looks for the x509 cert? How did you get yours to work?
    Thanks
    Sriram

  • Web Service Security Username Token Issue

    Hi,
    I am trying to implement WS-Security (Username Token) on web services deployed on Weblogic Server 8.1 (sp4). The deployment works fine but whenever I try to invoke the service using auto generated client stub (created using clientgen) or weblogic server console (service test page) , I get the following error:
    <Nov 8, 2006 12:01:46 PM GMT+05:30> <Info> <WebService> <BEA-220024> <Handler weblogic.webservice.core.handler.WSSEClientHandler threw an exception from its handleRequest method. The exception was:
    java.lang.AssertionError: Bad password type: wsse:PasswordText.>
    Failed to create web service client:java.rmi.RemoteException: SOAP Fault:javax.xml.rpc.soap.SOAPFaultException: Exception during processing: java.lang.AssertionError: Bad password type: wsse:PasswordText (see Fault Detail for stacktrace)
    Detail:
    <detail>
    <bea_fault:stacktrace xmlns:bea_fault="http://www.bea.com/servers/wls70/webservice/fault/1.0.0">java.lang.AssertionError: Bad password type: wsse:PasswordText
    at weblogic.xml.security.wsse.v200207.UsernameTokenImpl.<init>(UsernameTokenImpl.java:64)
    at weblogic.xml.security.wsse.v200207.SecurityElementFactoryImpl.createToken(SecurityElementFactoryImpl.java:59)
    at weblogic.webservice.core.handler.WSSEClientHandler.processSpecs(WSSEClientHandler.java:300)
    at weblogic.webservice.core.handler.WSSEClientHandler.handleRequest(WSSEClientHandler.java:100)
    at weblogic.webservice.core.HandlerChainImpl.handleRequest(HandlerChainImpl.java:143)
    at weblogic.webservice.core.ClientDispatcher.send(ClientDispatcher.java:231)
    at weblogic.webservice.core.ClientDispatcher.dispatch(ClientDispatcher.java:143)
    at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:457)
    at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:443)
    at weblogic.webservice.core.rpc.StubImpl._invoke(StubImpl.java:303)
    at com.cts.sipservices.implementation.client.MrmPartyServiceImplementationPort_Stub.getParty(MrmPartyServiceImplementationPort_Stub.java:46)
    at com.cts.sipservicesclient.client.SecureClient.<init>(SecureClient.java:76)
    at com.cts.sipservicesclient.client.SecureClient.main(SecureClient.java:38)
    </bea_fault:stacktrace>
    </detail>; nested exception is:
    javax.xml.rpc.soap.SOAPFaultException: Exception during processing: java.lang.AssertionError: Bad password type: wsse:PasswordText (see Fault Detail for stacktrace)
    This is the ‘security’ tag of my ‘web-services.xml’:
    <security>
    <spec:SecuritySpec xmlns:spec="http://www.openuri.org/2002/11/wsse/spec"
    Namespace="http://schemas.xmlsoap.org/ws/2002/07/secext"
    Id="default-spec">
    <spec:UsernameTokenSpec xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/07/secext"
    PasswordType="wsse:PasswordText">
    </spec:UsernameTokenSpec>
    </spec:SecuritySpec>
    </security>
    Thanks

    Apply these debug flags, to get some more debug information from WSSE server side processing following debug flags are helpful:
    -Dweblogic.webservice.security.debug=true
    -Dweblogic.webservice.security.verbose=true

  • Web Service Security X509 token issue...

    Hi All,
    I have an issue with using X509 certificates. Please find the details attached below:-
    I used the following link to create a simple keystore using 3rd party tools:-
    http://www.oracle.com/technology/products/jdev/howtos/1013/wssecure/CreateKeyStore_howto.htm
    NOTES:
    1) I think the above link creates self signed certificates.
    2) The signature and encryption key for both the web service and proxy created below are the same.
    As can be seen from this link, two certificates are created with aliases sam and dave. I then used the following link to secure the web service and proxy:-
    http://www.oracle.com/technology/products/jdev/howtos/1013/wssecure/10gwssecurity_howto.html
    This link uses the OAS manager to set the keytoll related properties. These entries are already into system-jazn-data.xml. A point to note here is that the aliases of the certificates are stored in system-jazn-data.xml.
    My oracle-webservices.xml has the mapping attribute of the verify-x509-token token set to CN (Common Name). Hence I changed the above entries in system-jazn-data to reflect the common names instead of the aliases.
    However the standalone OC4J server still throws the following error whether I try to run the proxy with the mapping attr set to alias or CN in the jazn file:-
    07/07/05 20:58:14 Oracle Containers for J2EE 10g (10.1.3.1.1) initialized
    2007-07-05 20:58:39.876 ERROR Cannot authenticate X509 certificate, User CN=Sam
    Cooke, OU=samDept, EMAILADDRESS=[email protected], O=samOrg, L=samCity, ST=samState
    , C=US does not exist in our system
    07/07/05 20:58:39 javax.security.auth.login.LoginException: Cannot authenticate
    X509 certificate, User CN=Sam Cooke, OU=samDept, EMAILADDRESS=[email protected], O=
    samOrg, L=samCity, ST=samState, C=US does not exist in our system
    I have not exported any certificates from client to serve or vice versa.
    Please could someone help out? This is urgent.
    Regards,
    Lester.

    I had the same issue and solved it like this:
    Create a signed certificate, import it into your keystore and use that as Signature Key alias in both the client as the server security. Make sure the user with the same name exists in the realm on the server.
    Hope this helps,
    Lonneke

  • Web Service Security username token...

    Hi All,
    I am presently trying to build in security authentication into my web service using the username-token and the verify-username-token tokens.
    My WS_stub.xml on the proxy side looks like the following:-
    other tokens
    <security>
    <inbound/>
    <outbound>
    <username-token name="NAME" password="PASS" password-type="DIGEST" add-nonce="true" add-created="true"/>
    </outbound>
    </security>
    other tokens
    and my oracle-webservices.xml on hte web service side looks like the following:-
    other tokens
    <security>
    <inbound>
    <verify-username-token name="NAME" password="PASS" password-type="DIGEST"
    require-nonce="true"
    require-created="true"/>
    </inbound>
    <outbound/>
    </security>
    other tokens
    I have set the javacache.xml for the embedded OC4J location as follows:-
    </persistence>
    <max-objects>1000</max-objects>
    <max-size>48</max-size>
    <clean-interval>60</clean-interval>
    </cache-configuration>
    When I run the web service followed by the proxy I get the following error at the proxy side.
    javax.xml.rpc.soap.SOAPFaultException: Policy requires DIGEST passwords
         at oracle.j2ee.ws.client.StreamingSender._raiseFault(StreamingSender.java:568)
         at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:396)
         at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:112)
         at com.airliquide.smartcyl.runtime.TrailerWSSoapHttp_Stub.addtrailerinfo(TrailerWSSoapHttp_Stub.java:76)
         at com.airliquide.smartcyl.TrailerWSSoapHttpPortClient.addtrailerinfo(TrailerWSSoapHttpPortClient.java:60)
         at com.airliquide.smartcyl.TrailerWSSoapHttpPortClient.main(TrailerWSSoapHttpPortClient.java:47)
    Also it gives exceptions with repect to nonces such as "Policy requires nonce". Please could someone tell me how to setup an nonce in the xml files above and how to use nonce in web services?
    Regards,
    Lester.

    Hi All,
    Presently I am trying to set the security for my web service and am receiving the following error when doing so at the proxy side:-
    oracle.j2ee.ws.common.soap.fault.SOAP11FaultException: java.lang.NullPointerException
         at oracle.j2ee.ws.common.mgmt.runtime.InterceptorChainImpl.createSoapFaultException(InterceptorChainImpl.java:338)
         at oracle.j2ee.ws.common.mgmt.runtime.InterceptorChainImpl.handleException(InterceptorChainImpl.java:256)
         at oracle.j2ee.ws.common.mgmt.runtime.InterceptorChainImpl.handleRequest(InterceptorChainImpl.java:128)
         at oracle.j2ee.ws.common.mgmt.runtime.AbstractInterceptorPipeline.handleRequest(AbstractInterceptorPipeline.java:87)
         at oracle.j2ee.ws.client.StubBase._preRequestSendingHook(StubBase.java:699)
         at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:147)
         at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:112)
         at com.airliquide.smartcyl.runtime.TrailerWSSoapHttp_Stub.addtrailerinfo(TrailerWSSoapHttp_Stub.java:76)
         at com.airliquide.smartcyl.TrailerWSSoapHttpPortClient.addtrailerinfo(TrailerWSSoapHttpPortClient.java:62)
         at com.airliquide.smartcyl.TrailerWSSoapHttpPortClient.main(TrailerWSSoapHttpPortClient.java:49)
    Process exited with exit code 0.
    My WS_Stub.xml file under runtime of the proxy project looks as follows:-
    <?xml version="1.0" encoding="UTF-8"?>
    <oracle-webservice-clients xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:noNamespaceSchemaLocation='http://xmlns.oracle.com/oracleas/schema/oracle-webservices-client-10_0.xsd'>
    <webservice-client>
    <service-qname namespaceURI="http://trailerinfo/" localpart="TrailerWS"/>
    <port-info>
    <wsdl-port namespaceURI="http://trailerinfo/" localpart="TrailerWSSoapHttpPort"/>
    <runtime enabled="security">
    <security>
    <key-store name="mytestkeystore" store-pass="mytestkeystore" path="C:\Temp\mytestkeystore.jks"/>
    <signature-key key-pass="sampwd" alias="sam"/>
    <encryption-key key-pass="davepwd" alias="dave"/>
    <inbound>
    <verify-signature>
    <signature-methods>
    <signature-method>DSA-SHA1</signature-method>
    <signature-method>RSA-MD5</signature-method>
    <signature-method>RSA-SHA1</signature-method>
    </signature-methods>
    <tbs-elements>
    <tbs-element local-part="Body" name-space="http://schemas.xmlsoap.org/soap/envelope/"/>
    </tbs-elements>
    <verify-timestamp created="true" expiry="28800"/>
    </verify-signature>
    <decrypt>
    <encryption-methods>
    <encryption-method>AES-128</encryption-method>
    <encryption-method>AES-256</encryption-method>
    <encryption-method>3DES</encryption-method>
    </encryption-methods>
    <tbe-elements>
    <tbe-element local-part="Body" name-space="http://schemas.xmlsoap.org/soap/envelope/" mode="CONTENT"/>
    </tbe-elements>
    </decrypt>
    </inbound>
    <outbound>
    <username-token password-type="PLAINTEXT" add-nonce="false" add-created="true"/>
    <signature>
    <signature-method>RSA-SHA1</signature-method>
    <tbs-elements>
    <tbs-element local-part="Body" name-space="http://schemas.xmlsoap.org/soap/envelope/"/>
    </tbs-elements>
    <add-timestamp created="true" expiry="28800"/>
    </signature>
    <encrypt>
    <recipient-key alias="dave"/>
    <encryption-method>3DES</encryption-method>
    <keytransport-method>RSA-1_5</keytransport-method>
    <tbe-elements>
    <tbe-element local-part="Body" name-space="http://schemas.xmlsoap.org/soap/envelope/" mode="CONTENT"/>
    </tbe-elements>
    </encrypt>
    </outbound>
    </security>
    </runtime>
    <operations>
    <operation name='addtrailerinfo'>
    <runtime>
    <security>
    <inbound/>
    <outbound>
    <username-token password-type="PLAINTEXT" add-nonce="false" add-created="true"/>
    <signature>
    <signature-method>RSA-SHA1</signature-method>
    <tbs-elements>
    <tbs-element local-part="Body" name-space="http://schemas.xmlsoap.org/soap/envelope/"/>
    </tbs-elements>
    <add-timestamp created="true" expiry="28800"/>
    </signature>
    <encrypt>
    <recipient-key alias="test"/>
    <encryption-method>3DES</encryption-method>
    <keytransport-method>RSA-1_5</keytransport-method>
    <tbe-elements>
    <tbe-element local-part="Body" name-space="http://schemas.xmlsoap.org/soap/envelope/" mode="CONTENT"/>
    </tbe-elements>
    </encrypt>
    </outbound>
    </security>
    </runtime>
    </operation>
    </operations>
    </port-info>
    </webservice-client>
    </oracle-webservice-clients>
    My oracle-webservices.xml file looks like the following:-
    <oracle-webservices xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/oracle-webservices-10_0.xsd">
    <webservice-description name="TrailerWS">
    <port-component name="TrailerWSSoapHttpPort">
    <runtime enabled="security">
    <security>
    <key-store name="mytestkeystore" store-pass="mytestkeystore"
    path="META-INF/mytestkeystore.jks"/>
    <signature-key key-pass="sampwd" alias="sam"/>
    <encryption-key key-pass="davepwd" alias="dave"/>
    <inbound>
    <verify-username-token password-type="PLAINTEXT"
    require-nonce="false"
    require-created="true"/>
    <verify-signature>
    <signature-methods>
    <signature-method>DSA-SHA1</signature-method>
    <signature-method>RSA-MD5</signature-method>
    <signature-method>RSA-SHA1</signature-method>
    </signature-methods>
    <tbs-elements>
    <tbs-element local-part="Body"
    name-space="http://schemas.xmlsoap.org/soap/envelope/"/>
    </tbs-elements>
    <verify-timestamp created="true" expiry="28800"/>
    </verify-signature>
    <decrypt>
    <encryption-methods>
    <encryption-method>AES-128</encryption-method>
    <encryption-method>AES-256</encryption-method>
    <encryption-method>3DES</encryption-method>
    </encryption-methods>
    <tbe-elements>
    <tbe-element local-part="Body"
    name-space="http://schemas.xmlsoap.org/soap/envelope/"/>
    </tbe-elements>
    </decrypt>
    </inbound>
    <outbound>
    <signature>
    <signature-method>RSA-SHA1</signature-method>
    <tbs-elements>
    <tbs-element local-part="Body"
    name-space="http://schemas.xmlsoap.org/soap/envelope/"/>
    </tbs-elements>
    <add-timestamp created="true" expiry="28800"/>
    </signature>
    <encrypt>
    <recipient-key key-pass="" alias="dave"/>
    <encryption-method>3DES</encryption-method>
    <tbe-elements>
    <tbe-element local-part="Body"
    name-space="http://schemas.xmlsoap.org/soap/envelope/"/>
    </tbe-elements>
    </encrypt>
    </outbound>
    </security>
    </runtime>
    <operations>
    <operation name="addtrailerinfo"
    input="{http://trailerinfo/}addtrailerinfoElement">
    <runtime>
    <security>
    <inbound>
    <verify-username-token require-nonce="false"
    require-created="true"
    password-type="PLAINTEXT"/>
    <verify-signature>
    <signature-methods>
    <signature-method>DSA-SHA1</signature-method>
    <signature-method>RSA-MD5</signature-method>
    <signature-method>RSA-SHA1</signature-method>
    </signature-methods>
    <tbs-elements>
    <tbs-element local-part="Body"
    name-space="http://schemas.xmlsoap.org/soap/envelope/"/>
    </tbs-elements>
    <verify-timestamp created="true" expiry="28800"/>
    </verify-signature>
    <decrypt>
    <encryption-methods>
    <encryption-method>AES-128</encryption-method>
    <encryption-method>AES-256</encryption-method>
    <encryption-method>3DES</encryption-method>
    </encryption-methods>
    <tbe-elements>
    <tbe-element local-part="Body"
    name-space="http://schemas.xmlsoap.org/soap/envelope/"
    mode="CONTENT"/>
    </tbe-elements>
    </decrypt>
    </inbound>
    <outbound/>
    </security>
    </runtime>
    </operation>
    </operations>
    </port-component>
    </webservice-description>
    </oracle-webservices>
    I checked this exception out at hte following link
    http://www.oracle.com/technology/products/jdev/howtos/1013/wssecure/10gwssecurity_howto.html#keystore
    which lists hte instructions to secure a web service. The trouble shooting section lists this exception and says it might be due to a timestamp created flag being set to false. However I have made sure that both the client and service side xml files above have this set to true and are matching.
    However I am still not able to eliminate this error. Please could someone help me out? This is urgent.
    Regards,
    Lester.

  • Need help in access SAP sales onDemand web services

    Hi,
    I am planning to develop an application using SAP Sales onDemand APIs. This application will pull and push data into SAP system from user. However I am not able to locate any web service documentation for Sales onDemand. Also please let me know if I can access the webservices using 15 day trial account provided by SAP.

    Hi Brajmohan,
    Please find below the link to all avaiable Web Service APIs for SAP Sales on Cloud or SAP CLoud for Customer.
    Web Service APIs in SAP Cloud for Customer 1405 - May 2014
    This includes respective documentation as well.
    Thanks,
    Ravi

  • Got account name from ondemand web services, but the name is all ????

    The account name is japanese in ondemand here. I got the account name from ondemand webservice by c#,
    but in web page the display content is all ????????, how to convert it?
    thanks

    you need to set the character encoding while reading the SOAP out put message.
    Dinesh

  • ODI Web Service Soap Header Missing Error

    I am trying to invoke oracle crm ondemand web service using ODIInvokeWebService tool by providing the below parameters
    Url
    Port Type
    Operation
    XML Request
    HTTP User
    HTTP Password
    I am getting the below error during the execution of the step.
    javax.xml.ws.soap.SOAPFaultException: Invalid Soap Request : Soap Header is missing
         at com.sun.xml.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:189)
         at com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:122)
         at com.sun.xml.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:187)
    The code which is getting executed is
    OdiInvokeWebService "-URL=http://slc402454.us.oracle.com:30090/Services/cte/FieldManagementService?wsdl" "-PORT_TYPE=FieldManagementService" "-OPERATION=FieldManagementRead" "-HTTP_USER=Upgrade_all/sales" "-HTTP_PASS=aYyHL7THHZYEdPNTd.1ugy"
    <?xml version = '1.0' encoding = 'UTF8'?>
    <WL5G3N1:FieldManagementRead_Input xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:WL5G3N1="urn:crmondemand/ws/odesabs/fieldmanagement/">
    <apQuery:FieldSet xmlns:apQuery="urn:/crmondemand/xml/fieldmanagement/query">
    <apQuery:ObjectName>Account</apQuery:ObjectName>
    <apQuery:IncludeAll>true</apQuery:IncludeAll>
    </apQuery:FieldSet>
    </WL5G3N1:FieldManagementRead_Input>
    With SOAPUI , I am able to get the response.

    After mentioning the SOAP header and response file as XML with other properties , I am able to successfully retrieve the SOAP response.

  • Oracle Service Registry - UserName Token profile

    Hi,
    My web services use UserName Token profile for authentication. It also supports encryption. Is there a way to publish these information along with the wsdl?
    Steve

    Thank you for your helpful reply!
    Although the installation appears to fail, the db schema is actually created.
    Thus, when I run installation the next time, having selected an existing db schema, all appears to go well.
    NA
    http://nickaiva.blogspot.com
    Edited by: Nick Aiva on Dec 29, 2010 10:20 AM

Maybe you are looking for