Avevo un'applicazione stand-alone (lato client) che comunicava con un server (in locale sulla stessa macchina per test) e andava tutto ok. Adesso il client è una Applet con gui, la connessione tra client e server va a buon fine ma il problema sorge quando cerco di fare un operazione di scrittura sullo stream in out del client, ad esempio un operazione banale:
codice:
out.writeObject(new Integer(1));
ho una nullPointerException... Non riesco a capire dove sia il problema poichè la connessione avviene e il codice è identico(con le opportune modifiche) a quello che avevo in precedenza, quando ancora non era un applet. Quindi mi viene spontaneo pensare che mi manchi qualcosa per il fatto che ora ho a che fare con una applet -ma non ne sono sicuro- che abbia qualcosa a che fare con i limiti di scrittura/lettura delle applet?


EDIT: Scusate, forse dovrei dormire di più, ho risolto. Mi è venuto in mente di controllare una cosa appena ho inviato il post. Lol.

Per non buttare completamente questo topic, pongo un'altra domanda:
Sempre la stessa applet di cui sopra, quando provo ad eseguirla tramite file html non viene visualizzata e ho una serie di errori:
codice:
addr = /127.0.0.1 java.lang.reflect.InvocationTargetException 	at com.sun.deploy.util.DeployAWTUtil.invokeAndWait(DeployAWTUtil.java:116) 	at sun.plugin2.applet.Plugin2Manager.runOnEDT(Plugin2Manager.java:3415) 	at sun.plugin2.applet.Plugin2Manager.createApplet(Plugin2Manager.java:2967) 	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Plugin2Manager.java:1444) 	at java.lang.Thread.run(Thread.java:619) Caused by: java.security.AccessControlException: access denied (java.net.SocketPermission 127.0.0.1:8080 connect,resolve) 	at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323) 	at java.security.AccessController.checkPermission(AccessController.java:546) 	at java.lang.SecurityManager.checkPermission(SecurityManager.java:532) 	at java.lang.SecurityManager.checkConnect(SecurityManager.java:1034) 	at sun.plugin2.applet.Applet2SecurityManager.checkConnect(Applet2SecurityManager.java:500) 	at java.net.Socket.connect(Socket.java:524) 	at java.net.Socket.connect(Socket.java:478) 	at java.net.Socket.<init>(Socket.java:375) 	at java.net.Socket.<init>(Socket.java:218) 	at JTreeApplet.initGUI(JTreeApplet.java:113) 	at JTreeApplet.<init>(JTreeApplet.java:93) 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) 	at java.lang.reflect.Constructor.newInstance(Constructor.java:513) 	at java.lang.Class.newInstance0(Class.java:355) 	at java.lang.Class.newInstance(Class.java:308) 	at sun.plugin2.applet.Plugin2Manager$12.run(Plugin2Manager.java:2955) 	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:199) 	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597) 	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) 	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) 	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) 	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) 	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122) Eccezione: java.lang.reflect.InvocationTargetException
il codice html che uso:
codice:
<html><body><applet classpath="\PrjMAP\Client\bin" code="JTreeApplet.class" width="500" height="500" ></applet></body></html>
Se commento la parte della connessione al server l'applet viene visualizzata correttamente...