All,

I'm using a segment of code, taken from a Sun J2EE programming book, which results in 
an IntraVMHandle.write error.  At least that's what I think is happening.  I know 
there's a simple solution, however, I was just curious to see what was going wrong 
with this bit.

Thanks,
Graham

the code looks like this:
    // returns the string that represents the given
    // EJBObject's handle in serialized format
    public String getId(EJBObject session) throws Exception{
        try{
            javax.ejb.Handle handle = session.getHandle();
            System.out.println("handle -- >" +handle.toString());
            ByteArrayOutputStream fo = new ByteArrayOutputStream();
            ObjectOutputStream so = new ObjectOutputStream(fo);
            so.writeObject(handle);
            so.flush();
            so.close();
            return new String(fo.toByteArray());
        }catch(RemoteException ex){
            throw ex;
        }catch(IOException ex){
            throw ex;            
        }
    }

and the error, like this:
java.lang.NullPointerException
        at org.openejb.core.ivm.IntraVmHandle.writeReplace(IntraVmHandle.java:150)
        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 java.io.ObjectStreamClass.invokeWriteReplace(ObjectStreamClass.java:882)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1011)
        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)
        at com.thejanehuts.util.ServiceLocator.getId(ServiceLocator.java:66)
        at 
com.thejanehuts.delegate.property.CPropertyDelegate.getId(CPropertyDelegate.java:101)
        at 
com.thejanehuts.delegate.property.CPropertyDelegate.getUserProperties(CPropertyDelegate.java:36)
        at 
com.thejanehuts.viewhelper.property.CPropertyVH.getUserProperties(CPropertyVH.java:33)
        at 
com.thejanehuts.servlet.property.CPropertyView.processRequest(CPropertyView.java:80)
        at com.thejanehuts.servlet.property.CPropertyView.doGet(CPropertyView.java:119)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
        at 
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:305)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
        at 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:184)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972)
        at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:833)
        at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:732)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:619)
        at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:688)
        at java.lang.Thread.run(Thread.java:536)



____________________________________________________________
Find what you are looking for with the Lycos Yellow Pages
http://r.lycos.com/r/yp_emailfooter/http://yellowpages.lycos.com/default.asp?SRC=lycos10

Reply via email to