Re: Using serialization to re-/store state: UnknownServiceException: protocol doesn't support output:

"Avinash Pedgaonker , SA, NIC" <[email protected]>
Newsgroups gmane.comp.java.sun.servlet
Message-ID <[email protected]>
Hi Carl,
I am also looking for same thing. I have written a bean for counter. I want
to serialise this bean  to a file so that on server restart i should be able
to get the last  count . Currently  I am explicitily writing it in file
using stream . I want to use object serialisation.
I have ' implements serialisable' but yet not clear when and what method
will be called when server is being stopped.

pl. shed some light on it.

with regards,
Avinash


-----Original Message-----
From: A mailing list for discussion about Sun Microsystem's Java Servlet
API Technology. [mailto:[email protected]]On Behalf Of Carl
Woermann
Sent: Wednesday, February 05, 2003 10:33 PM
To: [email protected]
Subject: Using serialization to re-/store state:
UnknownServiceException: protocol doesn't support output:


Hi all..

I'm using jsp & tomcat4.
The application collects user data.
I have a bean that contains all relevant data.
I am using serializtion to make the data persistant.
In order to restore the state of the bean I use:

<% URL resourceUrl =
application.getResource("/resource/SerializedBean.ser"); %>

// returns a valid url: jndi:/localhost/resource/MemberBean.ser

<jsp:useBean  id="registrationBean" scope="application"
type="Package.class" beanName="Package.SerializedBean" >
<%
 // the saved version is restored if there is no instance of this bean.
 boolean bool = registrationBean.restoreState(registrationBean,
resourceUrl);
 out.print("restored state: " + bool); //for debugging purposes..
%>
</jsp:useBean>

When saving the state with:

registrationBean.saveState(resourceUrl);

I get the following exception report:

Starting service Tomcat-Netbeans
Apache Tomcat/4.0.4
restoring state : jndi:/localhost/resource/MemberBean.ser
saving state to : jndi:/localhost/resource/MemberBean.ser
can do output: true */ SEE METHOD CALL BELOW /*
java.net.UnknownServiceException: protocol doesn't support output
        at java.net.URLConnection.getOutputStream(URLConnection.java:679)
                etc...

the code of the save state method is below:

public synchronized void saveState(URL url){
        this.url = url;
        try {
        URLConnection uConn = url.openConnection();
        uConn.setDoOutput(true);
        if (debug)
            { System.out.println("can do output: " + uConn.getDoOutput()); }

                OutputStream out = uConn.getOutputStream();
            ObjectOutputStream s = new ObjectOutputStream(out);
            s.writeObject(this);
            s.flush();
            s.close();
         uConn.setDoOutput(false);
        }
        catch(FileNotFoundException fnfex){ fnfex.printStackTrace(); }
        catch(IOException ioe){ ioe.printStackTrace(); }
    }

Can anybody shed some light on this problem?
What other means are availiable to make beans persistant within a Servlet
Container?

Any suggestions are greatly appreciated.

Thank you
CARL WOERMANN




__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com

___________________________________________________________________________
To unsubscribe, send email to [email protected] and include in the body
of the message "signoff SERVLET-INTEREST".

Archives: http://archives.java.sun.com/archives/servlet-interest.html
Resources: http://java.sun.com/products/servlet/external-resources.html
LISTSERV Help: http://www.lsoft.com/manuals/user/user.html

___________________________________________________________________________
To unsubscribe, send email to [email protected] and include in the body
of the message "signoff SERVLET-INTEREST".

Archives: http://archives.java.sun.com/archives/servlet-interest.html
Resources: http://java.sun.com/products/servlet/external-resources.html
LISTSERV Help: http://www.lsoft.com/manuals/user/user.html
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.