Hi Vijaishankar,
I write the colde like this , I am getting exception, please help me.
--------sender file ---------------
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.PrintWriter;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
* @version 1.0
* @author
*/
public class URLSender extends HttpServlet implements Servlet {
public void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
try {
ArrayList aList = new ArrayList();
aList.add("1");
aList.add("2");
aList.add("3");
aList.add("4");
aList.add("5");
aList.add("6");
aList.add("7");
aList.add("8");
aList.add("9");
URL aURL = new URL("http://localhost:9080/GUTA/URLReceiver");
System.out.println("URL : "+aURL);
URLConnection aConnection = aURL.openConnection();
System.out.println("URL COnnection : "+aConnection);
aConnection.setDoInput(true);
aConnection.setDoOutput(true);
aConnection.setUseCaches(false);
aConnection.setDefaultUseCaches(false);
aConnection.setRequestProperty("Content-Type",
"application/octet-stream");
ObjectOutputStream out = new ObjectOutputStream(aConnection
.getOutputStream());
out.writeObject(aList);
out.flush();
out.close();
System.out.println("End of the file");
ObjectInputStream in = new ObjectInputStream(aConnection.getInputStream());
String text = (String) in.readObject();
System.out.println(text);
} catch (Exception e) {
e.printStackTrace();
}
}
}
-----------receiver file in different application---------
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OptionalDataException;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
* @version 1.0
* @author
*/
public class URLReceiver extends HttpServlet implements Servlet {
public void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
resp.setContentType("text/html");
PrintWriter out=resp.getWriter();
out.println("Hi this is Receiver URL");
System.out.println("Hi this is Receiver URL");
ObjectInputStream resultStream = null;
ObjectOutputStream sendStream = null;
List results = null;
try {
resultStream = new ObjectInputStream(req.getInputStream());
results = (List) resultStream.readObject();
resultStream.close();
sendStream = new ObjectOutputStream(resp.getOutputStream());
//sendStream.writeObject(String.valueOf(results.size()));
System.out.println("Hi this is Receiver Size "+String.valueOf(results.size()));
sendStream.flush();
sendStream.close();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
/*try {
resp.setContentType("text/html");
PrintWriter out=resp.getWriter();
out.println("Hi this is Receiver URL");
System.out.println("Hi this is Receiver URL");
//URL userloginservlet = new URL("http://localhost:9080/DEN/URLSender");
//System.out.println("URL : "+userloginservlet);
//URLConnection servletConnection = userloginservlet.openConnection();
//ObjectOutputStream oos = new ObjectOutputStream(servletConnection.getOutputStream());
ObjectInputStream ois = new ObjectInputStream(req.getInputStream());
DataBean p = (DataBean) ois.readObject();
while(true){
System.out.println("Name Value is : "+p.getName());
System.out.println("Pass Value is : "+p.getPass());
}
//DataBean db=new DataBean();
//db.setName("Yandra");
//db.setPass("ramsea");
//oos.writeObject(db);
//ObjectInputStream ois = new ObjectInputStream(servletConnection.getInputStream());
////outs = servletConnection.getOutputStream();
//DataBean db;
//db = (DataBean) ois.readObject();
//db.setName("Yandra");
//db.setPass("ramsea");
//System.out.println("URL COnnection : "+servletConnection);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
*/
}
}
---------exception-------------------
[4/17/07 15:42:54:000 CDT] 60e0c639 WebGroup E SRVE0026E: [Servlet Error]-[URLReceiver]: java.lang.IllegalStateException: Writer already obtained
at com.ibm.ws.webcontainer.srt.SRTServletResponse.getOutputStream(SRTServletResponse.java:490)
at URLReceiver.service(URLReceiver.java:41)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:948)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:530)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:176)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:79)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:201)
at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:182)
at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:610)
at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:431)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:593)