WCF Webservice With Acknowledgement

Hi ,
I have  a requirement, where i need to expose a Webservice(WCF), when a request is made, it needs to send an acknowledgement back  "Yes i have received the request".
Post which the caller can continue the work, as he is not expecting any response.
At the service end, once the acknowledgement is sent , the actually processing of the request should be carried out.
No response is expected to be sent to caller.
I tried the one way Async pattern, but that does not give me the acknowledgement.
Any help is really appreciated.
Sandeep Gonthkar

Hi Sandeep Gonthkar,
Have you tried the WCF Service Callback? Here are some articles, please try to check it:
#A Simple WCF Service Callback Example:
http://adamprescott.net/2012/08/15/a-simple-wcf-service-callback-example/ .
#WCF Callback Service tutorial:
http://wcftutorial.net/callback-service.aspx .
#How to Create Callback Service in WCF:
http://wcftutorial.net/how-to-create-callback-service-in-wcf.aspx .
Best Regards,
Amy Peng
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey.

Similar Messages

  • Consuming WCF-Webservices using XI/PI

    Hello,
    I'am trying to consume a WCF-Webservice with the XI/PI. First I imported the WSDL of this webservice as an external definition - so far so good. But when I try to create a message-mapping, no fields are available and the XI/PI says something like "null-pointer exception". I suppose it's because there are no field definitions in the WSDL (seems, that the fields I'am missing are downloaded in the background when using anything other to test the webservice, eg. SoapUI).
    Can someone give me a hint how to comsume WCF-Services with the XI? Maybe it's a problem with the WSDL, but how can I put the fields/parameters into the WSDL?
    Thank in advance
    Thomas

    1.Once you import the WSDL under External Definition then you should be able to see the messages under the message tab which indicates input/output message types of your Web service
    2.If you are not sending any request and not expecting any response from web service then this message tab will be empty
    if web service contains reference to input and output strucuteres then PI editor can not refer them
    in that case do a copy the structure of messages into WSLD and reimport agian
    HTH
    Rajesh

  • Is it possible to call wcf webservice on adf mobile?

    Hi all,
    I tried to consume a wcf webservice method on adf mobile by using java api as seen as below code snippet.
    I tried to run on classical adf generic application by creating webservice proxy. Then i could get response properly. But when i consume webservice method on adfmobile i get http 501 error response. I have tried using drag and drop into amx page and execute binding action, result is same.
    What might be the reason?
    brgds
        private boolean validateClient()
            List pnames = new ArrayList();
            List pvals = new ArrayList();
            List ptypes = new ArrayList();
            pnames.add("UserName");
            pvals.add("test");
            ptypes.add(String.class);
            pnames.add("Password");
            pvals.add("123");
            ptypes.add(String.class);
            pnames.add("DeviceID");
            pvals.add("123456");
            ptypes.add(String.class);
            GenericType result = null;
            try
                ClientDetail clientDetail = null;
                result = (GenericType)AdfmfJavaUtilities.invokeDataControlMethod("mlService", null, "ValidateClient", pnames, pvals, ptypes);
                for (int i = 0; i < result.getAttributeCount(); i++)
                    // Get each individual GenericType instance that holds the attribute key-value pairs
                    GenericType entityGenericType = (GenericType)result.getAttribute(i);
                    clientDetail = (ClientDetail)GenericTypeBeanSerializationHelper.fromGenericType(ClientDetail.class, entityGenericType);
                if (clientDetail != null)
                    if (clientDetail.getIsValidate().booleanValue())
                        return true;
                    else
                        AdfmfContainerUtilities.invokeContainerJavaScriptFunction("com.accmee.menu", "navigator.notification.alert",
                                                                                  new Object[] { "No access",
                                                                                                 "No access: ", "Ok" });
                } else
                        AdfmfContainerUtilities.invokeContainerJavaScriptFunction("com.accmee.menu", "navigator.notification.alert",
                                                                                  new Object[] { "No access",
                                                                                                 "No access: ", "Ok" });
                    return false;
            catch (AdfInvocationException aie)
                if (AdfInvocationException.CATEGORY_WEBSERVICE.compareTo(aie.getErrorCategory()) == 0)
                    throw new AdfException("Error with the server. Please try later.", AdfException.ERROR);
                aie.printStackTrace();
                throw new AdfException("Uzak veri sağlayısı çağrılırken hata oluştu", AdfException.ERROR);
            return false;

    No, as far as i know they are not secured service. What if they are secured, do i need to authenticate during consuming method in webservice proxy, dont i. But as i said before, i could consume and get response on webservice proxy in regular adf project.
    I can consume methods of another webservice (i.e. http://www.html2xml.nl/Services/Calculator/Version1/Calculator.asmx?WSDL) also in all methods that presented.
    No, i can not obtain access on another way to server, it is remote and out of my control.
    Ok, i tried as you say.
    Problem exists here too. May be an interopability problem on between adf platform and wcf service? What do you think Mr Shmeltzer?
    http://i42.tinypic.com/ny8jtd.png
    <WebServiceConnectionMessages> <debugExecuteFailure> Failed to execute a SAAJ interaction.
    oracle.j2ee.ws.client.jaxws.JRFSOAPFaultException: Client received SOAP Fault from server : The SOAP action specified on the message, '', does not match the HTTP SOAP Action, 'http://tempuri.org/IAuthenticationService/ValidateClient'.
      at oracle.j2ee.ws.client.jaxws.DispatchImpl.throwJAXWSSoapFaultException(DispatchImpl.java:1040)
      at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:826)
      at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.synchronousInvocationWithRetry(OracleDispatchImpl.java:235)
      at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.invoke(OracleDispatchImpl.java:106)
      at oracle.adf.model.connection.webservice.impl.SaajInteractionImpl.execute(SaajInteractionImpl.java:80)
      at oracle.adfinternal.model.adapter.webservice.provider.soap.SOAPProvider.execute(SOAPProvider.java:324)
      at oracle.adfinternal.model.adapter.webservice.WSDataControl.invokeOperation(WSDataControl.java:277)
      at oracle.adf.model.bean.DCBeanDataControl.invokeMethod(DCBeanDataControl.java:444)
      at oracle.adf.model.binding.DCInvokeMethod.callMethod(DCInvokeMethod.java:266)
      at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1626)
      at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2169)
      at oracle.adf.model.bean.DCBeanDataControl.invokeOperation(DCBeanDataControl.java:507)
      at oracle.adf.model.adapter.AdapterDCService.invokeOperation(AdapterDCService.java:307)
      at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:731)
      at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.invokeMethodAction(JUMethodIteratorDef.java:173)
      at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.initSourceRSI(JUMethodIteratorDef.java:656)
      at oracle.adf.model.binding.DCIteratorBinding.callInitSourceRSI(DCIteratorBinding.java:1700)
      at oracle.adf.model.binding.DCIteratorBinding.internalGetRowSetIterator(DCIteratorBinding.java:1674)
      at oracle.adf.model.binding.DCIteratorBinding.refresh(DCIteratorBinding.java:4476)
      at oracle.adf.model.binding.DCExecutableBinding.refreshIfNeeded(DCExecutableBinding.java:341)
      at oracle.adf.model.binding.DCIteratorBinding.getRowSetIterator(DCIteratorBinding.java:1634)
      at oracle.jbo.uicli.binding.MyIteratorBinding.initSourceRSI(JUAccessorIteratorDef.java:768)
      at oracle.adf.model.binding.DCIteratorBinding.callInitSourceRSI(DCIteratorBinding.java:1700)
      at oracle.adf.model.binding.DCIteratorBinding.internalGetRowSetIterator(DCIteratorBinding.java:1674)
      at oracle.adf.model.binding.DCIteratorBinding.refresh(DCIteratorBinding.java:4476)
      at oracle.adf.model.binding.DCExecutableBinding.refreshIfNeeded(DCExecutableBinding.java:341)
      at oracle.jbo.uicli.binding.JUCtrlValueBinding.isAttributeUpdateable(JUCtrlValueBinding.java:1707)
      at oracle.jbo.uicli.binding.JUCtrlValueBinding.isAttributeUpdateable(JUCtrlValueBinding.java:1826)
      at oracle.jbo.uicli.binding.JUCtrlValueBinding.isUpdateable(JUCtrlValueBinding.java:2722)
      at oracle.adfinternal.view.faces.model.AdfELResolver._isReadOnly(AdfELResolver.java:130)
      at oracle.adfinternal.view.faces.model.AdfELResolver.isReadOnly(AdfELResolver.java:147)
      at oracle.adfinternal.view.faces.model.AdfELResolverProxy.isReadOnly(AdfELResolverProxy.java:78)
      at com.sun.faces.el.DemuxCompositeELResolver._isReadOnly(DemuxCompositeELResolver.java:293)
      at com.sun.faces.el.DemuxCompositeELResolver.isReadOnly(DemuxCompositeELResolver.java:322)
      at com.sun.el.parser.AstValue.isReadOnly(Unknown Source)
      at com.sun.el.ValueExpressionImpl.isReadOnly(Unknown Source)
      at oracle.adfinternal.view.faces.renderkit.rich.EditableValueRenderer._getUncachedReadOnly(EditableValueRenderer.java:476)
      at oracle.adfinternal.view.faces.renderkit.rich.EditableValueRenderer.cacheReadOnly(EditableValueRenderer.java:406)
      at oracle.adfinternal.view.faces.renderkit.rich.LabeledInputRenderer.beforeEncode(LabeledInputRenderer.java:128)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:510)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeFormItem(PanelFormLayoutRenderer.java:1088)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.access$100(PanelFormLayoutRenderer.java:50)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1604)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1523)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:187)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:318)
      at org.apache.myfaces.trinidad.component.UIXComponent.encodeFlattenedChildren(UIXComponent.java:283)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeChildren(PanelFormLayoutRenderer.java:420)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.encodeAll(PanelFormLayoutRenderer.java:208)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeFormItem(PanelFormLayoutRenderer.java:1127)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.access$100(PanelFormLayoutRenderer.java:50)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1604)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer$FormColumnEncoder.processComponent(PanelFormLayoutRenderer.java:1523)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:187)
      at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:318)
      at org.apache.myfaces.trinidad.component.UIXComponent.encodeFlattenedChildren(UIXComponent.java:283)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer._encodeChildren(PanelFormLayoutRenderer.java:420)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelFormLayoutRenderer.encodeAll(PanelFormLayoutRenderer.java:208)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.encodeCenterFacet(PanelStretchLayoutRenderer.java:878)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer._encodeCenterPane(PanelStretchLayoutRenderer.java:1299)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer._encodeMiddlePanes(PanelStretchLayoutRenderer.java:350)
      at oracle.adfinternal.view.faces.renderkit.rich.PanelStretchLayoutRenderer.encodeAll(PanelStretchLayoutRenderer.java:315)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:641)
      at oracle.adf.view.rich.render.RichRenderer.encodeAllChildrenInContext(RichRenderer.java:3062)
      at oracle.adfinternal.view.faces.renderkit.rich.FormRenderer.encodeAll(FormRenderer.java:274)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:624)
      at oracle.adf.view.rich.render.RichRenderer.encodeChild(RichRenderer.java:3201)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:641)
      at oracle.adf.view.rich.render.RichRenderer.encodeAllChildrenInContext(RichRenderer.java:3062)
      at oracle.adfinternal.view.faces.renderkit.rich.DocumentRenderer.encodeAll(DocumentRenderer.java:1275)
      at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1452)
      at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:511)
      at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:923)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1681)
      at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1677)
      at oracle.adfinternal.view.faces.component.AdfViewRoot.encodeAll(AdfViewRoot.java:91)
      at com.sun.faces.application.view.JspViewHandlingStrategy.doRenderView(JspViewHandlingStrategy.java:431)
      at com.sun.faces.application.view.JspViewHandlingStrategy.renderView(JspViewHandlingStrategy.java:233)
      at org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl$ChangeApplyingVDLWrapper.renderView(ViewDeclarationLanguageFactoryImpl.java:350)
      at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
      at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:273)
      at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:165)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:1035)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:342)
      at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:236)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:509)
      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:300)
      at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
      at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:173)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
      at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:125)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
      at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
      at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
      at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
      at java.security.AccessController.doPrivileged(Native Method)
      at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
      at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
      at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
      at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
      at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
      at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
      at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
      at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
      at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
      at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
      at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
      at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
      at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
      at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="http://tempuri.org/"><env:Header/><env:Body><ns1:ValidateClient/></env:Body></env:Envelope><SOAPProvider> <handleFault> The Web Service call generated a SOAP Fault : [s:Sender] The SOAP action specified on the message, '', does not match the HTTP SOAP Action, 'http://tempuri.org/IAuthenticationService/ValidateClient'.
    <SOAPProvider> <handleFault> Verify if all the necessary parameter values are provided correctly and confirm to the schema constraints as defined in the WSDL
    <SOAPProvider> <handleFault> If the service requires any SOAP headers, Verify that they have been correctly defined in the request
    <SOAPProvider> <handleFault> The Web Service may have generated an exception in an attempt to handle the request, and has returned a SOAP fault to indicate that exception.
    brgds

  • Async webservice with Callback

    Hi Experts,
    How to call a Asynchronous Microsoft webservice(Used callback mechanism) from XI?
    First I have to call the Microsoft webservice, it will return acknowledgement about the status. Again I have to invoke the webservice then it(microsoft) will return the response.
    How to do the above steps using XI? Please share your suggestions
    Regards
    Sara

    Hi Sara,
    Major thing is if ur  webservice accepts some data and gives some response, then both input and output should get imported into XI as seperate message types (Under Messages Tab) as shown in step 1 of ur referred weblog
    /people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi
    So there u must have 2 messages: 1 for request and 1 for response. This depends upon ur wsdl structure. Once u get these messages, u could proceed with ur message mapping
    Steps are,
    1.import the wsdl file in Integration Repository in Integration Objects->external definitions.
    2.then create message types using the imported WSDL request and response.
    3.Other things are as usual.
    using SAP XI we can easily connect to webservices pls chk the links
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/00c36ef6-dab9-2910-6ca9-a96b820de582
    /people/yomeshp.sharma/blog/2006/05/31/integrating-jdedwards-system-with-xi-using-iway-adapter-part--iii
    /people/anton.wenzelhuemer/blog/2006/03/05/integrating-php-and-abap-using-webservices
    /people/thomas.jung3/blog/2004/11/17/bsp-a-developers-journal-part-xiv--consuming-webservices-with-abap
    http://help.sap.com/saphelp_nwpi71/helpdata/en/11/e8179b247e4720882512a04041491d/frameset.htm
    Regards,
    Vinod.

  • How to query WCF webservice and pass a parameter

    I am using SQL Server 2012, and I have use SSRS quite extensively to query SQL Server and Oracle data, but I am currently trying to query a new WCF web service, call a method and pass a parameter.  The XML query language is something I know very little
    about.  
    So far all I have is the URL to the web service like so:  http://webserv-01:8025/Tst_DataService.svc
    When I browse to that url and access the wsdl:  http://webserv-01:8025/Tst_DataService.svc?singleWsdl
    I get a bunch of info like this on the page:
    This XML file does not appear to have any style information associated with it. The document tree is shown below.
    <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy"xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://tempuri.org/" xmlns:wsa10="http://www.w3.org/2005/08/addressing"xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" name="CSS_DataService" targetNamespace="http://tempuri.org/">
    <wsdl:types>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://tempuri.org/">
    <xs:element name="GetAddress">
    <xs:complexType>
    <xs:sequence>
    <xs:element minOccurs="0" name="accountNumber" nillable="true" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:element name="GetAddressResponse">
    <xs:complexType>
    <xs:sequence>
    <xs:element minOccurs="0" name="GetAddressResult" nillable="true" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <wsdl:message name="ICSS_DataService_GetAddress_InputMessage">
    <wsdl:part name="parameters" element="tns:GetAddress"/>
    </wsdl:message>
    <wsdl:message name="ICSS_DataService_GetAddress_OutputMessage">
    <wsdl:part name="parameters" element="tns:GetAddressResponse"/>
    </wsdl:message>
    <wsdl:operation name="GetAddress">
    <wsdl:input wsaw:Action="http://tempuri.org/ICSS_DataService/GetAddress" message="tns:ICSS_DataService_GetAddress_InputMessage"/>
    <wsdl:output wsaw:Action="http://tempuri.org/ICSS_DataService/GetAddressResponse" message="tns:ICSS_DataService_GetAddress_OutputMessage"/>
    </wsdl:operation>
    <wsdl:operation name="GetAddress">
    <soap:operation soapAction="http://tempuri.org/ICSS_DataService/GetAddress" style="document"/>
    <wsdl:input>
    <soap:body use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap:body use="literal"/>
    </wsdl:output>
    </wsdl:operation>
    I am trying to access the GetAddress method which takes one param (accountNumber) and return data for that account number so I can display the individual fields from that method on the report.  
    fyi-
    The XML returned from the webservice will look like this:
    <AddressRec xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">
    <ACCOUNTNUMBER>2070257842</ACCOUNTNUMBER>
    <MY_BILL_ACCT>2070257842</DPL_BILL_ACCT>
    <SA_LINE_1>ABCDEFT                            </SA_LINE_1>
    <SA_LINE_2>8101 SMITHVILLE PKE                </SA_LINE_2>
    <SA_LINE_3>MIAMI, FL 78342                    </SA_LINE_3>
    <SA_LINE_4>                                   </SA_LINE_4>
    <MA_LINE_1>ABCDEFT                            </MA_LINE_1>
    <MA_LINE_2>C/O FACILITY IQ - MS1253 SITE#0604 </MA_LINE_2>
    <MA_LINE_3>P O BOX 9942                       </MA_LINE_3>
    <MA_LINE_4>SPOKANE WA 99210                   </MA_LINE_4>
    <PREM_PHONE>817-454-7150</PREM_PHONE>
    <CD_METER_BILL_UNIT> 4</CD_METER_BILL_UNIT>
    <FL_BILL_BB>N</FL_BILL_BB>
    <FL_NET_METER>N</FL_NET_METER>
    <FL_PIPP>N</FL_PIPP>
    <CapStatus>GENT_PLUS_DMD</CapStatus>
    </AddressRec>
    Any help/guidance is greatly appreciated as I am a bit lost at the moment!

    This is just about the only support I have found on any MS site for this, but so far have been unable to resolve my issue.  Very frustrated as I have found a total 3 relevant articles via Google, they all mention each other as there seems to be no support
    for this dating back to around 2008 and the first few lines of the most helpful article that I have found (http://weblogs.asp.net/jezell/using-wcf-endpoints-with-sql-reporting-services)
    says this:
    Consuming WCF endpointpoints with SQL Reporting Services can be difficult. Most of this difficulty is for two reasons:
    1) SQL Reporting Services XML and web services support is slightly better than a piece of crap.
    2) Documentation for the XML query provider in SQL Reporting Services blows.

  • Is it possible to log to the ULS in a SharePoint WCF WebService which is filed under the ISAPI folder?

    Hi,
    i have build a simple WCF REST JSON WebService inside a SharePoint Solution which is filed under the ISAPI folder. There are many samples on the web which are good and work fine:
    http://ranaictiu-technicalblog.blogspot.de/2011/09/sharepoint-2010-access-wcf-service-with.html
    http://jbarkes.blogspot.de/2014/04/sharepoint-2013-create-custom-wcf-rest.html
    https://jobrocol.wordpress.com/2012/06/03/custom-rest-wcf-service-in-sharepoint-2010/comment-page-1/
    But my question: Do you log to the ULS out of such a Service or does the caller log (i thought about delivering a good explaination of what went wrong)? If the service need to log: How can i log to the ULS from inside a WCF Service which runs inside a SharePoint
    Solution? 

    First, let me say THANK YOU for wanting to log to the SharePoint / ULS logs... FAR FEW SOLUTIONS do this.
    here's my 2010/2013 template : http://www.sbrickey.com/Tech/Blog/Post/Custom_Logging_in_SharePoint_2010
    Scott Brickey
    MCTS, MCPD, MCITP
    www.sbrickey.com
    Strategic Data Systems - for all your SharePoint needs

  • Problem when adding ABAP custom webservice with Visual Studio 2010

    Hi All,
    After creating a webservice for a custom RFC function developed in a ECC6.0 SAP machine, I tried to add it to a Visual Studio 2010 windows aplication (through a web reference connection).
    The sequence I've done is:
    - Create RFC in ABAP, with testing ok
    - Create a WEBSERVICE with the ABAP editor
    - Configured the webservice with SICF with:
         Procedure: Standard
         Logon data: standard R3 user
         Security requirement: Standard
         Authentication: Standard SAP User
    Then, in SOAMANAGER I copied the webservice URL and tried to add it to Visual Studio 2010, but it keeps asking me the user and password. I try to supply the R3 username and password but if fails.
    Why is ECC6.0 asking the user and passord if I've defined a SAP user for the login process?
    Is there any way to disable this?
    Thanks,
    Manuel Dias

    Hello Manuel,
    You can use the following code:
    CredentialCache cache = new CredentialCache();
          cache.Add(new Uri("WEBSERVICEURL:PORTNUMBER/"), "Basic", new NetworkCredential("USERNAME", "PASSWORD"));
    SAP needs a password.
    Kind regards,
    JK

  • XML error when Crystal report calling Webservice with Rampart (ws-security)

    Could you please advise me where I am doing wrong -
    I have designed the report using CR 2008 following a SAP document instructions but getting error. -
    1. Created a Class file and put it in the class folder -
    public class PasswordHandler implements CallbackHandler { public void handle(Callback[] callbacks) throws IOException,UnsupportedCallbackException { for (int i = 0; i < callbacks.length; i++) { WSPasswordCallback pwcb = (WSPasswordCallback)callbacks<i>; pwcb.setPassword("clientPassword"); return; } } -
    2. created wse_policy.xml with below content clientName com.rockalltech.action.reports.PasswordHandler -
    3.Also modified CRConfig.xml with below data com.PasswordHandler -
    Still I am getting Rampart error like below -
    [2009-06-02 18:04:26,977,,FATAL,com.crystaldecisions.data.xml] org.apache.axis2.AxisFault: org.apache.rampart.Rampart at org.apache.axis2.deployment.URLBasedAxisConfigurator.getAxisConfiguration(URLBasedAxisConfigurator.java:77) at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:64) at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContextFromURIs(ConfigurationContextFactory.java:190) at com.crystaldecisions.data.xml.a.b.a(Unknown Source) at com.crystaldecisions.data.xml.a.a.a(Unknown Source) at com.crystaldecisions.data.xml.f.a(Unknown Source) at com.crystaldecisions.data.xml.f.int(Unknown Source) at com.crystaldecisions.data.xml.CRDB_XMLImpl.DbExecuteQuery(Unknown Source) at com.crystaldecisions.reports.queryengine.driverImpl.xml.XMLQueryDefinition.Execute(Unknown Source) Thomas Edited by: thomasjv on Jun 2, 2009 7:15 PM Edited by: thomasjv on Jun 3, 2009 10:45 AM Edited by: thomasjv on Jun 3, 2009 10:45 AM Edited by: thomasjv on Jun 3, 2009 10:46 AM

    Hi!
    Thanks for the help:
    - I give all proxy details. In HTTP and HTTPS proxy tabs too.
    one interesting thing:
    - We publicate the same WebService with HTTP and HTTPS prefix.
    - If I create a proxy for the WS with HTTP, everything is correct and works well.
    - If I create a proxy for the WS with HTTPS, gives the error written the previous posts. (And can't create the logical port with SOAMANAGER)
    I compare the 2 WSDL. It is the same, except the links. (HTTP and HTTPS) all others are same.
    - And why it is possible in both case (HTTP, HTTPS) to create the proxy with SE80 from the WSDL URL? (And after the logical port was failed)

  • Help with Consuming a Webservice with the compact framework

    Hi all,
    i want to consume a SAP WebService within .NET in a smart device application. When I create the proxy, I get the following procedure in the .cs class:
    <i>[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://www.sap.com/_-ICO_-CM_XML_CREATE", RequestElementName="_-ICO_-CM_XML_CREATE", RequestNamespace="urn:sap-com:document:sap:rfc:functions", ResponseElementName="_-ICO_-CM_XML_CREATE.Response", ResponseNamespace="urn:sap-com:document:sap:rfc:functions", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)][return: System.Xml.Serialization.XmlElementAttribute("SUBRC", Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]public string ICOCM_XML_CREATE([System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)] string ORDERNR, [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)] string ROUTE, [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)] string TESTRUN, [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)] string TOURNO, [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)] string XML_FILE_LOCAL, [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)] string XML_FILE_SERVER, [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)] out string XML_STRING) {object[] results = this.Invoke("_ICO_CM_XML_CREATE", new object[] {ORDERNR,ROUTE,TESTRUN,TOURNO,XML_FILE_LOCAL,XML_FILE_SERVER});XML_STRING = ((string)(results[1]));return ((string)(results[0]));}</i>
    When I compile the project I get the follwing error for each occurance of the "Form" Attribute :
    "<b>'System.Xml.Serialization.XmlElementAttribute' does not contain a definition for 'Form'" </b>
    When I try to consume this webservice with a "normal" kind of application, such as a windows-application, everything is ok.
    But when trying to use it with the compact framework, the error occurs.
    Is anyone outhere who can help me?
    Thank you
    Regardings

    It seems that the "Form" property of the XmlElementAttribute was missing in Compact Framework 1.1. It does exist in Compact Framework 2.0.
    You can try removing the "Form=System.Xml.Schema.XmlSchemaForm.Unqualified" entries from the proxy, but I'm not sure of it will still correctly work: For in-parameter it should be Ok to skip "Form=", but for out-paramters and result it could have the effect that no data is received.
    In this case the best option may be to upgrade to Compact Framework 2.0.

  • BPM Send Step with acknowledgment: ID: sender agreement?

    Hello everybody,
    I have a send step in BPM and I expect a acknowledgement from the receiver.
    Do I have to configure a sender agreement?
    Thanks a lot
    Regards Mario

    mario,
    I have tried to use a Sen Synchronous Step to a JDBC adapter from a BPM and it works fine.
    <i>After changing the send step in BPM from async to sync with acknowledgement, I get not response message</i>.
    When you select MODE as SEND SYNCHRONOUS in your Send Step, there is no option to Select ACKNOWLEDGEMENT.
    When you select the MODE as SEND ASYNCHRNOUS , you can have acknowledgements.
    But, as you are using a RECEIVER  JDBC adapter , you need to have a SEND SYNCHRNOUS step that will get the response back from the JDBC adapter. This response will double up as Acknowledgemet.
    You can surround this Send Synchrnous Step with an Exceptuion Handler to handle any exception that might occur.
    Regards,
    Bhavesh

  • WebService with multiple methods

    Hello to everybody.
    I need an help with the develop of a WebService that it comes with 2 methods: I have already created a lot of WebService in JCAPS6 with only one method and everything was gone well. I tried to implement a WebService with 2 or more method but when I tried to deploy the project I always received this error message: "Deploying application in domain failed; Deployment descriptor file META-INF/application.xml in archive [nameOfArchive]. Duplicate unique value [element] declared for identity constraint of element "application"."
    Theese are the steps that I have done:
    1) create an XSD for Input message
    2) create an XSD for Output message
    3) create a WebServiceDefinition with 2 methods "Method1" and "Method2" and all message (input/output) implemented
    4) create a BusinessProcess (bp1) to implement Method1 operation
    5) create a BusinessProcess (bp2) to implement Method2 operation
    6) create a Connectivity map whith "bp1" and "bp2" directly connected with a new "Web Service External Application"
    7) create a deployment profile
    The "Build" operation was gone well but the "Deploy" operation always returned me an exception.
    What can I do to develop this type of WebService?
    Anyone can help me?
    Thank you in advance.
    Best regards,
    Marco Tranquillin

    My collegue found a solution:
    1) create WSDL with 2 or more operations (with input,output and fault messages);
    2) drag & drop "Event Based Decision" element into Business Process;
    3) link "Start" to "Event based decision";
    4) link "Event based decision.end" to "End";
    5) link a scope (with inside what you want) with "Event based decision";
    6) choose your operation from WSDL and drag & drop it OVER the icon with the mail icon;
    7) link operation.reply with the output scope and with the element "Event Based Decision.end";
    Marco Tranquillin

  • Call a Webservice with SAML securty in PI 7.0

    Hi experts,
    I need to call a Webservice with SAML security from PI 7.0, Is It possible? or only It is possible with PI 7.1?
    Thanks in advance,
    Jose Manuel

    Hi Jose,
    Let me answer your questuion first :
    No, using PI 7.0 I dont think its posible..
    Below is a brief overview on SAML.
    SAML: It stands for Security Assertion Markup Language, it is an XML standard which is used to exchange security information between a service provider and an identity provider.
    Why we need it ???
    We have a concept called Principal Propagation in PI 7.1, Principal Propagation allows to securely pass the identity of a user from a sender application to a receiver application. There are various adapters and protocols which support the Principal Propagation and one protocol amongst them is the Webservice Reliable Messaging Protocol or WS-RM. Principal Propagation solution for WS-RM protocol is based on SAML and uses the SAML assertions.
    There are some video recordings available for configuration and you can view the same as below,
    Configure a Trust Relationship between Sender and Integration Server: Exchange sender's digital certificate between sender and Integration Server.
    Configure Trusted Issuer: Map user in the Integration Server, and specify issuer. Default issuer is the sender's system ID, default attester is the sender's certificate.
    Configure Sender Agreement and Sender Communication Channel: In Integration Directory, select SAML Sender Vouches Assertion as authentication method.
    Regards,
    Divya

  • Consume WebService with Assertion Ticket in CE 7.2

    Hi masters
    I am using netweaver ce 7.2 and the problem is that I just can consume webservices with User ID/Password (Basic), but I need to do that with something like Assertion Ticked (like RFC connections)
    Does anybody could say me how to configure a WS connection with assertion ticked ?

    I solved by myself

  • Jdeveloper 11g : Generating webservices with streaming attachments support

    Hi,
    We are trying to create a Java Webservice with support for streaming attachments. In 10g we are using the Attachments API from the oracle.webservices.attachments package.
    In Jdev 10g we were doing it the following way:
    public String getXMLFile(String name,String fileName,Attachments atts) throws RemoteException
    try
    AttachmentFactory factory = AttachmentFactory.newInstance();
    Attachment imageAtt = factory.createAttachment(fileName, "text/plain", new FileInputStream(fileName));
    atts.getOutgoingAttachments().addAttachment(imageAtt);
    } catch (Exception e) {
    System.out.println(e.getMessage());
    return "Hello " + name;
    This webservice is deployed in Oracle AS.
    How do we do it in Jdev 11g and we want to deploy the service in WLS 10.1.3. If we try to create a webservice over this class in Jdev 11g we get the error :"no-arg default constructor not present".
    Any pointers would be highly appreciated.
    Thanks and Regards,
    Pritom

    Hi Vishal,
    I created the class as mentioned in the link. But when I try to test the web service, I get the following error :
    weblogic.application.ModuleException: [HTTP:101216]Servlet: "oracle.apps.ddr.testFileDownload" failed to preload on startup in Web application: "Application7-Project1-context-root".
    javax.xml.ws.WebServiceException: Annotation @com.sun.xml.internal.ws.developer.StreamingAttachment(parseEagerly=true, dir=, memoryThreshold=40000) is not recognizable, atleast one constructor of class com.sun.xml.internal.ws.developer.StreamingAttachmentFeature should be marked with @FeatureConstructor
         at com.sun.xml.ws.binding.WebServiceFeatureList.getWebServiceFeatureBean(WebServiceFeatureList.java:176)
         at com.sun.xml.ws.binding.WebServiceFeatureList.parseAnnotations(WebServiceFeatureList.java:148)
         at com.sun.xml.ws.binding.WebServiceFeatureList.<init>(WebServiceFeatureList.java:113)
    Any ideas on how I can make it work ?
    Thanks and Regards,
    Pritom

  • How to invoke a WebService with more than 1 value in parameter?

    I have a webservice, with a request parameter as an Array of String.
    In an invoing xml it should looks like:
    <GetPersonsData_Request>
    <request>
    <PersonIdList>
    <string> 111 </string>
    <string> 222 </string>
    <string> 333 </string>
    </PersonIdList>
    A problem i have:
    How I can to assign a differents values to this list?
    i assigned first element directly and then tried to add a new one with append:
    <bpelx:append>
    <bpelx:from>'12345'</bpelx:from>
    <bpelx:to>$GetPersonsData_Request.parameters/ns2:request/ns5:PersonIdList</bpelx:to>
    </bpelx:append>
    I receive:
    <GetPersonsData_Request>
    <request>
    <PersonIdList>
    <string> 111 </string>
    '12345'
    </PersonIdList>
    </request>
    Its added as a single string, no as a Structure Element.
    What i missed???

    ok, i tried.
    add a new string type variable:
    <variable name="string" element="ns6:string"/>
    next assigned to $string my text and tried to append it to list:
    <bpelx:append>
    <bpelx:from>$string</bpelx:from>
    <bpelx:to>$GetPersonsData_Request.parameters/ns2:request/ns5:PersonIdList</bpelx:to>
    </bpelx:append>
    and as a result i receive a correct structure:
    <GetPersonsData_Request>
    <request>
    <PersonIdList>
    <string> 111 </string>
    <string> 12345 </string>
    </PersonIdList>
    </request>
    BUT!!! When i next use a countNode:
    <assign name="ac">
    <copy>
    <from>ora:countNodes('GetPersonsData_Request','parameters','ns2:request/ns5:PersonIdList/ns8:string') - it shows me 1 !!!
    <to>$counter</to>
    </copy>
    In EM:
    Updated variable "counter"
    <payload>
    <counter>
    <counter xsi:type="def:int">1</counter>
    </counter>
    Why???
    Is it really correct example and it should to work?

Maybe you are looking for

  • Variable size of Box in SAP Script

    Hi Gurus, My requirement is to border the data printed in main window with lines. I am using the BOX command but problem is that on every page the number of rows varies. How can I keep the length of the box in main window variable? Regards, Charles

  • Select query in badi

    Hi,   I want to use select statement in one of the methods of badi and use internal tables to hold data. It is not allowing to use internal tables with header. Can any body please give me an example. Thanks in Advance.

  • ITunes Store accsess

    Well I cant get into the iTunes music store and the message says:Cannot Complete music store request. The store may be busy Check your internet connection or try again later And I have wireless internet and that should not affect anything.I can use t

  • Reviewing Slow moving material and sign off

    In our industry there is a lot of engineering type spares that don't move for 5 years + so everytime MC46 report is run these material are always at the top. We use MC46 report to give to the engineers to review the materials but they are sick of goi

  • Trying to print in Landscape.

    I'm trying to pring something in landscape but the printing starts at the bottom and is shifted to the right about 3 inches. What can I do to start at the top of the page and left aligned? Thanks g2d.translate( format.getImageableX(), format.getImage