WebServices with BLOB IN params

Hi
I have managed to deploy DB procedures as native WebServices - great functionality!
I would like to do this with BLOB parameters passed IN to the procedure.
As the web service is XML based the BLOB must be cast (converted) to a character representation.
How to do this?
The procedure would be something like:
create_event(p_event_code IN varchar2,
p_event_date IN varchar2,
p_BLOB IN BLOB);
This would work in PLSQL but not as a web service.
How can I change the BLOB parameter to something that XML can represent?
Once I get the raw data in the procedure I can convert to a BLOB and insert into the table.
Any help would be appreciated.
Regards
Chris

Hi Chris!
Perhaps you could use the CONVERTTOCLOB and CONVERTTOBLOB procedures from the package DBMS_LOB, which convert from the binary representation of a BLOB type to character data in a CLOB or NCLOB type and viceversa.
Regards,
Sergio

Similar Messages

  • Develope complex WebService with JDeveloper and deploy to tomcat

    Hello,
    I am thinking of developing a complex WebService with JDeveloper and deploy it to tomcat.
    The WebService should retrieve a few "normal" datatypes and a pdf and a few images. I try to store the pdf and the image in an Oracle DB as BLOB.
    My idea ist to create a Package which selects the values, pdf and the image and retrieve them as the output paramter.
    Then I want to create a WebService with the JDeveloper which calls this Package. This WebService should be published on a Tomcat.
    My first question is if that is possible?
    I think there are few problems.
    I searched the forum about deploying a JDeveloper WebService to Tomcat, but I can not find a whole solution which is going to work. I read something about JAX-RPC, but I am new to this topic. So it would be very nice, if anyone could tell me where I can find the solution or post a quick guide to solve that.
    Another question is how I have to decode the images and the pdf to provide those files in a WebService?
    I would be very glad if anyone can help me or tell me where I can find information about that, becaus I am new to this topic!
    Thank you,
    Tim

    Hi,
    does anybody have an idea about that?
    Thanks,
    Tim

  • Error while importing a table with BLOB column

    Hi,
    I am having a table with BLOB column. When I export such a table it gets exported correctly, but when I import the same in different schema having different tablespace it throws error
    IMP-00017: following statement failed with ORACLE error 959:
    "CREATE TABLE "CMM_PARTY_DOC" ("PDOC_DOC_ID" VARCHAR2(10), "PDOC_PTY_ID" VAR"
    "CHAR2(10), "PDOC_DOCDTL_ID" VARCHAR2(10), "PDOC_DOC_DESC" VARCHAR2(100), "P"
    "DOC_DOC_DTL_DESC" VARCHAR2(100), "PDOC_RCVD_YN" VARCHAR2(1), "PDOC_UPLOAD_D"
    "ATA" BLOB, "PDOC_UPD_USER" VARCHAR2(10), "PDOC_UPD_DATE" DATE, "PDOC_CRE_US"
    "ER" VARCHAR2(10) NOT NULL ENABLE, "PDOC_CRE_DATE" DATE NOT NULL ENABLE) PC"
    "TFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS"
    " 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "TS_AGIMSAPPOLOLIVE030"
    "4" LOGGING NOCOMPRESS LOB ("PDOC_UPLOAD_DATA") STORE AS (TABLESPACE "TS_AG"
    "IMSAPPOLOLIVE0304" ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10 NOCACHE L"
    "OGGING STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEF"
    "AULT))"
    IMP-00003: ORACLE error 959 encountered
    ORA-00959: tablespace 'TS_AGIMSAPPOLOLIVE0304' does not exist
    I used the import command as follows :
    imp <user/pwd@conn> file=<dmpfile.dmp> fromuser=<fromuser> touser=<touser> log=<logfile.log>
    What can I do so that this table gets imported correctly?
    Also tell me "whether the BLOB is stored in different tablespace than the default tablespace of the user?"
    Thanks in advance.

    Hello,
    U can either
    1) create a tablespace with the same name in destination where you are trying to import.
    2) get the ddl of the table, modify the tablespace name to reflect the existing tablespace name in destination and run the ddl in the destination database, and run your import command with option ignore=y--> which will ignore all the create errors.
    Regards,
    Vinay

  • 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

  • Sample insert into table with BLOB column

    This is my first opportunity to work with BLOB columns. I was wondering if anyone had some sample code that shows the loading of a blob column and inserted into the table with a blob column.
    I have to produce a report (including crlf) and place it into a blob column. The user will download the report at a later time.
    Any suggestions / code samples are greatly appreciated!!!!

    You can enable string binding in TopLink.
    login.useStringBinding(int size);
    or you could enable binding in general,
    login.bindAllParameters();

  • 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)

  • How to use insert row with BLOB to Oracle when use connection pool?

    Hi, All,
    I am writing a program to store files (mapped to be a column with BLOB datatype
    in the table) to Oracle database.
    But I always get java.lang.ClassCastException:weblogic.jdbc.rmi.SerialBlob
    Here is my code, please help. Thanks a lot!!
    String sqlNewRow = "insert into documents (id, companyid, updatedate, description,
    document, addby, title) ";
    sqlNewRow += "values (?, ?, TO_DATE(?, 'MM/DD/YY'), ?, EMPTY_BLOB(), ?,
    con.setAutoCommit(false);
    ps = con.prepareStatement(sqlNewRow);
    ps.setInt(1, documentid);
    ps.setInt(2, companyid);
    ps.setString(3, updatedate);
    ps.setString(4, description);
    ps.setString(5, username);
    ps.setString(6, filename);
    ps.executeUpdate();
    ps.close();
    String sqlLockRow = "select document from documents where id = ? for update";
    java.sql.PreparedStatement pst = con.prepareStatement(sqlLockRow);
    pst.setInt(1, documentid);
    java.sql.ResultSet rset = pst.executeQuery();
    rset.next();
    java.sql.Blob dbBlob = rset.getBlob(1);
    out.println("it's=" + dbBlob.getClass());
    OutputStream dbBlobOut = ((weblogic.jdbc.vendor.oracle.OracleThinBlob)dbBlob).getBinaryOutputStream();
    dbBlobOut.write(oneString.getBytes());
    dbBlobOut.close();
    rset.close();
    pst.close();

    Have you defined
    OutputStream dbBlobOut
    as weblogic.jdbc.vendor.oralce.OracleThinBlob?
    Mitesh
    Almond wrote:
    Hi, All,
    I am writing a program to store files (mapped to be a column with BLOB datatype
    in the table) to Oracle database.
    But I always get java.lang.ClassCastException:weblogic.jdbc.rmi.SerialBlob
    Here is my code, please help. Thanks a lot!!
    String sqlNewRow = "insert into documents (id, companyid, updatedate, description,
    document, addby, title) ";
    sqlNewRow += "values (?, ?, TO_DATE(?, 'MM/DD/YY'), ?, EMPTY_BLOB(), ?,
    con.setAutoCommit(false);
    ps = con.prepareStatement(sqlNewRow);
    ps.setInt(1, documentid);
    ps.setInt(2, companyid);
    ps.setString(3, updatedate);
    ps.setString(4, description);
    ps.setString(5, username);
    ps.setString(6, filename);
    ps.executeUpdate();
    ps.close();
    String sqlLockRow = "select document from documents where id = ? for update";
    java.sql.PreparedStatement pst = con.prepareStatement(sqlLockRow);
    pst.setInt(1, documentid);
    java.sql.ResultSet rset = pst.executeQuery();
    rset.next();
    java.sql.Blob dbBlob = rset.getBlob(1);
    out.println("it's=" + dbBlob.getClass());
    OutputStream dbBlobOut = ((weblogic.jdbc.vendor.oracle.OracleThinBlob)dbBlob).getBinaryOutputStream();
    dbBlobOut.write(oneString.getBytes());
    dbBlobOut.close();
    rset.close();
    pst.close();

  • 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.

  • How integrate azure media services with blob storage?

    I need to upload lots of content over blob storage which contains different types of files.
    Now my problem is that files contains lots of videos also.
    I want to way by which i can integrate azure media services with blob storage so that i can stream that video.
    So probably i don't want to upload my videos on azure media services storage because i want all my content to be at one place which is blob storage.
    Is there any way to achieve this?
    Thanks,
    Rajesh Khunt
    Blog : http://programmersgeek.wordpress.com/
    Twitter : http://twitter.com/#!/r_rajeshkhunt
    Linkedin : http://in.linkedin.com/in/rajeshkhunt

    Hi Rajesh
    Every Media Services account needs a blob storage account associated with it. You can choose an existing blob storage account for that purpose. In order for Media Services to work with your videos you need to create an asset using the Media Services APIs.
    That call results in the creation of a container which has the name in the following format asset-<AssetId>. The actual video files need to go as blobs within this container but these files need to be known to Media Services and you can do so by adding
    AssetFiles to the asset using the Media Services APIs. Once you do that the asset is well known to Media Services and you can stream it.

  • 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

  • Html email with blob attachment and authentication

    I have been looking for a plsql package to send html emails with blob attachments. The html portion and the blob attachment are more than 32k.
    Also the email server needs to be authenticated.
    Does anyone know of something already written to do this? I’ve found lots of code that does one or two items but not all.
    Must:
    - Authenticate
    - Html email
    - Accept blob as input parameter for attachment
    - Exceed 32k
    There are so many routines, I’ve been searching looking for one which does all.

    This works for authentication:
    utl_smtp.command(l_mail_conn, 'AUTH LOGIN' );
    utl_smtp.command(l_mail_conn,utl_raw.cast_to_varchar2(utl_encode.base64_encode(utl_raw.cast_to_raw ( v_username ))));
    utl_smtp.command(l_mail_conn,utl_raw.cast_to_varchar2(utl_encode.base64_encode(utl_raw.cast_to_raw ( v_password ))));

  • 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

  • Problem with BLOB data type and acute characters

    Hi all, I have an issue related with BLOBS cols:
    I have table A with a BLOB column and I need to insert that data into another table B, the thing is I use dbms_lob.read() that returns data into a RAW variable and then I convert it to a varchar2(with utl_raw.cast_to_varchar2) and it works ok if I have no "acute characters" on it, e.g Québec.
    If I have acute characters, the "é" is inserted wrongly with an "¿" character on the table B. I tested the BLOB on the table A to check the data and the BLOB is showing correctly the "é" character, it seems that the dbms_lob.read() funct cannot handle accute characters and replace them with "¿".
    How can I replace acute characters when I use the dbms_lob.read functionality?
    Thank you!

    what's the OS of the db server? is this code an anonymous pl/sql block, or stored pl/sql? does it run on the server or a client? if it's on the client, what's the o/s of the client?
    you might want to look at the following, plus the first 3 notes in it's reference section
    https://metalink.oracle.com/metalink/plsql/f?p=130:14:3038746456038321058::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,264157.1,1,1,1,helvetica

Maybe you are looking for

  • IWeb 08 and photo pages!!!!?

    when updating my old domain file to the new format, i seemed to have lost all the photos on my old photo pages and the formatting is not correct. I thought what the ****, need to refresh the site so decided to create new photo pages etc, using the ne

  • Am I licensed to use music from iMovie on You Tube?

    I made a video on iMovie with all original content. The only thing I used that was not mine was the (I thought) royalty free music and sound effects that iMovie supplies. I publised it on You Tube. I just recieved an email from YouTube mthat says: Yo

  • Logging a synchronous message using diagnostic header (WITHOUT LOGGING_SYNC

    This [link|http://help.sap.com/saphelp_nw70/helpdata/EN/d6/49543b1e49bc1fe10000000a114084/frameset.htm] indicates that a synchronous message can be logged by using: <SAP:Logging>1</SAP:Logging> within the message header even if LOGGING_SYNC is deacti

  • System is slow when I hover over Airport logo in status bar

    When I have the Airport logo in the status bar and I hover over it or go to click on it it seems to slow everything down (around that area). So the menu will take a while to load, or I won't be able to move to another icon in the status bar etc. I wo

  • Cheapest 256GB SSD provider in the UK?

    I need a little bit of help of my choice of SSD. Could someone point me in a direction of a good 256GB relatively good value one? I've been looking on crucial, and it's a little pricey. Thanks!