Serializing a CachedRowSet

Has anyone been able to serialize a CachedRowSet and use it at the other end? It seems to me this is impossible. I got desperate and decompiled the source code for CachedRowSet 1.0.1 and the resource bundle variable (resBundle) is transient and is not re-created after serialization. So, any method after serialization that accesses the resBundle variable throws a NullPointerException. I don't get how anyone could use the reference implementation very seriously.
Is there something one needs to do after serialization to get the object to a proper state?
Curtis

No I don't want to go to and from XML. The rowset reference implementation needs a LOT of work. I've hit roadblock after roadblock and am now giving up. It's a great idea and a great API but it doesn't work. Perhaps the 5.0 JDK works better but I'm not ready to move to 5.0 yet. The 1.4.2 add-on is very buggy.

Similar Messages

  • Serializing ResultSet using CachedRowSet

    Hi all,
    I am trying to serialize the retrieved results of a query from one machine to another machine by populating the ResultSet into a CachedRowSet object. According to my understanding CachedRowSet is Serializable an should allow for data serialization over the wire. However, when I try sending the data, I get the following error. I googled the problem online and some people suggested that it is a problem with the version of the OJDBC driver. I have tried ojdbc14 and ojdbc6 for XE 11g but the results are the same. Could anyone give me some suggestion about whether it is possible, and how so?
    From my understanding, the Connection should be marked as transient and only the raw data should be transferred. I wonder if Oracle's implementation of CachedRowSet is not supporting serializability or whether I am doing something wrong.
    thanks!
    Here is the error:
    java.lang.RuntimeException: java.io.NotSerializableException: oracle.jdbc.driver.T4CConnection
         at remoting.RemotingManager.doPost(RemotingManager.java:190)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
         at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:598)
         at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:486)
         at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
         at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:499)
         at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:233)
         at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1065)
         at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:413)
         at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
         at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:999)
         at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
         at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
         at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
         at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
         at org.eclipse.jetty.server.Server.handle(Server.java:350)
         at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454)
         at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:900)
         at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:954)
         at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:851)
         at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
         at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:77)
         at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:606)
         at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:46)
         at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:603)
         at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:538)
         at java.lang.Thread.run(Thread.java:722)
    Caused by:
    java.io.NotSerializableException: oracle.jdbc.driver.T4CConnection
         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
         at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
         at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
         at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
         at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
         at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
         at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
         at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1362)
         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1170)
         at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
         at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
         at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
         at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1362)
         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1170)
         at java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:161)
         at java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1687)
         at java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:478)
         at java.util.Vector.writeObject(Vector.java:1073)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
         at java.lang.reflect.Method.invoke(Method.java:601)
         at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:975)
         at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1480)
         at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
         at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
         at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
         at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
         at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
         at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
         at remoting.RemotingManager.upCall(RemotingManager.java:179)
         at remoting.RemotingManager.upCall(RemotingManager.java:137)
         at remoting.RemotingManager.doPost(RemotingManager.java:187)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
         at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:598)
         at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:486)
         at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
         at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:499)
         at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:233)
         at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1065)
         at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:413)
         at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
         at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:999)
         at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
         at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
         at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
         at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
         at org.eclipse.jetty.server.Server.handle(Server.java:350)
         at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454)
         at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:900)
         at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:954)
         at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:851)
         at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
         at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:77)
         at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:606)
         at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:46)
         at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:603)
         at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:538)
         at java.lang.Thread.run(Thread.java:722)
    Edited by: 944957 on Oct 4, 2012 12:04 AM

    >
    I am trying to serialize the retrieved results of a query from one machine to another machine by populating the ResultSet into a CachedRowSet object. According to my understanding CachedRowSet is Serializable an should allow for data serialization over the wire. However, when I try sending the data, I get the following error. I googled the problem online and some people suggested that it is a problem with the version of the OJDBC driver. I have tried ojdbc14 and ojdbc6 for XE 11g but the results are the same. Could anyone give me some suggestion about whether it is possible, and how so?
    >
    This question should have been posted to the JDBC forum
    https://forums.oracle.com/forums/category.jspa?categoryID=288
    If the below does not answer your question mark it ANSWERED and repost it in the JDBC forum
    See CachedRowSet in chap 18 JDBC RowSets in the JDBC Developer's Guide
    http://docs.oracle.com/cd/E14072_01/java.112/e10589/jcrowset.htm#i630230
    That section includes extensive documentation of this and also includes example serialization code you can adapt.
    >
    The following code illustrates how an OracleCachedRowSet object is serialized to a file and then retrieved:

  • Problem on CachedRowset with RMI

    Hello,
    I wanted to transfer some database tables to another machine, thus I used RMI. I found there was a class called CachedRowset which could be serialized. So, I decided to use this.
    However, when I wrote the following code in an rmi method and ran, problem occurred.
    CachedRowSet crs= new CachedRowSetImpl();
    A NullPointerException was thrown:
    java.lang.NullPointerException
         at java.util.Properties$LineReader.readLine(Unknown Source)
         at java.util.Properties.load0(Unknown Source)
         at java.util.Properties.load(Unknown Source)
         at javax.sql.rowset.spi.SyncFactory.initMapIfNecessary(Unknown Source)
         at javax.sql.rowset.spi.SyncFactory.getInstance(Unknown Source)
         at com.sun.rowset.CachedRowSetImpl.<init>(Unknown Source)
    However, when I put the code into a non-rmi method, it will be ok.
    I could not figure out the reason. Who can help me?
    Thanks.

    Hi @hamidjoon , and welcome to the HP Forums!
    I see you are having copy issues.  I'd like to help!
    Before we get started, I need a little info:
     I am linking a few HP Support documents below that will show you how to find which operating system you are using. Also, if you're using Windows, please include whether your operating system is 32-bit or 64-bit.
    Mac OS X: How Do I Find Which Mac OS X Version Is on My Computer?
    Which Windows operating system am I running?
    Is the Windows Version on My Computer 32-bit or 64-bit?
    Please let me know what you find.  Thanks for posting on the HP Forums!
    Please click “Accept as Solution " if you feel my post solved your issue, it will help others find the solution.
    Click the “Kudos, Thumbs Up" on the right to say “Thanks" for helping!
    Jamieson
    I work on behalf of HP
    "Remember, I'm pulling for you, we're all in this together!" - Red Green.

  • Projeto - Reconhecimento de Voz e Comunicação Serial

    Olá, estou desenvolvendo um projeto no qual devo reconhecer comandos de voz e enviar posteriormente informações através de comunicação serial.
    A idéia do projeto é a seguinte :
    - Reconhecer comandos de voz como "POSIÇÃO 1, POSIÇÃO 2"
    - Para cada comando reconhecido, uma mensagem deve ser enviada via comunicação serial.
    No entanto, não venho conseguindo reconhecer comandos de voz através de alguns VI's fornecidos pela NI, então venho pedir ajuda para procurar um caminho para começar a construir tal projeto.
    Grato desde já.
    Gilberto Neto
    Estudante de Tecnologia em Mecatrônica Industrial
    Faculdade de Tecnologia Termomecanica

    Olá, achei bem interessante este projeto, porém tenho algumas perguntas:
    Existe alguma especificação quanto ao Hardware para capturar o sinal?
    Quando você diz: "Reconhecer comandos de voz como "POSIÇÃO 1, POSIÇÃO 2", você está se referindo que o conteúdo da mensagem falada é "POSIÇÃO 1,POSIÇÃO 2" ou que isso é uma mera identificação para uma mensagem diferente?
    Capturar o sinal emitido pela voz é relativamente fácil,porém a identificação e interpretação desse sinal que é algo mais complexo (Relativo a segunda pergunta que eu fiz). Com as VI's da paleta (Sound), você irá apenas coletar esse sinal, porém a análise heurística para interpretação fica a cabo do desenvolvedor. Felizmente, existem algumas Library como o SAPI e outras para abreviar este processo.
    Sobre a serialização deste sinal, você será basicamente "obrigado" a trabalhar com filas de tamanho fixo , pois os dados devem ser armazenados em sequência e serem despachados em blocos ANTES de serem repassados as funções VISA. Uma dica é repassar essa informação utilizando dados do tipo Digital (0,1) em vetores bidimensionais para assegurar que a mensagem seja serializada completamente (sem perder nenhum bit pelo caminho)
    Você irá precisar de 3 Loops: Um para a captura dos dados, um para interpretação e arranjo e outro para envio das informações. Pesquise sobre a arquitetura QMH ou P/C. Não é necessário usar nada mais complexo neste quesito
    Espero que eu tenha ajudado
    "In theory, theory and practice are the same. In practice, they’re not."

  • Deploying only Acrobat XI Pro CC package w/ Enterprise Serial # - Still getting "Sign In Required"

    Downloaded Creative Cloud Packager to create a serialized package of only Acrobat XI Pro.  I further customize the deployment via Adobe Customization Wizard XI, but did not re-enter the serial number (as suggested).  I am able to deploy from the Exceptions folder with the following cmd, msiexec /i "%inst%AcroPro.msi" PATCH="%inst%Updates\AcrobatUpd11006.msp" TRANSFORMS="%inst%Transforms\en_US.mst" /qn.  Upon launching Acrobat, I receive the a pop-up message, "Sign In Required.  Siging in with an Adobe ID and registering Creative Cloud Membership Enterprise is required within 32767 days otherwise it will stop working."  I don't understand why the serial number and Adobe ID I enterred when packaging did not carry over.  Any insight would be appreciated.

    Downloaded Creative Cloud Packager to create a serialized package of only Acrobat XI Pro.  I further customize the deployment via Adobe Customization Wizard XI, but did not re-enter the serial number (as suggested).  I am able to deploy from the Exceptions folder with the following cmd, msiexec /i "%inst%AcroPro.msi" PATCH="%inst%Updates\AcrobatUpd11006.msp" TRANSFORMS="%inst%Transforms\en_US.mst" /qn.  Upon launching Acrobat, I receive the a pop-up message, "Sign In Required.  Siging in with an Adobe ID and registering Creative Cloud Membership Enterprise is required within 32767 days otherwise it will stop working."  I don't understand why the serial number and Adobe ID I enterred when packaging did not carry over.  Any insight would be appreciated.

  • Using a serial Wacom tablet on a Mac Pro

    I have a good Wacom tablet with serial port interface that I would like to connect to a Mac Pro.
    Is there some way to do this? Is there any sort of serial to usb adapter or would that not work with a Mac Pro?
    Thanks for any advice.

    I don't think so. See these knowledge base articles from Wacom:
    http://www.wacom.com/faqs/knowledge_search.cfm?id=67
    http://www.wacom.com/faqs/knowledge_search.cfm?id=185

  • HT1349 How do you get help from apple if you don't know where to find the serial number of my "product."  I don't know if they mean my itunes program, my iphone, my computer, which one, the number on the computer (is there one), or something in Windows or

    How are you supposed to get help from Apple if you don't know what your serial number is?  They say to input the serial number of the "product" that you are asking about.  Since my problem is how to deauthorize/authorize computers, and they are saying I have more than 5 (which I have never owned more than 5 computers in my life), I can't imagine what serial number they mean.  Does it mean your desktop computer?  If so, which one?  Do they mean your device?  LIke your iPhone, iPod or whatever?  Do they mean the software ON one of your computers and/or devices?  If so, which program, and on which computer/device?
    We have three operational computers, one does not have iTunes on it.  Since Apple is saying I have more than 5 authorized computers, and I can't imagine what they are, I am afraid to deauthorize all my computers.  See what I mean?  I just wanted to ask the question about how I can find out WHICH computers Apple thinks I have authorized, so I can decide if it's safe to deauthorize them all or not.  I only know of 2 computers that have iTunes on them, so how can there be 5?  We also have 2 iPhones and 2 iPods in this family, but one of the iPhones has his own apple id.  He may have been using mine, since his computer died.  I read that those don't count as "computers" to the 5.  Do they, then?
    Help!  I can't contact apple because I have no idea what they mean about serial number.  I doubt they would help me anyway.  In order to get the serial number off my desktop computer (that has iTunes on it already), I will have to move furniture, so I don't want to if that's not it.  Is there some way to find the serial number in the software, either on my desktop or my iPhone?

    sunshinecowgill wrote:
    We have three operational computers, one does not have iTunes on it.  Since Apple is saying I have more than 5 authorized computers, and I can't imagine what they are, I am afraid to deauthorize all my computers.  See what I mean?  I just wanted to ask the question about how I can find out WHICH computers Apple thinks I have authorized, so I can decide if it's safe to deauthorize them all or not. 
    You could have more 5 computers authorized if you ever, for example, reformatted a hard drive or replaced a hard drive without deauthorizing the computer first. Apple's system would see that as a different computer, even though you don't. There's nothing to be afraid of in deauthorizing everything and the reauthorizing what you actually have. You won't lose any data. Mistimp is correct, they can't tell you which computers are authorized.

  • How Many Times Can I Use The Same Serial Number For Adobe Creative Suite 4?

    I have design standard and was told I can use the same serial number on multiple computers. How many time can I use it? And say I install it on the maximum number of computers, but get a new computer, can I uninstall it on one of the old computers and use it on the new one? And can I use the programs on both computers simultaneously or do I have to use them one at a time?

    Fred Tech wrote:
    Broadly speaking, it depends on the type of license you have.
    Specifically, if you have a single license then officially, you should only install it once on one computer.
    Practically, (unless it has changed with CS4) you maybe able to install it on more then one computer, BUT can only run one instance of the software at a time. You can not run more then one instance of the software concurrently; i.e. you can't run Dreamweaver on Computer 1 and Photoshop on Computer 2. That would be two instances, and is not permitted.
    This is my understanding. I am happy to be corrected if I am wrong
    Fred
    Sorry Fred you are wrong.
    If you have a single license you can install it on as many computers as you like. you can only activate the suite on two computers at anyone time. Work and Home or as many of us do it Desktop and Laptop. You can not use the computers simultaneously. You only have 20 activation/deactivations so use them wisely. Student versions only have one activation. You can not break up the suite installs the suite is considered one application.

  • How do I transfer an Acrobat serial number from one adobe account to another?

    I've installed Adobe DC Pro on one of our user's computers. When it asked for an Adobe ID I entered the ID I used to purchase the serial number. Unfortunately now acrobat always starts on the new computer and displays my name instead of the end user name. So I'm wondering how to either transfer the serial number to the end user's adobe account, or alternatively re-associate the acrobat on the end user machine with the end user's own adobe account.

    contact adobe support by clicking here and, when available, click 'still need help', https://helpx.adobe.com/contact.html

  • How many computers can you authorize with one serial number?

    Hey guys.
    I'm thinking about buying a 2nd Mac, but I'm just curious how many total computers you have authorize Logic studio on at one time (my guess would be 3 but I hope more).
    Please let me know if you can.
    Thanks,
    Nathan

    I'll copy my post from the other thread:
    I don't know for the others but in my retail package ((not upgrade) I found two serial numbers. Though I haven't got time yet to try the second serial number on my MacBook, my logic says that with two different serials I could run both macs simultaneously and be on the network. But, my logic fails so often so it's better to shut my mouth, install Logic on MacBook and come back here again.

  • How many times can you use a serial number?

    I used my serial number on one computer and I'm trying to use it on the other computer. But, on the other computer, it keeps saying that the serial number is invalid. I checked my number to see if i typed it correctly, and its correct but it still wont work! So I'm wondering if you are allowed to use one serial number on two computers. (I'm triying to use it to download the Adobe Photoshop Elements 11 app)

    You need to contact Adobe Support when you have serial number and activation issues, either by chat or via phone.

  • My serial number for Logic Studio doesn't work. I used one from a different box and it worked. How can I get a new number?

    My serial number for Logic Studio doesn't work. I used one from a different box and it worked. How can I get a new number?

    http://support.apple.com/kb/TS2005
    http://support.apple.com/kb/HT1861
    https://ssl.apple.com/support/proapps/serialnumbers/

  • How do I find a serial number for my iPod touch that I used with iTunes

    I used my iPod touch previously to down load music and I am looking for the serial number for that device....is the information stored in iTunes somewhere?

    The serial number of your device can be located at the back. Check on this page for more information.

  • Error message with a Serial Number after purchasing CS6 Design Standard

    Hello everyone,
    I have an error message "we are unable to validate this serial number for CS6 Design Standard" when using my official serial number.
    I got the Serial Number from my Adobe ID account and e-mail purchase validation.
    And no phone number to contact. Someone knows what I could do ?

    You should Contact Customer Care via chat; phone support is only available Mon-Fri during US daytime.

  • DI API error while adding AP Invoice (Using serial Nos.)

    Hi,
    Im getting the following DI API error when adding an AP Invoice which has serial numbers and i cant seem to find any logical fault in the code.
    " [PCH1.WhsCode][line: 4] , 'This entry already exists in the following tables (ODBC -2035) "
    If anybody has encountered this error and found a solution kindly let me know.

    Hi Vivek,
    Are you trying to add same document number, serial number or so on?
    "entry exist " means like "duplicate key problem", I guess.
    Basically, whscode column in PCH1 table allows duplicating.
    So, I think serial number is duplicated among same item code.
    Hope this useful for you.
    Regards,
    Hyunil Choi.

Maybe you are looking for