2015-11-16 10 views
7

Ho installato Glassfish 4 e ho provato a creare alcune risorse JMS per seguire un tutorial sull'apprendimento di JMS, ma è impossibile. Sull'interfaccia web appare sempre il testo "java.lang.RuntimeException" e sulla console di registro mostra la traccia dello stack. Questa eccezione viene generata sempre premendo il link "Nuovo ..." nella pagina "Risorse destinazione JMS" o nella pagina delle fabbriche di connessione. Ecco la traccia dello stack:Impossibile creare alcuna risorsa JMS tramite il web admin di Glassfish 4.1

[#|2015-11-16T09:15:24.090+0100|INFO|glassfish 4.1|org.glassfish.admingui|_ThreadID=48;_ThreadName=admin-listener(5);_TimeMillis=1447661724090;_LevelValue=800;| 

Exception Occurred :null|#] 

[#|2015-11-16T09:15:24.097+0100|INFO|glassfish 4.1|org.glassfish.admingui|_ThreadID=48;_ThreadName=admin-listener(5);_TimeMillis=1447661724097;_LevelValue=800;| 

Exception Occurred :null|#] 

[#|2015-11-16T09:15:24.100+0100|SEVERE|glassfish 4.1|javax.enterprise.resource.webcontainer.jsf.context|_ThreadID=48;_ThreadName=admin-listener(5);_TimeMillis=1447661724100;_LevelValue=1000;| 
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException while attempting to process a 'beforeCreate' event for 'event166'. 
    at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:422) 
    at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:394) 
    at com.sun.jsftemplating.layout.descriptors.LayoutComponent.beforeCreate(LayoutComponent.java:348) 
    at com.sun.jsftemplating.layout.descriptors.LayoutComponent.getChild(LayoutComponent.java:288) 
    at com.sun.jsftemplating.layout.LayoutViewHandler.buildUIComponentTree(LayoutViewHandler.java:556) 
    at com.sun.jsftemplating.layout.LayoutViewHandler.buildUIComponentTree(LayoutViewHandler.java:551) 
    at com.sun.jsftemplating.layout.LayoutViewHandler.buildUIComponentTree(LayoutViewHandler.java:507) 
    at com.sun.jsftemplating.layout.LayoutViewHandler.buildUIComponentTree(LayoutViewHandler.java:507) 
    at com.sun.jsftemplating.layout.LayoutViewHandler.createView(LayoutViewHandler.java:255) 
    at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:256) 
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) 
    at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:123) 
    at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198) 

    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:658) 
    at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) 
    at com.sun.webui.jsf.util.UploadFilter.doFilter(UploadFilter.java:233) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160) 
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734) 
    at org.apache.catalina.core.StandardPipeline.doChainInvoke(StandardPipeline.java:678) 
    at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174) 
    at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:416) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:283) 
    at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459) 
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167) 
    at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206) 
    at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180) 
    at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235) 
    at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119) 
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283) 
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200) 
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132) 
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111) 
    at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77) 
    at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536) 
    at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112) 
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117) 
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56) 
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137) 
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591) 
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571) 
    at java.lang.Thread.run(Thread.java:745) 
Caused by: java.lang.reflect.InvocationTargetException 
    at sun.reflect.GeneratedMethodAccessor156.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:497) 
    at com.sun.jsftemplating.layout.descriptors.handler.Handler.invoke(Handler.java:442) 
    at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:420) 
    ... 46 more 
Caused by: java.lang.NullPointerException 
    at com.sun.jsftemplating.handlers.UtilHandlers.mapPut(UtilHandlers.java:314) 
    ... 51 more 
|#] 

Non capisco perché la soluzione per questo fastidioso bug non sia registrata su Internet. Qualcuno può aiutarmi?

+2

La soluzione è probabilmente Payara. Glassfish è un'implementazione di riferimento non supportata open source, Payara è ancora disponibile e l'open source applica regolarmente patch al software server. Secondo me, ci sono poche ragioni per installare Glassfish. http://www.payara.co.uk/home. – Gimby

risposta

3

io sono con lo stesso problema qui con le risorse JDBC

Soluzione

sono stato in grado di aggiungere risorse utilizzando il asadmin console con il comando add-resources

È possibile consultare la documentazione qui si usa un file xml: https://docs.oracle.com/cd/E19776-01/820-4497/6nfv6jlim/index.html

Ho anche provato il Glassfish 4.0 (non il 4.1.1) e tutto ha funzionato bene a t egli Web-Admin-GUI

Spiegando mio caso

sto usando 4.1.1 Glassfish (build 1) su una versione Darwin Kernel 14.4.0 con la versione Java "1.8.0_40" (Java 8u66)

ho provato ad aggiungere una nuova risorsa JDBC al admin-gui: -> menu di sinistra -> Server -> Resources -> combobox 'nuove' risorse JDBC

infatti i occours errore in tutte le opzioni di questa casella combinata. Anche lo stesso problema in: -> menu di sinistra -> Risorse -> JDBC -> Risorse JDBC (o pool di connessioni JDBC)

La GUI Web mostra "classe java.lang.RuntimeException" e file di log dice:

[2015-11-18T09:34:46.529-0200] [glassfish 4.1] [SEVERE] [] [javax.enterprise.resource.webcontainer.jsf.context] 
[tid: _ThreadID=52 _ThreadName=admin-listener(3)] [timeMillis: 1447846486529] [levelValue: 1000 [[java.lang.RuntimeException: 
java.lang.reflect.InvocationTargetException while attempting to process a 'beforeCreate' event for 'event157'. 
     at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:422) 
     at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:394) 
     at com.sun.jsftemplating.layout.descriptors.LayoutComponent.beforeCreate(LayoutComponent.java:348) 
.... [snip] 
Caused by: java.lang.reflect.InvocationTargetException 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
.... [snip] 
Caused by: java.lang.NullPointerException 
     at com.sun.jsftemplating.handlers.UtilHandlers.mapPut(UtilHandlers.java:314) 
.... [snip] 
+1

@VictorStafusa Questo problema è [segnalato in github.com] (https://github.com/javaee/glassfish/issues/21437) e apparentemente risolto in 5.0. Ora che Glassfish è disponibile con 'git' e usa Maven dovrebbe essere possibile creare una versione di sviluppo e provarla anche se questo bug mostra una cattiva qualità del software e mina la fiducia nell'implementazione di riferimento Java EE, i commenti sul problema parlano per loro stessi. –

3

mi stavo errore simile durante la creazione della risorsa CF e connessione JMS Queue/Topic. Ma sotto i comandi hanno lavorato per me in comando asadmin>

asadmin> create-jms-resource --host localhost --port 4848 --restype javax.jms.TopicConnectionFactory --property Name=MyID jms/DurableTopicConnectionFactory 

comando CREATE-JMS-risorsa eseguito con successo.

asadmin> create-jms-resource --host localhost --port 4848 --restype javax.jms.QueueConnectionFactory --property Name=MyQCF jms/QCF1 

Il comando create-jms-resource è stato eseguito correttamente.

asadmin> create-jms-resource --host localhost --port 4848 --restype javax.jms.Topic --property Name=PhysicalTopic jms/MyTopic 

sintassi Deprecato, invece utilizzare:
asadmin --host localhost --port 4848 create-jms-resource [options] ..
jms oggetto amministrato/MyTopic creato. Comando create-jms-resource eseguito correttamente.

asadmin> create-jms-resource --host localhost --port 4848 --restype javax.jms.Queue --property Name=PhysicalQueue jms/MyQueue 

Oggetto gestito jms/MyQueue creato.

Nota: è possibile ignorare tranquillamente il messaggio Obsoleto. Basta aggiornare le risorse della pagina di amministrazione e fare clic su "Nuovo" vedrete le nuove risorse.

spero che questo aiuti.

2

Questo problema sembra essere stato risolto in Glassfish 4.1.2, dove è possibile creare nuove risorse JMS utilizzando l'interfaccia di amministrazione Web.

+0

È un peccato che continuino a offrire 4.1.1 nella pagina di download ufficiale di netbeans :( Che tipo di software è, se rilasciano un'applicazione rotta al mondo? – Palo

Problemi correlati