Boa tarde a todos.
Estou com um problema, criei um projeto calculadoraweb com as seguintes classes:
LancadorDeDadosBean
package br.com.dado.ejb;
import java.util.Random;
import javax.ejb.Remote;
import javax.ejb.Stateless;
@Stateless
@Remote(LancadorDeDado.class)
public class LancadorDeDadosBean implements LancadorDeDado{
private Random gerador = new Random();
@Override
public int lanca() {
return gerador.nextInt(6)+1;
}
}
LancadorDeDado
package br.com.dado.ejb;
public interface LancadorDeDado {
int lanca();
}
Estou tentando acessar está classe por um outro projeto web chamado ProjetoAcessoCalculadoraWeb - ambos os projetos estão no mesmo servidor de aplicação WildFly8.x.
JogadorDeDadosRemotoServlet
package br.com.teste.servlet;
import java.io.IOException;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import br.com.dado.ejb.LancadorDeDado;
@WebServlet("/JogadorDeDadosRemotoServlet")
public class JogadorDeDadosRemotoServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public JogadorDeDadosRemotoServlet() {
super();
}
@Override
protected void service(HttpServletRequest arg0, HttpServletResponse arg1)
throws ServletException, IOException {
try {
InitialContext ic = new InitialContext();
LancadorDeDado lancar =
(LancadorDeDado) ic.lookup("java:global/calculadoraEAR/calculadoraweb/LancadorDeDadosBean");
System.out.println(lancar.lanca());
} catch (NamingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Acontece o seguinte erro quando vou acessar este Servlet.
16:35:55,586 INFO [org.jboss.modules] (main) JBoss Modules version 1.3.3.Final
16:35:55,799 INFO [org.jboss.msc] (main) JBoss MSC version 1.2.2.Final
16:35:55,874 INFO [org.jboss.as] (MSC service thread 1-6) JBAS015899: WildFly 8.2.1.Final "Tweek" starting
16:35:57,470 INFO [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) JBAS015014: Re-attempting failed deployment calculadoraEAR.ear
16:35:57,485 INFO [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) JBAS015003: Found calculadoraEAR.ear in deployment directory. To trigger deployment create a file called calculadoraEAR.ear.dodeploy
16:35:57,486 INFO [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) JBAS015003: Found ProjetosDadosWeb.war in deployment directory. To trigger deployment create a file called ProjetosDadosWeb.war.dodeploy
16:35:57,510 INFO [org.jboss.as.server] (Controller Boot Thread) JBAS015888: Creating http management service using socket-binding (management-http)
16:35:57,533 INFO [org.xnio] (MSC service thread 1-7) XNIO version 3.3.0.Final
16:35:57,544 INFO [org.xnio.nio] (MSC service thread 1-7) XNIO NIO Implementation Version 3.3.0.Final
16:35:57,646 INFO [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 27) JBAS010403: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3)
16:35:57,727 INFO [org.wildfly.extension.io] (ServerService Thread Pool -- 31) WFLYIO001: Worker 'default' has auto-configured to 8 core threads with 64 task threads based on your 4 available processors
16:35:57,769 INFO [org.jboss.as.connector.logging] (MSC service thread 1-2) JBAS010408: Starting JCA Subsystem (IronJacamar 1.1.9.Final)
16:35:57,777 INFO [org.jboss.as.naming] (ServerService Thread Pool -- 40) JBAS011800: Activating Naming Subsystem
16:35:57,780 INFO [org.jboss.as.jsf] (ServerService Thread Pool -- 38) JBAS012615: Activated the following JSF Implementations: [main]
16:35:57,783 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-6) JBAS010417: Started Driver service with driver-name = h2
16:35:57,805 INFO [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 32) JBAS010280: Activating Infinispan subsystem.
16:35:57,859 WARN [org.jboss.as.txn] (ServerService Thread Pool -- 46) JBAS010153: Node identifier property is set to the default value. Please make sure it is unique.
16:35:57,861 INFO [org.jboss.as.security] (ServerService Thread Pool -- 45) JBAS013171: Activating Security Subsystem
16:35:57,903 INFO [org.jboss.as.naming] (MSC service thread 1-6) JBAS011802: Starting Naming Service
16:35:57,904 INFO [org.jboss.as.mail.extension] (MSC service thread 1-6) JBAS015400: Bound mail session [java:jboss/mail/Default]
16:35:57,915 INFO [org.jboss.as.webservices] (ServerService Thread Pool -- 48) JBAS015537: Activating WebServices Extension
16:35:57,957 INFO [org.jboss.as.security] (MSC service thread 1-4) JBAS013170: Current PicketBox version=4.0.21.Final
16:35:58,016 INFO [org.wildfly.extension.undertow] (MSC service thread 1-1) JBAS017502: Undertow 1.1.8.Final starting
16:35:58,018 INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 47) JBAS017502: Undertow 1.1.8.Final starting
16:35:58,210 INFO [org.jboss.remoting] (MSC service thread 1-8) JBoss Remoting version 4.0.7.Final
16:35:58,421 INFO [org.wildfly.extension.undertow] (MSC service thread 1-8) JBAS017525: Started server default-server.
16:35:58,427 INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 47) JBAS017527: Creating file handler for path C:\Users\Renato\Downloads\java\desenv\wildfly-8.2.1.Final/welcome-content
16:35:58,458 INFO [org.wildfly.extension.undertow] (MSC service thread 1-1) JBAS017531: Host default-host starting
16:35:58,685 INFO [org.jboss.as.server.deployment] (MSC service thread 1-7) JBAS015876: Starting deployment of "calculadoraEAR.ear" (runtime-name: "calculadoraEAR.ear")
16:35:58,685 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2) JBAS015876: Starting deployment of "ProjetosDadosWeb.war" (runtime-name: "ProjetosDadosWeb.war")
16:35:58,688 INFO [org.jboss.as.server.deployment.scanner] (MSC service thread 1-8) JBAS015012: Started FileSystemDeploymentService for directory C:\Users\Renato\Downloads\java\desenv\wildfly-8.2.1.Final\standalone\deployments
16:35:58,690 INFO [org.wildfly.extension.undertow] (MSC service thread 1-6) JBAS017519: Undertow HTTP listener default listening on localhost/127.0.0.1:8080
16:35:58,771 INFO [org.jboss.as.server.deployment] (MSC service thread 1-6) JBAS015973: Starting subdeployment (runtime-name: "calculadoraweb.war")
16:35:58,771 INFO [org.jboss.as.server.deployment] (MSC service thread 1-7) JBAS015973: Starting subdeployment (runtime-name: "calculadora.jar")
16:35:58,936 WARN [org.jboss.as.ejb3] (MSC service thread 1-2) JBAS014218: [EJB3.1 spec, section 4.9.2] Session bean implementation class MUST NOT be an interface - br.com.dado.ejb.LancadorDeDado is an interface, hence won't be considered as a session bean
16:35:59,052 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-5) JBAS010400: Bound data source [java:jboss/datasources/ExampleDS]
16:35:59,129 INFO [org.jboss.weld.deployer] (MSC service thread 1-6) JBAS016002: Processing weld deployment calculadoraEAR.ear
16:35:59,263 INFO [org.hibernate.validator.internal.util.Version] (MSC service thread 1-6) HV000001: Hibernate Validator 5.1.3.Final
16:35:59,546 INFO [org.jboss.weld.deployer] (MSC service thread 1-5) JBAS016002: Processing weld deployment calculadora.jar
16:35:59,560 INFO [org.jboss.weld.deployer] (MSC service thread 1-6) JBAS016002: Processing weld deployment calculadoraweb.war
16:35:59,572 INFO [org.jboss.as.ejb3.deployment.processors.EjbJndiBindingsDeploymentUnitProcessor] (MSC service thread 1-6) JNDI bindings for session bean named LancadorDeDadosBean in deployment unit subdeployment "calculadoraweb.war" of deployment "calculadoraEAR.ear" are as follows:
java:global/calculadoraEAR/calculadoraweb/LancadorDeDadosBean!br.com.dado.ejb.LancadorDeDado
java:app/calculadoraweb/LancadorDeDadosBean!br.com.dado.ejb.LancadorDeDado
java:module/LancadorDeDadosBean!br.com.dado.ejb.LancadorDeDado
java:jboss/exported/calculadoraEAR/calculadoraweb/LancadorDeDadosBean!br.com.dado.ejb.LancadorDeDado
java:global/calculadoraEAR/calculadoraweb/LancadorDeDadosBean
java:app/calculadoraweb/LancadorDeDadosBean
java:module/LancadorDeDadosBean
16:35:59,593 INFO [org.jboss.as.ejb3.deployment.processors.EjbJndiBindingsDeploymentUnitProcessor] (MSC service thread 1-5) JNDI bindings for session bean named CalculadoraBean in deployment unit subdeployment "calculadora.jar" of deployment "calculadoraEAR.ear" are as follows:
java:global/calculadoraEAR/calculadora/CalculadoraBean!br.com.calculadora.ejb.Calculadora
java:app/calculadora/CalculadoraBean!br.com.calculadora.ejb.Calculadora
java:module/CalculadoraBean!br.com.calculadora.ejb.Calculadora
java:global/calculadoraEAR/calculadora/CalculadoraBean
java:app/calculadora/CalculadoraBean
java:module/CalculadoraBean
16:35:59,623 INFO [org.jboss.ws.common.management] (MSC service thread 1-8) JBWS022052: Starting JBoss Web Services - Stack CXF Server 4.3.2.Final
16:35:59,653 INFO [org.jboss.weld.deployer] (MSC service thread 1-8) JBAS016005: Starting Services for CDI deployment: calculadoraEAR.ear
16:35:59,820 INFO [org.jboss.weld.Version] (MSC service thread 1-8) WELD-000900: 2.2.6 (Final)
16:35:59,985 INFO [org.jboss.weld.deployer] (MSC service thread 1-4) JBAS016008: Starting weld service for deployment calculadoraEAR.ear
16:36:00,688 INFO [org.wildfly.extension.undertow] (MSC service thread 1-1) JBAS017534: Registered web context: /ProjetosDadosWeb
16:36:01,857 INFO [javax.enterprise.resource.webcontainer.jsf.config] (MSC service thread 1-8) Inicializando Mojarra 2.2.8-jbossorg-1 20140822-1131 para o contexto '/calculadoraweb'
16:36:02,352 INFO [org.wildfly.extension.undertow] (MSC service thread 1-8) JBAS017534: Registered web context: /calculadoraweb
16:36:02,414 INFO [org.jboss.as.server] (ServerService Thread Pool -- 28) JBAS018559: Deployed "ProjetosDadosWeb.war" (runtime-name : "ProjetosDadosWeb.war")
16:36:02,415 INFO [org.jboss.as.server] (ServerService Thread Pool -- 28) JBAS018559: Deployed "calculadoraEAR.ear" (runtime-name : "calculadoraEAR.ear")
16:36:02,456 INFO [org.jboss.as] (Controller Boot Thread) JBAS015961: Http management interface listening on http://127.0.0.1:9990/management
16:36:02,458 INFO [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
16:36:02,458 INFO [org.jboss.as] (Controller Boot Thread) JBAS015874: WildFly 8.2.1.Final "Tweek" started in 7242ms - Started 489 of 560 services (120 services are lazy, passive or on-demand)
16:36:03,857 INFO [org.jboss.ejb.client] (default task-2) JBoss EJB Client version 2.0.1.Final
16:36:03,861 ERROR [io.undertow.request] (default task-2) UT005023: Exception handling request to /ProjetosDadosWeb/JogadorDeDadosRemotoServlet: java.lang.NoClassDefFoundError: br/com/dado/ejb/LancadorDeDado
at br.com.teste.servlet.JogadorDeDadosRemotoServlet.service(JogadorDeDadosRemotoServlet.java:35) [classes:]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [jboss-servlet-api_3.1_spec-1.0.0.Final.jar:1.0.0.Final]
at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:86) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:58) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:70) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.security.handlers.SecurityInitialHandler.handleRequest(SecurityInitialHandler.java:76) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:261) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:248) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:77) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:167) [undertow-servlet-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.server.Connectors.executeRootHandler(Connectors.java:199) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:761) [undertow-core-1.1.8.Final.jar:1.1.8.Final]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [rt.jar:1.8.0_60]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [rt.jar:1.8.0_60]
at java.lang.Thread.run(Unknown Source) [rt.jar:1.8.0_60]
Caused by: java.lang.ClassNotFoundException: br.com.dado.ejb.LancadorDeDado from [Module "deployment.ProjetosDadosWeb.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) [jboss-modules.jar:1.3.3.Final]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) [jboss-modules.jar:1.3.3.Final]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408) [jboss-modules.jar:1.3.3.Final]
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389) [jboss-modules.jar:1.3.3.Final]
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134) [jboss-modules.jar:1.3.3.Final]
... 28 more
Já andei pesquisando, mas não encontrei uma resposta satisfatória para resolução deste problema.
Agradeço a ajuda de todos. Obrigado