Salve a tutti mi sono appena iscritto al forum.
Il mio nome è Ciro e da un pò di tempo mi sto avvicinando con la dovuta umiltà alla tecnologia J2EE.
Vorre un aiuto su un stateful session bean 3.0.
Vi inoltro il codice, funziona, ma il server mi da un errore e non riesco a capire il perchè![]()
![]()
![]()
ecco il codice:
Interfaccia remota del bean.......
Corpo del bean........codice:/* * cart.java * * Created on 1 ottobre 2009, 15.28 * * To change this template, choose Tools | Template Manager * and open the template in the editor. */ package esempiopack; import java.util.Collection; import javax.ejb.Remote; @Remote public interface cart { public void addItem(String item); public void removeItem(String item); public Collection getItems(); }
classe di esecuzione........codice:package esempiopack; import java.util.ArrayList; import java.util.Collection; import javax.ejb.PostConstruct; import javax.ejb.Stateless; @Stateless public class cartbean implements cart { private ArrayList items; @PostConstruct public void initialize() { items = new ArrayList(); } public void addItem(String item) { items.add(item); } public void removeItem(String item) { items.remove(item); } public Collection getItems() { return items; } }
Ecco il risultato del primo lancio........codice:package provabean; import javax.naming.InitialContext; import javax.naming.NamingException; import java.util.Collection; import java.util.Iterator; import javax.naming.Context; import esempiopack.*; public class prova { /** * @param args the command line arguments */ public static void main(String[] args) throws NamingException { final Context ctx = getInitialContext(); ctx.addToEnvironment("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory"); ctx.addToEnvironment("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces"); ctx.addToEnvironment("java.naming.provider.url","localhost"); cart appo = (cart)ctx.lookup(cart.class.getName()); System.out.println("Adding items to cart"); appo.addItem("Pizza"); appo.addItem("Pasta"); appo.addItem("Noodles"); appo.addItem("Bread"); appo.addItem("Butter"); System.out.println("Listing cart contents"); Collection items = appo.getItems(); for (Iterator i = items.iterator(); i.hasNext();) { String item = (String) i.next(); System.out.println(" " + item); } } private static Context getInitialContext() throws NamingException { return new InitialContext(); } }
Ecco il risultato dei successivi lanci........codice:init: deps-jar: init: deps-jar: compile: library-inclusion-in-archive: dist: compile: run: ciro2 Adding items to cart Listing cart contents Pizza Pasta Noodles Bread Butter BUILD SUCCESSFUL (total time: 2 seconds)
Ma ad ogni lancio mi dà questo errore............codice:init: deps-jar: init: deps-jar: compile: library-inclusion-in-archive: dist: compile: run: ciro2 Adding items to cart Listing cart contents Pizza Pasta Noodles Bread Butter Pizza Pasta Noodles Bread Butter Pizza Pasta Noodles Bread Butter Pizza Pasta Noodles Bread Butter Pizza Pasta Noodles Bread Butter Pizza Pasta Noodles Bread Butter Pizza Pasta Noodles Bread Butter Pizza Pasta Noodles Bread Butter Pizza Pasta Noodles Bread Butter Pizza Pasta Noodles Bread Butter BUILD SUCCESSFUL (total time: 0 seconds)
codice:09:56:55,920 ERROR [ServerThread] failed java.net.SocketException: Connection reset at java.net.SocketInputStream.read(SocketInputStream.java:168) at java.io.BufferedInputStream.fill(BufferedInputStream.java:218) at java.io.BufferedInputStream.read(BufferedInputStream.java:235) at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2196) at java.io.ObjectInputStream$BlockDataInputStream.readBlockHeader(ObjectInputStream.java:2376) at java.io.ObjectInputStream$BlockDataInputStream.refill(ObjectInputStream.java:2443) at java.io.ObjectInputStream$BlockDataInputStream.read(ObjectInputStream.java:2515) at java.io.ObjectInputStream$BlockDataInputStream.readByte(ObjectInputStream.java:2664) at java.io.ObjectInputStream.readByte(ObjectInputStream.java:875) at org.jboss.remoting.transport.socket.ServerSocketWrapper.checkConnection(ServerSocketWrapper.java:54) at org.jboss.remoting.transport.socket.ServerThread.acknowledge(ServerThread.java:217) at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:298) at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:169)

Rispondi quotando

