2010-04-09 9 views
6

Quando si tenta di eseguire il mio programma Java EE in Netbeans costituito da servlet (pagine java), JSP, bean (pagine java) e pagine HTML ottengo questo errore nell'output:JavaEE in netbeans che genera errore BUILD FAILED all'installazione

In-place deployment at C:\Users\Derek\Documents\NetBeansProjects\EJBProject\EJBProject-war\build\web 
Initializing... 
deploy?path=C:\Users\Derek\Documents\NetBeansProjects\EJBProject\EJBProject-war\build\web&name=EJBProject-war&force=true failed on Personal GlassFish v3 Domain 
C:\Users\Derek\Documents\NetBeansProjects\EJBProject\EJBProject-war\nbproject\build-impl.xml:611: The module has not been deployed. 
BUILD FAILED (total time: 1 second) 

E poi nel prompt dei comandi quando corro asant run nella directory appropriata, ottengo:

C: \ Users \ Derek \ Documenti \ NetBeansProjects \ EJBProject \ nbproject \ build-impl.xml : 19: Class org.apache.tools.ant.taskdefs.condition.Non non supporta l'elemento nidificato "antversion".

Sai perché sarebbe? Perché netbeans non distribuirà la mia applicazione in modo che possa eseguirla e testarla?

EDIT: versione formica è in realtà si avvicinò con ...

Apache Ant versione 1.6.5 compilato su 2 2005

giugno I registri di uscita GlassFish dicono:

SEVERE: Exception while loading the app 
java.lang.RuntimeException: EJB Container initialization error 
    at org.glassfish.ejb.startup.EjbApplication.loadContainers(EjbApplication.java:219) 
    at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:197) 
    at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:63) 
    at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:175) 
    at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:216) 
    at  com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:338) 
    at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:183) 
    at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:272) 
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:305) 
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:320) 
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1176) 
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$900(CommandRunnerImpl.java:83) 
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1235) 
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1224) 
    at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:365) 
    at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:204) 
    at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:166) 
    at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:100) 
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:245) 
    at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791) 
    at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693) 
    at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954) 
    at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170) 
    at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135) 
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102) 
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88) 
    at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76) 
    at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53) 
    at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57) 
    at com.sun.grizzly.ContextTask.run(ContextTask.java:69) 
    at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330) 
    at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309) 
    at java.lang.Thread.run(Thread.java:619) 
Caused by: java.lang.RuntimeException: Error while binding JNDI name x.results#x.results for EJB : resultsBean 
    at com.sun.ejb.containers.BaseContainer.initializeHome(BaseContainer.java:1530) 
    at com.sun.ejb.containers.StatefulSessionContainer.initializeHome(StatefulSessionContainer.java:214) 
    at com.sun.ejb.containers.ContainerFactoryImpl.createContainer(ContainerFactoryImpl.java:161) 
    at org.glassfish.ejb.startup.EjbApplication.loadContainers(EjbApplication.java:207) 
    ... 32 more 
Caused by: javax.naming.NameAlreadyBoundException: Use rebind to override 
    at com.sun.enterprise.naming.impl.TransientContext.doBindOrRebind(TransientContext.java:275) 
    at com.sun.enterprise.naming.impl.TransientContext.bind(TransientContext.java:214) 
    at com.sun.enterprise.naming.impl.SerialContextProviderImpl.bind(SerialContextProviderImpl.java:79) 
    at com.sun.enterprise.naming.impl.LocalSerialContextProviderImpl.bind(LocalSerialContextProviderImpl.java:81) 
    at com.sun.enterprise.naming.impl.SerialContext.bind(SerialContext.java:586) 
    at com.sun.enterprise.naming.impl.SerialContext.bind(SerialContext.java:602) 
    at javax.naming.InitialContext.bind(InitialContext.java:404) 
    at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.publishObject(GlassfishNamingManagerImpl.java:206) 
    at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.publishObject(GlassfishNamingManagerImpl.java:187) 
    at com.sun.ejb.containers.BaseContainer$JndiInfo.publish(BaseContainer.java:5484) 
    at com.sun.ejb.containers.BaseContainer.initializeHome(BaseContainer.java:1515) 

MODIFICA: Sembra che riguardi il mio bean di sessione "stateful", come quando lo elimino, funziona perfettamente.

+0

Causato da: javax.naming.NameAlreadyBoundException: Usa Rebind per ignorare Forse non avete pubblicato il vostro session bean statful correttamente –

+0

causato da: javax.naming.NameAlreadyBoundException: Usa rebind per ignorare -> Questa eccezione è generata da metodi per indicare che non è possibile aggiungere un'associazione poiché il nome è già associato a un altro oggetto. – user1428716

risposta

1

La mia ipotesi migliore è che hai scaricato e installato il "Profilo Web" di GlassFish Server 3 OPPURE hai creato un'app Web con un descrittore di distribuzione che forza il server a considerarla come Java EE 5 (o anche J2EE) 1.4) e quindi creato un EJB in quell'app Web ... il che probabilmente porterebbe a questo tipo di errori.

1

Sembra che alcuni campi sul bean di sessione Stateful abbiano lo stesso nome di altri campi bean Stateful Session. È solo un'ipotesi. Non ci sono molte informazioni sul tuo EJBS per fare un'analisi approfondita. Speranza che aiuta