Exception getting blob to byte[]

Hy guys,
I 've a problem with my java application.
I use hibernate to interact with a derby database.
I stored a image into blob field (and no problem).
When I try to get blob to array of byte I've this exception:
java.sql.SQLException: You cannot invoke other java.sql.Clob/java.sql.Blob methods after calling the free() method or after the Blob/Clob's transaction has been committed or rolled back.To get blob I did
Blob cThumnb = ((Allegato) cAllegati.get(i)).getThumb();
byte[] cPrev = toByteArray(cThumnb);where
private byte[] toByteArray(Blob fromBlob) {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        try {
            return toByteArrayImpl(fromBlob, baos);
        catch (SQLException e)
            throw new RuntimeException(e);
        catch (IOException e)
            throw new RuntimeException(e);
        finally
            if (baos != null)
                try
                    baos.close();
                catch (IOException ex)
    private byte[] toByteArrayImpl(Blob fromBlob, ByteArrayOutputStream baos)  throws SQLException, IOException
        byte[] buf = new byte[4000];
        InputStream is = fromBlob.getBinaryStream();
        try
            for (;;)
                int dataSize = is.read(buf);
                if (dataSize == -1)     break;
                baos.write(buf, 0, dataSize);
        catch(IOException ex)
                throw ex;
       finally
            if (is != null)
                try
                    is.close();
                catch (IOException ex)
                return  buf;// baos.toByteArray();
    }Could you help me?
I set also autocommit to false,
Thanks,
Regards

EJP wrote:
So could you cite some references that show, in general, that one normally needs to process blobs as streams?The design. The name, which is an acroynm for Binary Large Object. The fact that they have a stream interface, like files and sockets.The idiom for loading does not require nor even recommend that one must process as a stream.
And most of the time I do not process files nor sockets via streaming methodologies. I load them entirely, then process them.
Actually for direct socket usage, excluding protocols like FTP, I don't believe I have ever streamed processing because in message based protocols the messages are very small.
Presumably because the OP has one reference to 'thumb' as in thumbnail view?From the OP's first post: 'I stored a image into blob field'.I see. I have stored images in databases before. Excluding storage of medical media files they were all processed in memory because all were rather small.
Certainly cases where one does in fact want to read an entire file into memory, before one starts processing it.Can't think of any, but in any case if you are able to process it as a stream you are wasting both time and space by not doing so.If I have any data that is in fact "large" I will keep that in mind. But, for example, I can't see processing a configuration file that consists of a couple hundred bytes via stream processing just because files allow for the possibility that one can process a large file.

Similar Messages

  • Getting BLOB content in C#

    Folks,
    I've an image file in BLOB container and I need to download the file on client devices. I've both container, file name and image URL as well. Which one gives better performance to get the data from Azure storage by following mechanism.
    1. Access BLOB container directly by container and file name with help of WindowsAzure.Storage Library
    2. Download the content from URL by using WebClient().DownloadData method
    Suggestion please...
    Thanks
    hibrise

    Hi hibrise,
    Based on my understanding, there is no difference about performance between two methods.
    In Azure Storage Library, You can use first retrieve a blob reference and then call the
    DownloadToStream method. While in the WebClient, Call the DownloadData method,it get he array bytes from the URI specificed
    Best Regards,
    Kevin Shen.

  • InputStream only gets to 8192 bytes

    I'm guessing this must be something simple I don't understand about InputStreams, but the following code only reads "README.txt" to 8192 bytes, despite the fact that fis.available() returns somewhere around 13000:
    void loadDoc(){
        String str;
        try{
            InputStream is = getClass().getResourceAsStream("README.txt");
            int size = is.available();
            byte[] bytes = new byte [size];
            int read = is.read(bytes);
            System.err.println("Available:" + size + "\nRead: " + read);
            is.close();
            str = new String(bytes);
        } catch (Exception e){
            System.err.println(e);
            str = "The file README.txt could not be found; it may have been deleted or moved.\n";
        displayArea.setText(str);
        displayArea.setCaretPosition(0);
    }I'm suspicious, since 8192 is a power of 2, which makes me think that it's not stopping at some arbitrary point or due to something in the file. What's going on here?

    From what the docs for available() say, I'd have thought it would read the full 13000 or whatever. It seems like it's blocking sooner than it's supposed to.
    I'd guess one of three things, in order of decreasing likelihood:
    * "Blocking" has a specific meaning that doesn't extend to what's happening here, which I'd guess is simply that some underlying buffer has a size of 8k, so that's all that can be deliverd at once.
    * You're not running the code you think you are, or have otherwise misinterpreted what you observed.
    * There's a bug in the stream implementation.
    Presumably if you loop here, you'll get the remaining bytes on the next read (if it is in fact the first point above that's causing this). Decorating the InputStream with a BufferedInputStream might do this for you, but I wouldn't count on it--you'd still have to put the reading in a loop.
    On other alternative would be to turn the URL into a URI, the URI into a File, and then build a RandomAccessFile from the File, and use ReadFully. That feels like overkil to me, though.

  • [JTA_Start_0]Exception getting connection for Oracle DB

    Hi All,
    I am facing a problem when I am going to insert data in a table (Oracle DB) using JTA Command Action block. I have deployed  the Oracle JDBC driver and Configured the data source in http://<server<:port>>/nwa->Configuration Management -> Infrastructure.  But when I am trying to insert data using the JTA Command Action block for inserting data in a table it is throwing error.I am running with XMII 12.1 SP5 and Oracle 11g.
    Here is the error details.
    [ERROR] [JTA_Start_0]Exception getting connection for jdbc/ODS_ORACLE_SBX was ResourceException occurred in method ConnectionFactoryImpl.getConnection(): com.sap.engine.services.connector.exceptions.BaseResourceException: Cannot get connection for 0 seconds. Possible reasons: 1) Connections are cached within SystemThread(can be any server service or any code invoked within SystemThread in the SAP J2EE Engine) or they are allocated from a non transactional ConnectionFactory. In case of transactional ConnectionFactory used from Application Thread there is an automatic mechanism which detects unclosed connections, 2)The pool size of adapter "ODS_ORACLE_SBX" is not enough according to the current load of the system . In case 1) the solution is to check for cached connections using the Connector Service list_conns command or in case 2), to increase the size of the pool.
    Note: ODS_ORACLE_SBX is the Data source name which I have configured.
    If I increase the min pool size from 0 to 5 or more than 0 then Data source is getting red means not Available.
    Can anybody provide any help.
    Thanks in advance
    Chandan
    Edited by: Chandan Jash on May 3, 2011 4:25 AM

    You set up your Oracle DB connection by following the path 'xMII Menu -> Data Services -> Data Servers -> New'.
    Re: Configure Oracle in MII 12.0
    Regards,
    Chanti.

  • POJO - Pictures, Blob ot byte[]

    Hi All,
    the POJO Reporting works fine but
    How can i include a picture into my Report ??
    If i move my object (with a Blob and byte[]) into myReport.rpt the Blob and the byte[] does not become available for reporting.
    What is wrong ??
    Thanks for Your help
    René
    My Object:
    public class RhuPlakatData {
    private String text11;
    private Blob blob1;
    private byte[] bytes;
    public byte[] getBytes() {
    return bytes;
    public void setBytes(byte[] bytes) {
    this.bytes = bytes;
    public String getText11() {
    return text11;
    public void setText11(String text11) {
    this.text11 = text11;
    public Blob getBlob1() {
    return blob1;
    public void setBlob1(Blob blob1) {
    this.blob1 = blob1;

    Hi James
    Unfortunately, I found no solution.
    Did You found a solution??
    Thanks for Your help
    Greetings
    René

  • HibernateSystemException: exception getting property value with CGLIB

    I am getting a hibernate exception error
    HibernateSystemException: exception getting property value with CGLIB
    does anyone know what it means?

    check the setter method for the property LANG_CD in com.dst.fourx.model.codeModel.CodeGroupDisplay.
    it must be like -
    setNlsLanguage(CodesGroup xyz) { ... }
    The paremeters must be objects, not the type of the database column. We can specify the actual field in CodesGroup which acts as the foreign key in CodeGroupDisplay in the "property-ref" attribute of <many-to-one> element in the mapping file for CodeGroupDisplay.
    This worked for me. Hope it works for you too.

  • ADS : FP_TEST_00 Exception getting currently running XMLForm Module version

    Hi,
    We have installed ADS and Currently configuring it.
    The Reports FP_PDF_TEST_00 is working fine. But the reports FP_TEST_00 is hanging when i specify the Printer name and click on Print preview.
    The Following error message i got in the default trace file.
    1.5#001560DE2A38007F000000060000249E00044F4DBB40B6FF#1213095188495#com.adobe.AdobeDocumentServices#com.adobe/AdobeDocumentSer
    vices#com.adobe.AdobeDocumentServices#ADSUSER#136##lux09208_D10_13839050#Guest#6959e66036db11ddc504001560de2a38#SAPEngine_Appl
    ication_Thread[impl:3]_52##0#0#Error##Plain###Exception getting currently running XMLForm Module version.
    java.lang.IllegalStateException: No transaction
            at com.adobe.service.J2EEConnectionFactoryManagerPeerImpl.getConnection(J2EEConnectionFactoryManagerPeerImpl.java:70)
            at com.adobe.ads.proxy.ServiceLocator.getXmlfmFactory(Unknown Source)
            at com.adobe.EJB_XMLFormAgent.getFactory(Unknown Source)
            at com.adobe.EJB_XMLFormAgent.getVersion(Unknown Source)
            at com.adobe.AdobeDocumentServicesEJB.checkXmlfmVersion(Unknown Source)
            at com.adobe.AdobeDocumentServicesEJB.ejbCreate(Unknown Source)
            at sun.reflect.GeneratedMethodAccessor265.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:324)
            at com.sap.engine.services.ejb.session.stateless_sp5.BeanFactory.createObject(BeanFactory.java:113)
            at com.sap.engine.services.ejb.util.pool.ContainerPoolImpl.doResizeOneStepUp(ContainerPoolImpl.java:374)
            at com.sap.engine.services.ejb.util.pool.ContainerPoolImpl.ensureNotEmpty(ContainerPoolImpl.java:343)
            at com.sap.engine.services.ejb.util.pool.ContainerPoolImpl.pop(ContainerPoolImpl.java:291)
            at com.sap.engine.services.ejb.session.stateless_sp5.BeanFactory.getActiveBean(BeanFactory.java:188)
            at com.sap.engine.services.ejb.session.stateless_sp5.StatelessContainerFP.getActiveBean(StatelessContainerFP.java:183)
            at com.adobe.AdobeDocumentServicesLocalLocalObjectImpl0.rpData(AdobeDocumentServicesLocalLocalObjectImpl0.java:87)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:324)
            at com.sap.engine.services.webservices.runtime.EJBImplementationContainer.invokeMethod(EJBImplementationContainer.java
    :126)
            at com.sap.engine.services.webservices.runtime.RuntimeProcessor.process(RuntimeProcessor.java:157)
            at com.sap.engine.services.webservices.runtime.RuntimeProcessor.process(RuntimeProcessor.java:79)
            at com.sap.engine.services.webservices.runtime.servlet.ServletDispatcherImpl.doPost(ServletDispatcherImpl.java:92)
            at SoapServlet.doPost(SoapServlet.java:51)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    Also the FP_CHECK_DESTINATION_SERVICE report is also hanging with out any output.
    The RFC Connectivity ADS is working properly, The Users ADSUSEr and ADS_AGENt are configured properly. I am also able the test the Destination FP_ICF_DATA_<SID> in Visual Admin properly.
    The AdobeDocumentSErvices portal is also displaying the version number for me.
    Please let me know how this issue can be sorted out.

    Hello Subramanian,
    I am not sure if you have solved the problem of FP_CHECK_DESTINATION_SERVICE report. Using this report test you can check if the complete configuration of the destination service and the ICF service is correct. Since this report is not getting results in your case, I suspect there is problem in Destination Service or the ICF Service.
    Kindly do all the steps mentioned here.
    http://help.sap.com/saphelp_nw70/helpdata/en/44/63eefb818c311ee10000000a155369/content.htm
    Regards,
    Shubham

  • Get blob properties REST API

    This REST API request for get blob:
    http://msdn.microsoft.com/en-us/library/azure/dd179440.aspx
    and get blob properties:
    http://msdn.microsoft.com/en-us/library/azure/dd179394.aspx
    look the same: https://myaccount.blob.core.windows.net/mycontainer/myblob
    When I issue this get request I get back both the property and the metadata. How do I just get the blob property? (I tried https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=properties
    as a shot in the dark but that didn't work. I got a verb not recognized error.)

    HI
    The different is there Request Method:
    Get Blob is Get Method.
    GET Method Request URI
    Get Blob Properties  is Head Method.
    So when you create the Request, you need to set the Request Method to Head.
    request.Method = "Head";
    My Blog
    Please use Make as Answer if my post solved your problem and use
    Vote As Helpful if a post was useful.

  • Doing setBytes() but when extracting data get BLOB error?

    I am inserting a video into an oracle 10g db, and I insert it using the setBytes method but when trying to pull that video from the db, it gives me this error
    SQL Exception in getting video ORA-00932: inconsistent datatypes: expected - got BLOB
    The field value is a blob type, but don't have any issues when doing this with a jpg vs a wmv file. here is my code for insertion and extraction of the data.
                            String query=("INSERT INTO VIDEO (P_ID, P_VIDEONAME, P_VIDEO) Values (?,?,?)");
                            prepStmt = connection.prepareStatement(query);
                            prepStmt.setInt(1,patient.getP_ID());
                            prepStmt.setString(2,patient.getVideoName());
                            prepStmt.setBytes(3,patient.getVideo());
                            prepStmt.executeUpdate();
    rs = stmnt.executeQuery("SELECT P_VIDEONAME, P_VIDEO FROM VIDEO WHERE P_VIDEO = " + patient.getVideoName() + " and P_ID = " + patient.getP_ID());
                            ResultSetMetaData metaData = rs.getMetaData();
                            int columns=metaData.getColumnCount();
                            while(rs.next()){
                                for(int i=1;i<=columns;++i) {
                                    patient.setAction("getVideo");
                                    patient.setVideoName(rs.getString(i));
                                    patient.setVideo(rs.getBytes(++i));
                                    sendPatient();
                        }catch(SQLException e) {
                            //this is similar to the definition i gave you above.
                            System.out.println("SQL Exception in getting video " + e.getMessage());

    That inner for loop makes no sense. You don't need to iterate through the columns; you already know what's supposed to be in each one. Get rid of the loop and just refer to them by their absolute indices, like you did when you inserted the record.
    Also, I would advise always using the postfix operators i++ and i-- instead of the prefix forms, ++1 and --i.  It's just too easy to lose track of what's going on when you mix the the two styles, and postfix operators are much more commonly used.
    I don't know if any of this will solve your problem, but it should at least make the probelm easier to see.

  • Get Image's bytes

    Hi people,
    I'm trying to get the bytes from an image. I know the complete path to that image, and I know the image's name also, so I pass the image's whole name as a String to a method wich will read the bytes. When I try to read the image's bytes I get the following meassures: width = -1, height = 0.
    This is the code I use:
      int err = imageReturn(path + "/" + img);
      byte[] b2bytes = b2.toByteArray();
    public int imageReturn(String imagePath){
        //path is c:\javi\image.jpg
        try{
            int w,h;
            Image img = null;
            img = Toolkit.getDefaultToolkit().getImage(imagePath);
            w = img.getWidth(null);
            h = img.getHeight(null);
    System.out.println("image size: " + w + "x" + h); //--> print's -1x0!!!
            BufferedImage finalImage = new BufferedImage(w, h, 
                                                BufferedImage.TYPE_INT_RGB);
            finalImage.createGraphics().drawImage(img, 0, 0, null);
            b2 = new ByteArrayOutputStream(); //global
            JPEGImageEncoder encoder=JPEGCodec.createJPEGEncoder(b2);
            JPEGEncodeParam param=encoder.getDefaultJPEGEncodeParam
                                                               (finalImage);
            param.setQuality(1.0f, false);
            encoder.setJPEGEncodeParam(param);
            encoder.encode(finalImage);
            b2.close();
            return(0);
        }catch(Exception e){
            System.out.println(e.toString());
            return(-1);
    }//imageReturnAs you see, the goal is to get a byte[] with the image information. I don't know if there's any other way (simpler one) to solve it. Any help will be appreciated.
    Thanks all,
    Javi

    The problem really is withe the Image class, which was never intended for this sort of thing. If you use the ImageIO classes, you can get BufferedImages direct from jpg files, and then you have access to the underlying buffers:
    import java.io.*;
    import javax.imageio.*;
    import java.awt.image.*;
    public class FileOperations
        public static BufferedImage readImageFromFile(File file) throws IOException
            return ImageIO.read(file);
        public static void writeImageToFile(File file,BufferedImage bufferedImage) throws IOException
            ImageIO.write(bufferedImage,"JPG",file);
    }

  • Getting blobs from databases

    Hi!
    Im trying to get a blob from a database and write it to a file, but I just can't get the Blob value, I just recieve the adress. I've tried InputStream and getBytes but none of them does what I want. getBytes where closest but because it requires two inparameters (long pos, int length) and blob.length gives an long i can't figure out how many bytes to get. Anyone got any sugestions?

    Agrawal.
    I've read through both those pages (even thou i've already managed to make the connection to mysql) and I still can't work around my problem. the method getBytes(), requires two parameters, one that tells it where to start reading and one telling it how long it should read. If I leave one out it will inevitable lead to problems. So I still need to figure out a way to get the length of the blob in a int to make this work. but since the blob.length() method returns a long wich I can't convert I'm stuck!

  • Not getting all my bytes from inout stream.

    hi,
    i'm writing an i-appli that interacts with a java web server. my problem is that i'm not getting all of my bytes through to the phone.
    actually i'm using an emulator right now. when i use the real phone i set content length on the server side and it all goes through. but for some reason when i set content length on the server the emulator doesn't pick up anything(using i-jade emulators) bug??.
    it should work though because when i print out the number from in.available() it matches with the number of bytes that i want to go through.
    but when i grab the int from the read it is less than what returns from available().
    here's a snippet of the i-appli code. i'm printing out TESTBYTELEN to the screen and it is less than when i set it to 'bc' from in.available. (i'm getting 3784 of 4420 bytes EVERY time)
    thanks for any help
    matt
    ========================================
    HttpConnection conn = (HttpConnection)Connector.open(IPString,Connector.READ,true);
    conn.setRequestMethod(HttpConnection.GET);
    conn.setRequestProperty("Content-Type","text/plain");
    conn.connect();
    InputStream in = conn.openInputStream();
    if (in == null)
    throw new IOException("servlet unreachable");
    bc = in.available();
    streamb = new byte[bc];
    TESTBYTELEN = in.read(streamb,0,bc);
    in.close();
    conn.close();
    =========================================

    Also, testing with available is not that good... it just tells you how many bytes can be read without blocking, not the amount of bytes that can actually be read. So the code should be more like:
    bc = MAX_BYTES_TO_BE_READ;
    streamb = new byte[bc];
    int bytesread;
    int off = 0;
    int len = bc;
    while ((bytesread = in.read(streamb,off,len) != -1) {
    off += bytesread;
    len -= bytesread;
    (to clarify, in.read returns the number of bytes that were actually read and -1 when there are no more bytes to be read)

  • Exception getting while creating a login page

    Hi,
    I am trying to redesign my portal's login screen. For that i have downloaded <b>"com.sap.portal.runtime.logon.par.bak"</b> file created a new portal application named <b>com.test.login</b> and imported the par file from com.sap.portal.runtime.logon.par.bak.
    I have exported the PAR file and deployed it to Portal. I checked <b>"<J2eeinstance>\j2ee\cluster\server0\apps\sap.com\irj\servlet_jsp\irj\root\WEB-INF\deployment\pcd"</b> folder after upload and the file is there in the server.
    I have changed the <b>"authschemes.xml"</b> file accordingly. But when i restarted the cluster and called the login page, i got an exception like givel below,
    Portal Runtime Error
    <b>An exception occurred while processing a request for :
    iView : N/A
    Component Name : N/A</b>
    When i checked the log file, I found the exception logged as <b>"Could not instantiate implementation class com.sapportals.portal.ume.component.logon.SAPMLogonCertComponent of Portal Component com.test.login.certlogon because: Could not find implementation class "</b>
    <b><i>I didn't changed any files in the PAR file during developement. It is a copy of the original com.sap.portal.runtime.logon.par.bak file,</i></b>
    Can you please point out what could be missing in between?
    Best regards,
    Sudheesh

    Hi
       I got this error once. The problem is that while importing, the jar files don't get imported. Try including these two jars (umlogonbase.jar and
    com.sap.portal.runtime.logon_api.jar) from
    usr\sap\J2E\JC00\j2ee\cluster\server0\apps\sap.com\irj\servlet_jsp\irj\root\WEB-INF\portal\portalapps\com.sap.portal.runtime.logon\lib
    and copy manually to the lib folder under PORTAL-INF in your project and then export your new par file.
    Regards
    Harini S
    Message was edited by: Harini Subramanian

  • About get blob data where test web services in odi

    Hello,
    when i test a web service(data include blob column ) in odi ,i get below errors ,does it means my webservices is not correct, or does blob data get function can't be test in odi , for i can delete row in the table ,just can't get data from the table by web service in odi .
    <getTBlobRequest>
    <TBlob>
    <ID>1</ID>
    </TBlob>
    </getTBlobRequest>
    com.sunopsis.wsinvocation.SnpsWSInvocationException: oracle.sql.BLOB
         at com.sunopsis.wsinvocation.client.a.a.d.requestReply(d.java)
         at com.sunopsis.graphical.wsclient.f.b(f.java)
         at com.sunopsis.graphical.tools.utils.swingworker.v.call(v.java)
         at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
         at com.sunopsis.graphical.tools.utils.swingworker.l.run(l.java)
         at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
         at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: oracle.sql.BLOB
         at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
         at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
         at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
         at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1515)
         at org.apache.crimson.parser.Parser2.content(Parser2.java:1766)
         at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1494)
         at org.apache.crimson.parser.Parser2.content(Parser2.java:1766)
         at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1494)
         at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:500)
         at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
         at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:433)
         at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
         at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
         at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
         at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
         at org.apache.axis.client.Call.invoke(Call.java:2767)
         at org.apache.axis.client.Call.invoke(Call.java:1792)
         at com.sunopsis.wsinvocation.client.a.a.d.a(d.java)
         ... 8 more
    Caused by:
    AxisFault
    faultCode: {http://ws.apache.org/namespaces/axis2}Server
    faultSubcode:
    faultString: oracle.sql.BLOB
    faultActor:
    faultNode:
    faultDetail:
         {http://xml.apache.org/axis/}stackTrace:oracle.sql.BLOB
         at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
         at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
         at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
         at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1515)
         at org.apache.crimson.parser.Parser2.content(Parser2.java:1766)
         at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1494)
         at org.apache.crimson.parser.Parser2.content(Parser2.java:1766)
         at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1494)
         at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:500)
         at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
         at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:433)
         at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
         at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
         at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
         at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
         at org.apache.axis.client.Call.invoke(Call.java:2767)
         at org.apache.axis.client.Call.invoke(Call.java:1792)
         at com.sunopsis.wsinvocation.client.a.a.d.a(d.java)
         at com.sunopsis.wsinvocation.client.a.a.d.requestReply(d.java)
         at com.sunopsis.graphical.wsclient.f.b(f.java)
         at com.sunopsis.graphical.tools.utils.swingworker.v.call(v.java)
         at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
         at com.sunopsis.graphical.tools.utils.swingworker.l.run(l.java)
         at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
         at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
         at java.lang.Thread.run(Thread.java:595)
         {http://xml.apache.org/axis/}hostname:xpone
    oracle.sql.BLOB
         at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
         at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
         at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
         at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1515)
         at org.apache.crimson.parser.Parser2.content(Parser2.java:1766)
         at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1494)
         at org.apache.crimson.parser.Parser2.content(Parser2.java:1766)
         at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1494)
         at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:500)
         at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
         at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:433)
         at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
         at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
         at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
         at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
         at org.apache.axis.client.Call.invoke(Call.java:2767)
         at org.apache.axis.client.Call.invoke(Call.java:1792)
         at com.sunopsis.wsinvocation.client.a.a.d.a(d.java)
         at com.sunopsis.wsinvocation.client.a.a.d.requestReply(d.java)
         at com.sunopsis.graphical.wsclient.f.b(f.java)
         at com.sunopsis.graphical.tools.utils.swingworker.v.call(v.java)
         at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
         at com.sunopsis.graphical.tools.utils.swingworker.l.run(l.java)
         at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
         at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
         at java.lang.Thread.run(Thread.java:595)
    Edited by: user778685 on 2009-7-5 下午8:27
    Edited by: user778685 on 2009-7-5 下午8:29
    Edited by: user778685 on 2009-7-6 下午11:30
    Edited by: user778685 on 2009-7-8 下午7:28

    Hi,
    As this looks like a Microsoft / C# problem, you may not get much help from this forum, which primary focuses on the Oracle Web Services stacks.
    You may want to try to post this question to .NET dedicated forum on MSDN. See sites like http://www.gotdotnet.com for example.
    On the Oracle forums, you may have better luck in one of the "Windows and .NET" forums.
    You should also try to test the private method -- SearchProduct -- first, outside the Web Service and test your Web Service with a static result, so that you can narrow down where the issue is.
    Hope it helps,
    -Eric

  • Getting & sending 0-byte images / Skype profile ex...

    Dear developers,
    there are again stupid issues which make Skype unusable.
    Since images are displayed in conversations, I often receive images I cannot open. They have a 0-byte size. The thumbnail is created however. This mostly happens to images in the clipboard which are pasted into the conversation.
    The same goes to images I send. People say they are also of 0-byte size, but can see the thumbnails.
    When deleting the images in %APPDATA%\Skype\username\media_messaging\media_cache but not deleting the folder "asyncdb", Skype can't correctly start anymore. I get to the main window, but as soon as I open a conversation, the HDD usage goes up to an extreme. Maybe it's searching for the images it can't find over and over. This is on an SSD drive:
    After deleting "asyncdb", the problem is fixed.
    Why asking for such a problem if it's my own fault since I tempered with my profile folder? Simple: This folder grows up to an exorbitant collection of images and thumbnails I do not want. While Skype is running, I can delete all these images but asyncdb is in use. At the next start, it fücks up.
    Either fix an elementary-school-bug or let my HDD fill up with images?
    Thanks for your attention.

    Ask your partner to try to reset all Internet Explorer settings:
    http://support.microsoft.com/kb/923737
    Next reset LAN settings:
    Open Internet Explorer. Go to Tools -> Internet Options -> Connections -> LAN settings. Make sure that the only option selected is “Automatically detect settings”.
    Next clear all Temporary Internet Files:
    Open Internet Explorer -> Tools -> Internet Options -> General. In the section “Browsing history” press the “Settings” button and in the next window the “View files” button. Delete all files from the Temporary Internet Files folder.
    Reboot your computer and test now what happens when you open this link in your Internet Explorer.
    https://api.asm.skype.com/s/i

Maybe you are looking for