Soap in APEX

Hy experts,
Does anybody have some experience with sending a pdf from a web service to a printer?
I think I will need a soap call for this purpose.
Is this possible with APEX?
I would appreciate some hints.
Kind regards,
ilb

If you can stick with APEX's reporting capabilities, read Oracle's white paper:  http://www.oracle.com/technetwork/developer-tools/apex/learnmore/custom-pdf-reports-1953918.pdf
From there:
APEX_UTIL.download_print_document() is used to allow the client machine to 'download' the PDF (which will allow the end-user to manually print the PDF)
APEX_UTIL.get_print_document() will return a BLOB with the PDF
APEX_WEB_SERVICE.BLOB2CLOBBase64() already exists
Remember, a server (eg Oracle, GlassFish, APEX, etc.) is not allowed to run code on client machines.
You'll have to "print from the server".
As you have suggested, building a SOAP Service Provider could work.
However, I'm more familiar with FILE_UTL and DBMS_SCHEDULER than creating SOAP Providers.
This is how I would solve it:
Write the PDF BLOB to DB file system using FILE_UTL
Run a batch script that prints the file using DBMS_SCHEDULER (lp on unix, acrord.exe on windows.  google to find proper command line switches)
I believe the Oracle Scheduler Agent would need to be installed and configured. (part of Oracle Client Install CD)
suggestion
Printers don't always act nicely
wrap all of the code in a procedure (in a package) so that it can be re-ran with the click of a button (on any page) when the printer decides to eat the paper.
MK

Similar Messages

  • Have a requirement to consume a  SOAP webservice (wsdl file) using apex

    Hi,
    I am using Application Express 4.2.2.00.11.
    My requirement is to consume a soap web service (wsdl file).
    I am pasting the wsdl fille.
    <wsdl:message name="FulfillOrderResponseRequestMessage">
    <wsdl:part name="payload" element="ffebm:ProcessFulfillmentOrderNotificationEBM"/>
    </wsdl:message>
    <wsdl:message name="FulfillOrderResponseResponseMessage">
    <wsdl:part name="payload" element="ffebm:ProcessFulfillmentOrderNotificationResponseEBM"/>
    </wsdl:message>
    <wsdl:portType name="FulfillOrderResponse">
    <wsdl:operation name="process">
    <wsdl:input message="client:FulfillOrderResponseRequestMessage"/>
    </wsdl:operation>
    </wsdl:portType>
    <wsdl:portType name="FulfillOrderResponseCallback">
    <wsdl:operation name="processResponse">
    <wsdl:input message="client:FulfillOrderResponseResponseMessage"/>
    </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="FulfillOrderResponseBinding" type="client:FulfillOrderResponse">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsp:PolicyReference URI="#wss11_saml_or_username_token_with_message_protection_service_policy" wsdl:required="false"/>
    <wsp:PolicyReference URI="#wsaddr_policy" wsdl:required="false"/><wsdl:operation name="process">
    and the xml file looks like this
    <FulfillOrderResponseRequestMessage>
    <part  name="payload">
    <coreforderrocessFulfillmentOrderNotificationEBM>
    <corecom:EBMHeader>
    <corecom:EBMID>2d383135353332303931343330383630</corecom:EBMID>
    <corecom:EBMName>{_http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/FulfillmentOrder/V1}ProcessFulfillmentOrderNotificationEBM</corecom:EBMName>
    <corecom:EBOName>{_http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/FulfillmentOrder/V1}ProcessFulfillmentOrderNotificationEBO</corecom:EBOName>
    <corecom:CreationDateTime>2013-12-27T13:29:04.530+05:30</corecom:CreationDateTime>
    <corecom:VerbCode>Update</corecom:VerbCode>
    <corecom:MessageProcessingInstruction>
    <corecom:EnvironmentCode>PRODUCTION</corecom:EnvironmentCode>
    </corecom:MessageProcessingInstruction>
    <corecomender>
    <corecom:ID  schemeAgencyID="GPR">EBSVIS</corecom:ID>
    <corecomenderMessageID/>
    <corecom:CallingServiceName>{_http://xmlns.oracle.com/ApplicationBusinessFlow/OrderToCash/ProcessFulfillmentOrderNotificationEbizToFusionDOOABF/V1}ProcessFulfillmentOrderNotificationEbizToFusionDOOABF</corecom:CallingServiceName>
    <corecom:WSAddress>
    <ns1:ReplyTo>
    <ns1:Address/>
    <ns1ortType>ProcessFulfillmentOrderNotificationEbizToFusionDOOABF</ns1ortType>
    <ns1erviceName>ProcessFulfillmentOrderNotificationEbizToFusionDOOABF</ns1erviceName>
    </ns1:ReplyTo>
    <ns1:FaultTo>
    <ns1:Address/>
    <ns1ortType>ProcessFulfillmentOrderNotificationEbizToFusionDOOABF</ns1ortType>
    <ns1erviceName>ProcessFulfillmentOrderNotificationEbizToFusionDOOABF</ns1erviceName>
    </ns1:FaultTo>
    </corecom:WSAddress>
    </corecomender>
    <corecom:Target>
    <corecom:ID  schemeAgencyID="GPR">GPR</corecom:ID>
    </corecom:Target>
    <corecom:BusinessScope/>
    <corecom:EBMTracking>
    <corecomequenceNumber>1</corecomequenceNumber>
    <corecom:ExecutionUnitName>ProcessFulfillmentOrderNotificationEbizToFusionDOOABF</corecom:ExecutionUnitName>
    <corecom:ImplementationCode>BPEL</corecom:ImplementationCode>
    <corecom:ActivityDateTime>2013-12-27T13:29:04.531+05:30</corecom:ActivityDateTime>
    </corecom:EBMTracking>
    <xacml-context:Request/>
    </corecom:EBMHeader>
    <coreforderataArea>
    <corecomrocess  operation="ProcessFulfillmentOrderNotification"/>
    <coreforderrocessFulfillmentOrderNotification>
    <corecom:Identification>
    <corecom:BusinessComponentID/>
    <corecom:ID  schemeID="ORDER_NUMBER"  schemeAgencyID="EBSVIS">66498</corecom:ID>
    <corecom:ApplicationObjectKey>
    <corecom:ID  schemeID="HEADER_ID"  schemeAgencyID="EBSVIS">228338</corecom:ID>
    </corecom:ApplicationObjectKey>
    <corecom:AlternateObjectKey>
    <corecom:ID  schemeAgencyID="GPR">300000030196926</corecom:ID>
    </corecom:AlternateObjectKey>
    <corecom:AlternateObjectKey>
    <corecom:ID  schemeID="ExternalInteractionKey">228338</corecom:ID>
    </corecom:AlternateObjectKey>
    </corecom:Identification>
    <coreforder:CurrencyCode  listAgencyID="EBSVIS">USD</coreforder:CurrencyCode>
    <coreforder:TypeCode  listAgencyID="GPR">ORDER</coreforder:TypeCode>
    <corecom:BusinessUnitReference>
    <corecom:BusinessUnitIdentification>
    <corecom:BusinessComponentID/>
    <corecom:ApplicationObjectKey>
    <corecom:ID  schemeID="ORG_ID"  schemeAgencyID="EBSVIS">204</corecom:ID>
    </corecom:ApplicationObjectKey>
    <corecom:AlternateObjectKey>
    <corecom:ID  schemeAgencyID="GPR">300000028235904</corecom:ID>
    </corecom:AlternateObjectKey>
    </corecom:BusinessUnitIdentification>
    </corecom:BusinessUnitReference>
    <coreforder:FulfillmentOrderLine  actionCode="UPDATE">
    <corecom:Identification>
    <corecom:BusinessComponentID/>
    <corecom:ID  schemeID="LINE_NUMBER"  schemeAgencyID="EBSVIS">1</corecom:ID>
    <corecom:ApplicationObjectKey>
    <corecom:ID  schemeID="LINE_ID"  schemeAgencyID="EBSVIS">419300</corecom:ID>
    </corecom:ApplicationObjectKey>
    <corecom:AlternateObjectKey>
    <corecom:ID  schemeAgencyID="GPR">300000030196928</corecom:ID>
    </corecom:AlternateObjectKey>
    <corecom:AlternateObjectKey>
    <corecom:ID  schemeID="ExternalInteractionKey">419300</corecom:ID>
    </corecom:AlternateObjectKey>
    </corecom:Identification>
    <coreforderrderQuantity>2</coreforderrderQuantity>
    <coreforder:CurrencyCode  listAgencyID="EBSVIS">USD</coreforder:CurrencyCode>
    <corecomtatus>
    <corecom:Code  listAgencyID="GPR">AWAIT_SHIP</corecom:Code>
    </corecomtatus>
    <corecom:ItemReference>
    <corecom:ItemIdentification>
    <corecom:BusinessComponentID/>
    <corecom:ApplicationObjectKey>
    <corecom:ID  schemeAgencyID="EBSVIS">225</corecom:ID>
    </corecom:ApplicationObjectKey>
    </corecom:ItemIdentification>
    <corecom:TypeCode  listAgencyID="GPR">4</corecom:TypeCode>
    </corecom:ItemReference>
    <coreforder:FulfillmentOrderSchedule  actionCode="UPDATE">
    <corecom:Identification>
    <corecom:BusinessComponentID/>
    <corecom:ApplicationObjectKey>
    <corecom:ID  schemeID="LINE_ID"  schemeAgencyID="EBSVIS">419300</corecom:ID>
    </corecom:ApplicationObjectKey>
    <corecom:AlternateObjectKey>
    <corecom:ID  schemeID="FulfillLineId"  schemeAgencyID="GPR">300000030196928</corecom:ID>
    </corecom:AlternateObjectKey>
    <corecom:AlternateObjectKey>
    <corecom:ID  schemeID="ExternalInteractionKey">419300</corecom:ID>
    </corecom:AlternateObjectKey>
    </corecom:Identification>
    <coreforder:FreightTermCode  listAgencyID="EBSVIS">Paid</coreforder:FreightTermCode>
    <coreforderrderQuantity>2</coreforderrderQuantity>
    <coreforderromisedShipDateTime>2013-12-27T19:30:00.000+00:00</coreforderromisedShipDateTime>
    <corefordercheduledShipDateTime>2013-12-27T19:30:00.000+00:00</corefordercheduledShipDateTime>
    <corecomtatus>
    <corecom:Code  listAgencyID="GPR">AWAIT_SHIP</corecom:Code>
    </corecomtatus>
    <corecom:UnitListPrice>
    <corecom:Amount>100</corecom:Amount>
    </corecom:UnitListPrice>
    <corecom:UnitSalePrice>
    <corecom:Amount>100</corecom:Amount>
    </corecom:UnitSalePrice>
    <corecom:CarrierPartyReference>
    <corecomartyIdentification>
    <corecom:ApplicationObjectKey>
    <corecom:ID  schemeAgencyID="EBSVIS"/>
    </corecom:ApplicationObjectKey>
    </corecomartyIdentification>
    </corecom:CarrierPartyReference>
    <coreforder:FulfillmentOrderScheduleTax>
    <corecom:Tax>
    <corecom:Amount>0</corecom:Amount>
    </corecom:Tax>
    </coreforder:FulfillmentOrderScheduleTax>
    <coreforder:FulfillmentOrderItem>
    <corecom:ItemReference>
    <corecom:ItemIdentification>
    <corecom:BusinessComponentID/>
    <corecom:ApplicationObjectKey>
    <corecom:ID  schemeAgencyID="EBSVIS">225</corecom:ID>
    </corecom:ApplicationObjectKey>
    </corecom:ItemIdentification>
    <corecom:TypeCode  listAgencyID="GPR">4</corecom:TypeCode>
    </corecom:ItemReference>
    </coreforder:FulfillmentOrderItem>
    </coreforder:FulfillmentOrderSchedule>
    </coreforder:FulfillmentOrderLine>
    </coreforderrocessFulfillmentOrderNotification>
    </coreforderataArea>
    </coreforderrocessFulfillmentOrderNotificationEBM>
    </part>
    </FulfillOrderResponseRequestMessage>
    I need to pass few of the above parameters from database using apex.
    Any help will be very thankfull.
    Please if anything more is required to be provided from my side
    Thanks
    Nilesh

    I nee to pass values to few of the above parameters.
    Please inform if anything more is required from my end.

  • SOAP Based Webservices in Apex

    Can you please let me if we can create a SOAP Based Webservices in Apex.  Apex will be the provider of the webservice and my other 3rd party application will be consumer.

    Thanks for the reply.
    Now I am slightly understanding about web services. For example, If I place an order for an digital camera from a shopping site, can I route the order information from shopping site to APEX and from APEX can I process it further by integrating with paypal for online payments and get acknowledge from paypal that payment has been made and provide an acknowledgment to shopping site from APEX that order has been shipped to your shipping address. Is this possible? Please let me know regarding this..
    Thanks and Regards,
    Mahesh

  • SOAP Response Message Format for APEX Webservice

    Hi,
    Can anyone from Oracle post it here about the exact format of the response message from webservice in order to build a report on top of this?
    I have this format which is not working
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Body>
    <getRecordsResponse xmlns="http://www.service-now.com/incident">
    <getRecordsResult>
    <active>0</active>
    <activity_due/>
    <approval>not requested</approval>
    <approval_set/>
    <assigned_to>f298d2d2c611227b0106c6be7f154bc8</assigned_to>
    <assignment_group/>
    <business_duration>1970-01-01 00:00:00</business_duration>
    <business_stc>0</business_stc>
    <impact>3</impact>
    <incident_state>7</incident_state>
    <knowledge>0</knowledge>
    <location/>
    <made_sla>1</made_sla>
    <notify>1</notify>
    <number>INC0000060</number>
    <opened_at>2012-06-15 04:14:15</opened_at>
    <opened_by>glide.maint</opened_by>
    <order>0</order>
    <parent/>
    <parent_incident/>
    <priority>4</priority>
    <problem_id/>
    <reassignment_count>0</reassignment_count>
    <reopen_count>0</reopen_count>
    <resolved_at/>
    <resolved_by/>
    <rfc/>
    <severity>3</severity>
    <short_description>Computer running slow</short_description>
    </getRecordsResult>
    </getRecordsResponse>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    But below format is working.
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Body>
    <getRecordsResponse xmlns:tns1="http://www.service-now.com/incident">
    <tns1:getRecordsResult>
    <tns1:active>0</active>
    <tns1:activity_due/>
    <tns1:approval>not requested</approval>
    <tns1:approval_set/>
    <tns1:assigned_to>f298d2d2c611227b0106c6be7f154bc8</assigned_to>
    <tns1:assignment_group/>
    <tns1:business_duration>1970-01-01 00:00:00</business_duration>
    <tns1:business_stc>0</business_stc>
    <tns1:impact>3</impact>
    <tns1:incident_state>7</incident_state>
    <tns1:knowledge>0</knowledge>
    <tns1:location/>
    <tns1:made_sla>1</made_sla>
    <tns1:notify>1</notify>
    <tns1:number>INC0000060</number>
    <tns1:opened_at>2012-06-15 04:14:15</opened_at>
    <tns1:opened_by>glide.maint</opened_by>
    <tns1:order>0</order>
    <tns1:parent/>
    <tns1:parent_incident/>
    <tns1:priority>4</priority>
    <tns1:problem_id/>
    <tns1:reassignment_count>0</reassignment_count>
    <tns1:reopen_count>0</reopen_count>
    <tns1:resolved_at/>
    <tns1:resolved_by/>
    <tns1:rfc/>
    <tns1:severity>3</severity>
    <tns1:short_description>Computer running slow</short_description>
    </tns1:getRecordsResult>
    </getRecordsResponse>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Please let us know so that can work with third parties to integrate webservices
    Thanks,
    Mehabub

    Here is the query that apex is using to extract the individual element
    select extractValue(value(t),'/*/number','xmlns="http://www.service-now.com/incident"') "number"
    , extractValue(value(t),'/*/severity','xmlns="http://www.service-now.com/incident"') "severity"
    from wwv_flow_collections c,
    table(xmlsequence(extract(c.xmltype001,'//getRecordsResponse/getRecordsResult','xmlns="http://www.service-now.com/incident"'))) t
    where c.collection_name = 'P_RESULTS21'FYI, that extraction method is deprecated starting with 11.2, though APEX still uses it for backward compatibility.
    That query works when applied on the first SOAP response you posted :
    SQL> select extractValue(value(t),'/*/number','xmlns="http://www.service-now.com/incident"') "number"
      2       , extractValue(value(t),'/*/severity','xmlns="http://www.service-now.com/incident"') "severity"
      3  from wwv_flow_collections c,
      4       table(
      5         xmlsequence(
      6           extract(c.xmltype001,'//getRecordsResponse/getRecordsResult','xmlns="http://www.service-now.com/incident"')
      7         )
      8       ) t
      9  where c.collection_name = 'P_RESULTS21';
    number                   severity
    INC0000060               3
    The second SOAP response is not even well-formed so I doubt the query works on it as you claim it does :
    <tns1:active>0</active>
    ...

  • APEX 3.0 Web Service OWS-04052 unrecognized operation SOAP Envelop

    Hey,
    I run into a problem with WebServices. Short, I implemented a WebService with JDeveloper and now I would like to create ws references in APEX. The ws is working 100% correct so the problem is, that APEX creates a soap envelop which is not 100% correct...
    So blabla here it is what APEX generates for request:
    <?xml version='1.0' encoding='UTF-8'?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <SOAP-ENV:Body>
    <ns1:projectId
    xmlns:ns1="http://impl.planning.services.model.azima.promatis.com/">2</ns1:projectId>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Now the request which should be sended: (from EM Console)
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body xmlns:ns1="http://impl.planning.services.model.azima.promatis.com/">
    <ns1:getAllElementsOfProject>
    <ns1:projectId>2</ns1:projectId>
    </ns1:getAllElementsOfProject>
    </soap:Body>
    </soap:Envelope>
    Compare and you will see that the operation info is missing. So it's almost the same but the operation 'getAllElementsOfProject' isn't in the request.
    If it helps I could also send the wsdl if requiered for help.
    So I run into the following error:
    <?xml version="1.0" encoding="UTF-8"?>
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns0="http://impl.planning.services.model.azima.promatis.com/"><env:Body><env:Fault><faultcode>env:Client</faultcode><faultstring>Caught exception while handling request: unrecognized operation: {http://impl.planning.services.model.azima.promatis.com/}projectId</faultstring></env:Fault></env:Body></env:Envelope>
    From Response
    2007-05-22 16:41:01.765 WARNING OWS-04052 Bestimmen der Vorgangs-ID aus SOAP-Nachricht nicht m÷glich.
    In OC4J (sorry german - means that operation-id couldn't be identified)
    Do you have any ideas how I could configure this? Before you try to say: make it manually, I won't, because it have to worked automatically!
    Thanks
    Frank

    Ok I tried it with new Version JAX-WS 2.0.1. There is a new annotation where the type of the Enpoint or WebService itseld can be set:
    @BindingType( value=SOAPBinding.SOAP11HTTP_BINDING )
    So I tried now with SOAP 1.1 but APEX still don't put the operation name in the SOAP request envelope...
    Now do anyone out there have a clue what else could be wrong? Did I maybe forget an annotation parameter somewhere or something else? So I do it something like this:
    @Stateless
    @WebService( name="XXX" )
    @BindingType( value=SOAPBinding.SOAP11HTTP_BINDING )
    public class XXXImpl implements Ixxx {
    @EJB Ia a;
    @EJB Ib b;
    @WebMethod( operationName="foo" )
    public ADaoObjectWithNoComplexAttributes foo( Long someId ) {
    // do it!
    return theDao;
    I am appreciate for any help!
    Thanks
    Message was edited by:
    promatis

  • APEX soap web service

    How do i get a response from a soap webservice and insert it into a DB

    How do i get a response from a soap webservice and insert it into a DB

  • WSDL issue in Apex 4.0

    Hi All
    I am just beginning to broach the area of web services with APEX and running into some issues..
    Environment I am working in:
    Apex 4.0
    Oracle 11.2.0.1.0 database
    OHS Server
    Unix OS
    I have the following wdsl from a web service developed in house here:
    http://appclstr1.oft.state.nyenet/wilma/getsetdataws.asmx?op=getDataNoSerialization
    partial code -
    <?xml version="1.0" encoding="utf-8" ?>
    - <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://sdc.oft.state.nyenet/wilma" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://sdc.oft.state.nyenet/wilma" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
    - <wsdl:types>
    <wsdl:operation name="getlargeDataNoSerialization">
    <soap:operation soapAction="http://sdc.oft.state.nyenet/wilma/getlargeDataNoSerialization" style="document" />
    - <wsdl:input>
    <soap:body use="literal" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" />
    </wsdl:output>
    </wsdl:operation>
    Here is where the problem starts.
    1) I wanted to use Apex-Shared Componments- Create Web Service Reference - provide wsdl
    No luck I received the error below. (Also when I tried to create it manually within Apex I got the same error)
    Error
    ORA-20001: The webservice was unreachable because either the URL you supplied was invalid, your environment requires a valid proxy server address for HTTP requests, or a wallet needs to be configured for HTTPS requests.
    Error sending request.
    Also when choosing one from the dropdown like amazon I get the same error.
    2) I've search forums etc.. on the problem. Many say it's a problem with the ACL?? See below
    Is is true that a host can only have one acl?
    select host, lower_port, upper_port, acl from dba_network_acls order by acl;
    HOST LOWER_PORT UPPER_PORT ACL
    * */sys/acls/power_users.xml*
    smtp.nysemail.nyenet 2525 2525 /sys/acls/utlpkg.xml
    smtp.nysemail.nyenet /sys/acls/utlpkg.xml
    * 20 5000 /sys/acls/utlpkg.xml
    select acl, principal, privilege, is_grant from dba_network_acl_privileges;
    ACL PRINCIPAL PRIVILEGE IS_GRANT
    /sys/acls/utlpkg.xml CONNECT connect true
    /sys/acls/utlpkg.xml ML_TEST connect true
    /sys/acls/utlpkg.xml QYDDBA connect true
    /sys/acls/utlpkg.xml ACTR connect true
    /sys/acls/utlpkg.xml GINODBA connect true
    /sys/acls/utlpkg.xml CMSDBA connect true
    /sys/acls/utlpkg.xml APEX_040000 connect true
    /sys/acls/power_users.xml APEX_040000 connect true
    3) Additonal Details - I can open the url (webservice) in my browser no problem, I can append the ?wsdl and get the soap info which I used in my attempt to create one manually. It is not https so i do not need to create a wallet.
    I also tried to copy my proxy server info from my broswer into the apex application definition page and try to create the web reference - did not work.
    Query on the db-
    SELECT DBMS_XDB.getPrivileges('/xdbconfig.xml').getCLOBVal() FROM DUAL;
    DBMS_XDB.GETPRIVILEGES('/XDBCONFIG.XML').GETCLOBVAL()
    <privilege xmlns="http://xmlns.oracle.com/xdb/acl.xsd" xmlns:xsi="http://www.w3.
    This is all new terriority for me so any help would be greatly appreciated.

    Hi Again
    I have more info on the issue...
    I tried to reach the the webservice from OAS/HTTP with mod_plsql directly. At first I was not able to.
    A firewall request was completed and now I am sure the http server can reach the webservice in question.
    Unfortunatley creating a webservice either manually or through a wsdl is still not working! Please Help , what else can I check.
    Also
    I'm confused ..taken from APEX 4.0 online documenation
    SOAP offers two primary advantages:
    SOAP is based on XML, and therefore easy to use.
    SOAP messages are not blocked by firewalls because this protocol uses simple transport protocols, such as HTTP.
    I can't see why it would be a firewall issue based on the statement above.
    Thanks Again
    Moe
    -- just added to my post. Issue still unresolved
    I'vw been trying to troubleshoot it myself.
    From my database server -
    I'm not able to use utl_http - example
    set serveroutput on
    DECLARE
    req utl_http.req;
    resp utl_http.resp;
    value VARCHAR2(32000);
    BEGIN
    req := utl_http.begin_request('http://www.psoug.org');
    resp := utl_http.get_response(req);
    value := utl_http.request('http://www.psoug.org/');
    dbms_output.put_line(value);
    utl_http.end_response(resp);
    EXCEPTION
    WHEN utl_http.end_of_body THEN
    utl_http.end_response(resp);
    END;
    error received is
    ERROR at line 1:
    ORA-29273: HTTP request failed
    ORA-06512: at "SYS.UTL_HTTP", line 1130
    ORA-12535: TNS:operation timed out
    ORA-06512: at line 6
    Using ping
    ping www.psoug.orgPING 66.221.222.85: 64 byte packets
    ----66.221.222.85 PING Statistics----
    16 packets transmitted, 0 packets received, 100% packet loss
    However I'm confused if I'm using Oracle Application Server 10g Release 3 (10.1.3.1)/Apache
    Should I need to modify the firewall on the database side to access a webservice? Does it need to be port 80?
    Getting frustrated by my ignorance
    Thanks
    Moe
    Edited by: user570478 on Jul 28, 2011 2:23 PM

  • How to Extract data from a Request management tool to Apex to avoid working on Excel reports

    Client uses a ticketing tool,I donot know what is the database for the tool,but I would like to know the best way to extract data from the tool to pex so that we can eliminate working on Excel reports.These excel reports are basically the open request log,resolved tickets,aging tickets etc,currently we work on many excel reports,can we achieve this in Apex ,if so how do we achieve this.Then we would like to use this report and prepare multiple charts,how the above two requirements can be mapped.

    A very important function for the system will be - one sends an email in certain format to a dummy email address, then some data will be extracted from the email based on the pre-defined format and inserted into the database my APEX application is using.
    Any idea on how I can make it happen please? I agree that this is not really an Apex question, but a more general PL/SQL question.
    There are many approaches, all boiling down to one of these two:
    1) Push: Some process in the mail server sends/forwards information to your database when new mail arrives.
    The language/tools used to do this, and the way it would connect to your database, depends on your environment (what is your operating system? mail server? existing middleware/tools? security protocols used? etc.).
    2) Pull: Some process in the database contacts the mail server and polls for new information.
    Ie. some PL/SQL code would communicate with the mail server. Again, it depends on your environment (what is your operating system? mail server? existing middleware/tools? security protocols used? etc.).
    For example, if you are using Exchange 2007 or newer, it has a web services API:
    http://msdn.microsoft.com/en-us/library/dd877045.aspx
    The challenge here will be to build the correct SOAP requests from PL/SQL, and to handle the security protocols used.
    - Morten
    http://ora-00001.blogspot.com

  • How to extract data from a dummy email address and insert them into APEX db

    Hi All,
    I am developing a project management system on APEX 4.1.0.00.21.
    A very important function for the system will be - one sends an email in certain format to a dummy email address, then some data will be extracted from the email based on the pre-defined format and inserted into the database my APEX application is using.
    Any idea on how I can make it happen please?
    Thanks,
    Christine

    A very important function for the system will be - one sends an email in certain format to a dummy email address, then some data will be extracted from the email based on the pre-defined format and inserted into the database my APEX application is using.
    Any idea on how I can make it happen please? I agree that this is not really an Apex question, but a more general PL/SQL question.
    There are many approaches, all boiling down to one of these two:
    1) Push: Some process in the mail server sends/forwards information to your database when new mail arrives.
    The language/tools used to do this, and the way it would connect to your database, depends on your environment (what is your operating system? mail server? existing middleware/tools? security protocols used? etc.).
    2) Pull: Some process in the database contacts the mail server and polls for new information.
    Ie. some PL/SQL code would communicate with the mail server. Again, it depends on your environment (what is your operating system? mail server? existing middleware/tools? security protocols used? etc.).
    For example, if you are using Exchange 2007 or newer, it has a web services API:
    http://msdn.microsoft.com/en-us/library/dd877045.aspx
    The challenge here will be to build the correct SOAP requests from PL/SQL, and to handle the security protocols used.
    - Morten
    http://ora-00001.blogspot.com

  • APEX 3.0.1 fails to consume Web Services

    I am running APEX 3.0.1 in a 10.2.0.2 EE database on Windows XP.
    I am trying to get APEX to use a simple web service that I have created in BPEL. The web service functions perfectly in SoapUI.
    APEX seems to be using the response document rather than the request document when invoking the service.
    Here is the request generated by APEX:
    <inputVariable><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload"><ns1:Item xmlns:ns1="http://TargetNamespace.com/GetItemResponse">
    <ns1:SETID>SHARE</ns1:SETID>
    <ns1:ITEM_ID>810002</ns1:ITEM_ID>
    </ns1:Item>
    </part></inputVariable>
    Here is the request generated by SoapUI:
    <inputVariable><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload"><get:Item xmlns:get="http://TargetNamespace.com/GetItemRequest">
    <get:SETID>SHARE</get:SETID>
    <get:ITEM_ID>810002</get:ITEM_ID>
    </get:Item>
    </part></inputVariable>
    The primary difference is that APEX is referencing GetItemResponse rather than GetItemRequest.
    Here is the WSDL:
    <definitions name="ItemGet" targetNamespace="http://xmlns.oracle.com/ItemGet" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://xmlns.oracle.com/ItemGet" xmlns:ns1="http://TargetNamespace.com/GetItemRequest" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:ns2="http://TargetNamespace.com/GetItemResponse" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:client="http://xmlns.oracle.com/ItemGet">
    <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://TargetNamespace.com/GetItemRequest" schemaLocation="GetItemRequest.xsd"/>
    </schema>
    <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://TargetNamespace.com/GetItemResponse" schemaLocation="GetItemResponse.xsd"/>
    </schema>
    </types>
    <message name="ItemGetRequestMessage">
    <part name="payload" element="ns1:Item"/>
    </message>
    <message name="ItemGetResponseMessage">
    <part name="payload" element="ns2:Root-Element"/>
    </message>
    <portType name="ItemGet">
    <operation name="process">
    <input message="tns:ItemGetRequestMessage"/>
    <output message="tns:ItemGetResponseMessage"/>
    </operation>
    </portType>
    <binding name="ItemGetBinding" type="tns:ItemGet">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="process">
    <soap:operation style="document" soapAction="process"/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    </binding>
    <service name="ItemGet">
    <port name="ItemGetPort" binding="tns:ItemGetBinding">
    <soap:address location="http://xpvm.us.oracle.com:8888/orabpel/default/ItemGet/1.0"/>
    </port>
    </service>
    <plnk:partnerLinkType name="ItemGet">
    <plnk:role name="ItemGetProvider">
    <plnk:portType name="tns:ItemGet"/>
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>
    As you can see from the WSDL, the input message is tns:ItemGetRequestMessage and the output is tns:ItemGetResponseMessage.
    The APEX design time environment is accurately recognizing ItemRequest for the input parameters and ItemResponse for the output parameters.
    It looks like a potential APEX bug.
    Anyone run into this? Anyone have any suggestions?
    Thanks!
    Kurt

    Kurt:
    It does look like a bug. I can offer the following workaround.
    Create a Manual Web reference as described here:
    http://download-west.oracle.com/docs/cd/B32472_01/doc/appdev.300/b32471/advnc.htm#BABCBBHJ
    section "Creating a Web Service Manually"
    based on the WSDL below, you would enter the following for URL and Action:
    URL: http://xpvm.us.oracle.com:8888/orabpel/default/ItemGet/1.0
    Action: process
    Also, enter a name for an APEX collection to store the response, such as GET_ITEM_RESPONSE.
    For the SOAP Envelope, paste in the one that works from SOAPUI or use BPEL Control to get the envelope. Instead of static values for the parameters you use #ITEM_NAME# substitutions. So if the page generated by the wizard was on page 1, it would look something like:
    <inputVariable><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload"><get:Item xmlns:get="http://TargetNamespace.com/GetItemRequest">
    <get:SETID>#P1_SETID#</get:SETID>
    <get:ITEM_ID>#P1_ITEM_ID#</get:ITEM_ID>
    </get:Item>
    </part></inputVariable>
    (with the proper SOAP Envelope wrapper around it)
    Now go to page 1 (assuming that was the page created by the wizard) and remove the current process of type Web service on that page. Add a new process of type Web service, choose Manual, and choose the manual one you created above.
    Follow the instructions in the section titled "Displaying Web Service Results in a Report" at the link above to create a report on the result.
    There is also an advanced tutorial using Manual Web references you may wish to review:
    http://download-west.oracle.com/docs/cd/B32472_01/doc/appdev.300/b32469/web_serv.htm#CHDEFEGH
    Hope that helps,
    Jason

  • How to post data to Oracle B2B's httpReceiver using SOAP UI

    Hi All,
    I have successfully tested an inbound EDI X12 810 transaction by creating document version, type, definition. I have used an inbound file channel in this case to
    pick the file and the sender trading partner is dentified from the ISA and GS values as I have configured EDI Interchange ID and EDI Group ID at Remote trading
    partner profile level. This configuration is successfully working fine.
    Now my intention is to replace the inbound file channel with httpReceiver i.e. I just want to post 810 document to B2B's httpReceiver using SOAP UI instead of
    using inbound file channel. For this I have mentioned Generic Identifier as Acme under the profile tab of Remote trading partner (Note that Acme is my remote
    trading partner). And I am posting data to httpReceiver using SOAP UI by setting sender as Acme in the SOAP UI headers. But in the B2B reports, the transaction
    is erroring out as it is unable to identify sender, doc type and agreement.
    Please let me know is this the correct way of populating headers from SOAP UI? Is Sender only sufficient in the headers or any others required? Do I need to pass
    IP address also as header? If so, is it my machine IP address? Is that should be static IP compulsorily?

    Found an answer - hope this is what the first person was looking for.
    You can embedded the Apex code within HTML with the following key steps:
    1. Java scripts need to reference the correct URL paths. For example on apex.oracle.com they would be
    <script src="http://apex.oracle.com/i/javascript/htmldb_html_elements.js" type="text/javascript"></script>
    <script src="http://apex.oracle.com/i/javascript/htmldb_get.js" type="text/javascript"></script>
    2. The <form...> tag needs to have the DAD URL in it. Such as:
    <form action="http://apex.oracle.com/pls/otn/wwv_flow.accept" method="post" name="wwv_flow" id="wwvFlowForm" >
    Any other references need to point to the right URLs.
    Finally, the action that will occur after submission is defined by the Apex Form, so you will need to set the appropriate Branch action in the application, such as going back to the same URL currently on, etc.
    Stephen

  • Using SharePoint WebServices in APEX

    Hi,
    I'm trying to use sharepoint webservice in apex.
    But sharepoint webservices uses NTLM authentication, and there is no such option in apex web service config.
    I tried to put authentication data in soap header, but I didn't get any answer from the web service.
    When I use default settings I got 401 unathorized response from the sharepoint server.
    Is there some way for use ntlm auth in apex webservices connection ?
    Regards,
    Marcin

    Joel
    thank you for clarification. Really appreciate your help. I was able to get the list. Here is the procedure. The line that fails is highlighed. Basically it can't initialize the session on AD server...
    declare
         p_username          varchar2(25):='test';
         p_password          varchar2(25):='test';
         l_user               varchar2(256);
         l_ldap_server     varchar2(256)     := 'AD host';
         l_domain          varchar2(256)     := 'domain';
         l_ldap_port          number               := 389;
         l_retval          pls_integer;
         l_session          dbms_ldap.session;
         l_cnt               number;
    begin
    --     l_retval := dbms_ldap.unbind_s( l_session );
         l_user               := p_username||'@'||l_domain;
    *     l_session          := dbms_ldap.init( l_ldap_server, l_ldap_port ); -- start session*     
    l_retval          := dbms_ldap.simple_bind_s( l_session, l_user, p_password ); -- auth as user
         l_retval          := dbms_ldap.unbind_s( l_session ); -- unbind
         dbms_output.put_line( 'yes');
    exception when others then
    dbms_output.put_line( 'no');
    raise_application_error(-20101, 'invalid user');
         end;
    thanks, Ed

  • ApEx BIP report using webservice: could not convert null to bean field

    Seems like a pretty straightforward problem but I don't manage to find a solution.
    I have a BI Suite implementation on one server.
    And a database with ApEx on another server.
    I want to call a BIP report from within my ApEx application using the webservices (runReport) available in BIP 11g.
    I used soapUI to test my webservice. Result : OK
    When called from within ApEx, ApEx gives me a succes message but the report isn't generated. Instead the console on the BIP server shows the following error:
    <Sep 12, 2012 10:28:37 PM BST> <Error> <org.apache.axis.encoding.ser.BeanPropert
    yTarget> <BEA-000000> <Could not convert null to bean field 'sizeOfDataChunkDown
    load', type int>
    'sizeOfDataChunkDownload' is a field of the webservice that is left empty.
    That indeed is the only difference between my soapUI test and the ApEx situation.
    In soapUI I removed all empty fields. In ApEx this does not seem possible...
    Some extra information:
    - the webservice is created on this WSDL : /xmlpserver/services/v2/ReportService?wsdl
    - it's defined as a SOAP v2
    - no basic authentication
    - the reports are defined in the BIP environment; not in ApEx
    Edited by: kcaluwae on 13-sep-2012 3:19

    I overlooked a not nillable field...

  • SOAP Fault

    Gurus,
    Can someone post and example on how and when to generate a SOAP fault ?
    I can potentially handle errors by plugging in error messages in the response message.
    When would once generate a soapfault instead of a response message ?
    has anyone on this groups implemented a web service or a soap based service operation or transaction?

    Ok, figured it out.
    The web service was not proviing a namespaced fault element.
    Fixed that and Apex now identifies the SoapFault

  • Reading and Updating MS Active Directory (AD) through Oracle APEX

    Hi All,
    Has anyone ever read and update the AD components using Oracle APEX?
    I know we can have APEX build in LDAP Authentication, but that is for the Authentication, what about reading other attributes like phone no., department, office etc. from MS AD; and about updating the same information.
    Is Oracle Identity Management the only solution?
    Windows 2008 R2 Server provide SOAP based AD web services (ADWS), has anyone used that with APEX (11g R2 with EPG configuration)?
    Is it possible to have a C# code (through external procedure) which could read and write MS AD; can we use only "C" code in oracle as external proc or C# as well?
    Any pointers would be of great help.
    Thanks,
    Ash

    Ash,
    It's possible to query data from the LDAP server, but it's not as easy as you'd like. I don't know about updating, but fopr querying, you're looking at creating a package using DBMS_LDAP and a pipelined function to get the data. Here's one example from a quick google search; there are others.
    One thing to be aware of that burned me: the default LDAP setting limits requests to 1,000 records. If your search gives more than that, you get an error (and no data at all). So you may find yourself having to use unions to get the full data, which slows things down a bit.
    -David

Maybe you are looking for

  • Changing iTunes account on iphone

    I purchased a used iphone and did a restore to factory settings but when I still connect to the app store it brings up the previous owner's email address. I put the correct account in iTunes on the computer and synced. New apps were added on the sync

  • When i purchase the update for 1st generation i tunes starts to download it then says there is an error?

    Please can someone help me i know i have to purchase the update 3.1 which i have done and then itunes starts to download and then stops saying error? Please can somebody help me out here, i need to download the update to be able to load apps Many tha

  • Icon position syntax

    Hello, I try to implement an experiment in which a same picture has to be repeated randomly at different (predefined) positions on the same display, and that during the whole experiment... Has somebody an idea to help my dealing with this problem?

  • Problem in creating Invoice receipt using ALE-IDoc?

    Hi all, I implemented the auto creation of invoice receipt when billing document created using ALE-Idoc. It is working fine in PRD also. But today , there occurred a problem in this . The problem is  when the billing document is created the Invoice r

  • Commenting on a Dynamic form

    I am having a major issue. I own a copy of Acrobat 8 Professional. I have created a dynamic form with fill-in text fields, radio buttons and combo boxes. I need to initiate a shared review to send the form to several colleagues who only have Reader 8