2017-11-09 3 views
1

사실 저는 Java-ee 사양이 처음이에요. 나는 훈련 용으로 간단한 프로젝트를 진행하고 있습니다.
주요 아이디어는 간단한 Java 원격, stateless 인터페이스 및 구현을위한 간단한 클래스가 포함 된 "firstEJB"라는 EJB 프로젝트를 만드는 것입니다.
두 번째 프로젝트는 이미 서버에 배포 된 EJB를 사용하기위한 Java 프로젝트입니다 context.lookup() 메소드를 통해.
문제는 조회 메서드가 항상 예외 명명 형식의 예외를 던져서 올바른 JNDI 이름을 사용하고 있음을 확신합니다.Java-ee 컨텍스트 검색이 항상 실패합니다

PS :
- 자바 SE 1.8
- - EJB 버전 3.2
응용 프로그램 서버
로 제이보스 9.0.2.Final - 나는 OS
으로 높은 시에라을 MAC OS를 x를 사용하고 있습니다 - javax의 7.0

이 프로젝트의 아키텍처 click me

,382입니다인터페이스

package com.esprit; 

import javax.ejb.Remote; 


@Remote 
public interface Calculette { 

    float add(float a, float b); 

} 

구현

package com.esprit; 

import javax.ejb.Stateless; 

@Stateful 
public class CalculetteImplementation implements Calculette { 

    @Override 
    public float add(float a, float b) { 
     // TODO Auto-generated method stub 
     return 0; 
    } 

} 

클라이언트 응용 프로그램의 주요 방법

package com.calculette.test; 

import javax.naming.Context; 
import javax.naming.InitialContext; 
import javax.naming.NamingException; 

import com.esprit.Calculette; 

public class CalculetteTest { 


    public static void main(String[] args){ 


     Context con; 
     try { 
      con = new InitialContext(); 
      Object o = con.lookup("/firstEJB/CalculetteImplementation!com.esprit.Calculette"); 
      Calculette calculette = (Calculette) o; 
     } catch (NamingException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
      e.getCause(); 
     } 


    } 

} 

JNDI 속성서버 콘솔에 36,864,475,524,920,663,210

java.naming.factory.initial=org.jboss.naming.remote.client.InitialContextFactory 
java.naming.provider.url=http-remoting://localhost:8080 
jboss.naming.client.ejb.context=true 

EJB의 pom.xml 파일

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.esprit</groupId> 
    <artifactId>firstEJB</artifactId> 
    <version>1.0-SNAPSHOT</version> 
    <packaging>ejb</packaging> 

    <properties> 
     <maven.compiler.target>1.8</maven.compiler.target> 
     <maven.compiler.source>1.8</maven.compiler.source> 
    </properties> 

    <dependencies> 
     <dependency> 
      <artifactId>javaee-api</artifactId> 
      <groupId>javax</groupId> 
      <version>7.0</version> 
      <scope>provided</scope> 
     </dependency> 
    </dependencies> 
    <build> 
     <plugins> 
      <plugin> 
       <artifactId>maven-ejb-plugin</artifactId> 
       <configuration> 
        <ejbVersion>3.2</ejbVersion> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

</project> 

클라이언트의 pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.esprit</groupId> 
    <artifactId>firstEJBClient</artifactId> 
    <packaging>jar</packaging> 
    <version>1.0-SNAPSHOT</version> 


    <properties> 
     <maven.compiler.source>1.8</maven.compiler.source> 
     <maven.compiler.target>1.8</maven.compiler.target> 
    </properties> 

    <dependencies> 
     <dependency> 
      <groupId>org.wildfly</groupId> 
      <artifactId>wildfly-ejb-client-bom</artifactId> 
      <version>9.0.0.Alpha1</version> 
      <type>pom</type> 
     </dependency> 
     <dependency> 
      <groupId>com.esprit</groupId> 
      <artifactId>firstEJB</artifactId> 
      <version>1.0-SNAPSHOT</version> 
     </dependency> 
    </dependencies> 

</project> 

JNDI 이름

,451,515,
java:global/firstEJB/CalculetteImplementation!com.esprit.Calculette 
    java:app/firstEJB/CalculetteImplementation!com.esprit.Calculette 
    java:module/CalculetteImplementation!com.esprit.Calculette 
    java:global/firstEJB/CalculetteImplementation 
    java:app/firstEJB/CalculetteImplementation 
    java:module/CalculetteImplementation 

오류 예외

Nov 09, 2017 11:53:27 PM org.xnio.Xnio <clinit> 
INFO: XNIO version 3.3.0.Beta2 
Nov 09, 2017 11:53:27 PM org.xnio.nio.NioXnio <clinit> 
INFO: XNIO NIO Implementation Version 3.3.0.Beta2 
Nov 09, 2017 11:53:27 PM org.jboss.remoting3.EndpointImpl <clinit> 
INFO: JBoss Remoting version 4.0.5.Beta1 
Nov 09, 2017 11:53:27 PM org.jboss.ejb.client.remoting.VersionReceiver handleMessage 
INFO: EJBCLIENT000017: Received server version 2 and marshalling strategies [river] 
Nov 09, 2017 11:53:27 PM org.jboss.ejb.client.remoting.RemotingConnectionEJBReceiver associate 
INFO: EJBCLIENT000013: Successful version handshake completed for receiver context EJBReceiverContext{[email protected], receiver=Remoting connection EJB receiver [connection=Remoting connection <7f885430>,channel=jboss.ejb,nodename=souhaibs-macbook-pro]} on channel Channel ID 9edf3d6f (outbound) of Remoting connection 25a18cbc to localhost/127.0.0.1:8080 
javax.naming.NameNotFoundException: firstEJB/CalculetteImplementation!com.esprit.Calculette -- service jboss.naming.context.java.jboss.exported.firstEJB."CalculetteImplementation!com.esprit.Calculette" 
    at org.jboss.as.naming.ServiceBasedNamingStore.lookup(ServiceBasedNamingStore.java:106) 
    at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:207) 
    at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:184) 
    at org.jboss.naming.remote.protocol.v1.Protocol$1.handleServerMessage(Protocol.java:127) 
    at org.jboss.naming.remote.protocol.v1.RemoteNamingServerV1$MessageReciever$1.run(RemoteNamingServerV1.java:73) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
    at java.lang.Thread.run(Thread.java:745) 

Standalone.xml

<?xml version="1.0" ?> 

<server xmlns="urn:jboss:domain:3.0"> 

    <extensions> 
     <extension module="org.jboss.as.clustering.infinispan"/> 
     <extension module="org.jboss.as.connector"/> 
     <extension module="org.jboss.as.deployment-scanner"/> 
     <extension module="org.jboss.as.ee"/> 
     <extension module="org.jboss.as.ejb3"/> 
     <extension module="org.jboss.as.jaxrs"/> 
     <extension module="org.jboss.as.jdr"/> 
     <extension module="org.jboss.as.jmx"/> 
     <extension module="org.jboss.as.jpa"/> 
     <extension module="org.jboss.as.jsf"/> 
     <extension module="org.jboss.as.logging"/> 
     <extension module="org.jboss.as.mail"/> 
     <extension module="org.jboss.as.naming"/> 
     <extension module="org.jboss.as.pojo"/> 
     <extension module="org.jboss.as.remoting"/> 
     <extension module="org.jboss.as.sar"/> 
     <extension module="org.jboss.as.security"/> 
     <extension module="org.jboss.as.transactions"/> 
     <extension module="org.jboss.as.webservices"/> 
     <extension module="org.jboss.as.weld"/> 
     <extension module="org.wildfly.extension.batch"/> 
     <extension module="org.wildfly.extension.bean-validation"/> 
     <extension module="org.wildfly.extension.io"/> 
     <extension module="org.wildfly.extension.request-controller"/> 
     <extension module="org.wildfly.extension.security.manager"/> 
     <extension module="org.wildfly.extension.undertow"/> 
    </extensions> 


    <management> 
     <security-realms> 
      <security-realm name="ManagementRealm"> 
       <authentication> 
        <local default-user="$local" skip-group-loading="true"/> 
        <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/> 
       </authentication> 
       <authorization map-groups-to-roles="false"> 
        <properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/> 
       </authorization> 
      </security-realm> 
      <security-realm name="ApplicationRealm"> 
       <authentication> 
        <local default-user="$local" allowed-users="*" skip-group-loading="true"/> 
        <properties path="application-users.properties" relative-to="jboss.server.config.dir"/> 
       </authentication> 
       <authorization> 
        <properties path="application-roles.properties" relative-to="jboss.server.config.dir"/> 
       </authorization> 
      </security-realm> 
     </security-realms> 
     <audit-log> 
      <formatters> 
       <json-formatter name="json-formatter"/> 
      </formatters> 
      <handlers> 
       <file-handler name="file" formatter="json-formatter" path="audit-log.log" relative-to="jboss.server.data.dir"/> 
      </handlers> 
      <logger log-boot="true" log-read-only="false" enabled="false"> 
       <handlers> 
        <handler name="file"/> 
       </handlers> 
      </logger> 
     </audit-log> 
     <management-interfaces> 
      <http-interface security-realm="ManagementRealm" http-upgrade-enabled="true"> 
       <socket-binding http="management-http"/> 
      </http-interface> 
     </management-interfaces> 
     <access-control provider="simple"> 
      <role-mapping> 
       <role name="SuperUser"> 
        <include> 
         <user name="$local"/> 
        </include> 
       </role> 
      </role-mapping> 
     </access-control> 
    </management> 

    <profile> 
     <subsystem xmlns="urn:jboss:domain:logging:3.0"> 
      <console-handler name="CONSOLE"> 
       <level name="INFO"/> 
       <formatter> 
        <named-formatter name="COLOR-PATTERN"/> 
       </formatter> 
      </console-handler> 
      <periodic-rotating-file-handler name="FILE" autoflush="true"> 
       <formatter> 
        <named-formatter name="PATTERN"/> 
       </formatter> 
       <file relative-to="jboss.server.log.dir" path="server.log"/> 
       <suffix value=".yyyy-MM-dd"/> 
       <append value="true"/> 
      </periodic-rotating-file-handler> 
      <logger category="com.arjuna"> 
       <level name="WARN"/> 
      </logger> 
      <logger category="org.apache.tomcat.util.modeler"> 
       <level name="WARN"/> 
      </logger> 
      <logger category="org.jboss.as.config"> 
       <level name="DEBUG"/> 
      </logger> 
      <logger category="sun.rmi"> 
       <level name="WARN"/> 
      </logger> 
      <logger category="jacorb"> 
       <level name="WARN"/> 
      </logger> 
      <logger category="jacorb.config"> 
       <level name="ERROR"/> 
      </logger> 
      <root-logger> 
       <level name="INFO"/> 
       <handlers> 
        <handler name="CONSOLE"/> 
        <handler name="FILE"/> 
       </handlers> 
      </root-logger> 
      <formatter name="PATTERN"> 
       <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/> 
      </formatter> 
      <formatter name="COLOR-PATTERN"> 
       <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/> 
      </formatter> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:batch:1.0"> 
      <job-repository> 
       <in-memory/> 
      </job-repository> 
      <thread-pool> 
       <max-threads count="10"/> 
       <keepalive-time time="30" unit="seconds"/> 
      </thread-pool> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:bean-validation:1.0"/> 
     <subsystem xmlns="urn:jboss:domain:datasources:3.0"> 
      <datasources> 
       <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true"> 
        <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url> 
        <driver>h2</driver> 
        <security> 
         <user-name>sa</user-name> 
         <password>sa</password> 
        </security> 
       </datasource> 
       <drivers> 
        <driver name="h2" module="com.h2database.h2"> 
         <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class> 
        </driver> 
       </drivers> 
      </datasources> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:deployment-scanner:2.0"> 
      <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" runtime-failure-causes-rollback="${jboss.deployment.scanner.rollback.on.failure:false}"/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:ee:3.0"> 
      <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement> 
      <concurrent> 
       <context-services> 
        <context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/> 
       </context-services> 
       <managed-thread-factories> 
        <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/> 
       </managed-thread-factories> 
       <managed-executor-services> 
        <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" core-threads="5" max-threads="25" keepalive-time="5000"/> 
       </managed-executor-services> 
       <managed-scheduled-executor-services> 
        <managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" core-threads="2" keepalive-time="3000"/> 
       </managed-scheduled-executor-services> 
      </concurrent> 
      <default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/ExampleDS" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:ejb3:3.0"> 
      <session-bean> 
       <stateful default-access-timeout="5000" cache-ref="simple" passivation-disabled-cache-ref="simple"/> 
       <singleton default-access-timeout="5000"/> 
      </session-bean> 
      <pools> 
       <bean-instance-pools> 
        <strict-max-pool name="slsb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/> 
        <strict-max-pool name="mdb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/> 
       </bean-instance-pools> 
      </pools> 
      <caches> 
       <cache name="simple"/> 
       <cache name="distributable" passivation-store-ref="infinispan" aliases="passivating clustered"/> 
      </caches> 
      <passivation-stores> 
       <passivation-store name="infinispan" cache-container="ejb" max-size="10000"/> 
      </passivation-stores> 
      <async thread-pool-name="default"/> 
      <timer-service thread-pool-name="default" default-data-store="default-file-store"> 
       <data-stores> 
        <file-data-store name="default-file-store" path="timer-service-data" relative-to="jboss.server.data.dir"/> 
       </data-stores> 
      </timer-service> 
      <remote connector-ref="http-remoting-connector" thread-pool-name="default"/> 
      <thread-pools> 
       <thread-pool name="default"> 
        <max-threads count="10"/> 
        <keepalive-time time="100" unit="milliseconds"/> 
       </thread-pool> 
      </thread-pools> 
      <default-security-domain value="other"/> 
      <default-missing-method-permissions-deny-access value="true"/> 
      <log-system-exceptions value="true"/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:io:1.1"> 
      <worker name="default"/> 
      <buffer-pool name="default"/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:infinispan:3.0"> 
      <cache-container name="server" default-cache="default" module="org.wildfly.clustering.server"> 
       <local-cache name="default"> 
        <transaction mode="BATCH"/> 
       </local-cache> 
      </cache-container> 
      <cache-container name="web" default-cache="passivation" module="org.wildfly.clustering.web.infinispan"> 
       <local-cache name="passivation"> 
        <locking isolation="REPEATABLE_READ"/> 
        <transaction mode="BATCH"/> 
        <file-store passivation="true" purge="false"/> 
       </local-cache> 
       <local-cache name="persistent"> 
        <locking isolation="REPEATABLE_READ"/> 
        <transaction mode="BATCH"/> 
        <file-store passivation="false" purge="false"/> 
       </local-cache> 
      </cache-container> 
      <cache-container name="ejb" default-cache="passivation" module="org.wildfly.clustering.ejb.infinispan" aliases="sfsb"> 
       <local-cache name="passivation"> 
        <locking isolation="REPEATABLE_READ"/> 
        <transaction mode="BATCH"/> 
        <file-store passivation="true" purge="false"/> 
       </local-cache> 
       <local-cache name="persistent"> 
        <locking isolation="REPEATABLE_READ"/> 
        <transaction mode="BATCH"/> 
        <file-store passivation="false" purge="false"/> 
       </local-cache> 
      </cache-container> 
      <cache-container name="hibernate" default-cache="local-query" module="org.hibernate.infinispan"> 
       <local-cache name="local-query"> 
        <eviction strategy="LRU" max-entries="10000"/> 
        <expiration max-idle="100000"/> 
       </local-cache> 
       <local-cache name="entity"> 
        <transaction mode="NON_XA"/> 
        <eviction strategy="LRU" max-entries="10000"/> 
        <expiration max-idle="100000"/> 
       </local-cache> 
       <local-cache name="timestamps"/> 
      </cache-container> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/> 
     <subsystem xmlns="urn:jboss:domain:jca:3.0"> 
      <archive-validation enabled="true" fail-on-error="true" fail-on-warn="false"/> 
      <bean-validation enabled="true"/> 
      <default-workmanager> 
       <short-running-threads> 
        <core-threads count="50"/> 
        <queue-length count="50"/> 
        <max-threads count="50"/> 
        <keepalive-time time="10" unit="seconds"/> 
       </short-running-threads> 
       <long-running-threads> 
        <core-threads count="50"/> 
        <queue-length count="50"/> 
        <max-threads count="50"/> 
        <keepalive-time time="10" unit="seconds"/> 
       </long-running-threads> 
      </default-workmanager> 
      <cached-connection-manager/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:jdr:1.0"/> 
     <subsystem xmlns="urn:jboss:domain:jmx:1.3"> 
      <expose-resolved-model/> 
      <expose-expression-model/> 
      <remoting-connector/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:jpa:1.1"> 
      <jpa default-datasource="" default-extended-persistence-inheritance="DEEP"/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:jsf:1.0"/> 
     <subsystem xmlns="urn:jboss:domain:mail:2.0"> 
      <mail-session name="default" jndi-name="java:jboss/mail/Default"> 
       <smtp-server outbound-socket-binding-ref="mail-smtp"/> 
      </mail-session> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:naming:2.0"> 
      <remote-naming/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:pojo:1.0"/> 
     <subsystem xmlns="urn:jboss:domain:remoting:3.0"> 
      <endpoint worker="default"/> 
      <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:resource-adapters:3.0"/> 
     <subsystem xmlns="urn:jboss:domain:request-controller:1.0"/> 
     <subsystem xmlns="urn:jboss:domain:sar:1.0"/> 
     <subsystem xmlns="urn:jboss:domain:security-manager:1.0"> 
      <deployment-permissions> 
       <maximum-set> 
        <permission class="java.security.AllPermission"/> 
       </maximum-set> 
      </deployment-permissions> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:security:1.2"> 
      <security-domains> 
       <security-domain name="other" cache-type="default"> 
        <authentication> 
         <login-module code="Remoting" flag="optional"> 
          <module-option name="password-stacking" value="useFirstPass"/> 
         </login-module> 
         <login-module code="RealmDirect" flag="required"> 
          <module-option name="password-stacking" value="useFirstPass"/> 
         </login-module> 
        </authentication> 
       </security-domain> 
       <security-domain name="jboss-web-policy" cache-type="default"> 
        <authorization> 
         <policy-module code="Delegating" flag="required"/> 
        </authorization> 
       </security-domain> 
       <security-domain name="jboss-ejb-policy" cache-type="default"> 
        <authorization> 
         <policy-module code="Delegating" flag="required"/> 
        </authorization> 
       </security-domain> 
      </security-domains> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:transactions:3.0"> 
      <core-environment> 
       <process-id> 
        <uuid/> 
       </process-id> 
      </core-environment> 
      <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:undertow:2.0"> 
      <buffer-cache name="default"/> 
      <server name="default-server"> 
       <http-listener name="default" socket-binding="http" redirect-socket="https"/> 
       <host name="default-host" alias="localhost"> 
        <location name="/" handler="welcome-content"/> 
        <filter-ref name="server-header"/> 
        <filter-ref name="x-powered-by-header"/> 
       </host> 
      </server> 
      <servlet-container name="default"> 
       <jsp-config/> 
       <websockets/> 
      </servlet-container> 
      <handlers> 
       <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/> 
      </handlers> 
      <filters> 
       <response-header name="server-header" header-name="Server" header-value="WildFly/9"/> 
       <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/> 
      </filters> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:webservices:2.0"> 
      <wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host> 
      <endpoint-config name="Standard-Endpoint-Config"/> 
      <endpoint-config name="Recording-Endpoint-Config"> 
       <pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM"> 
        <handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/> 
       </pre-handler-chain> 
      </endpoint-config> 
      <client-config name="Standard-Client-Config"/> 
     </subsystem> 
     <subsystem xmlns="urn:jboss:domain:weld:2.0"/> 
    </profile> 

    <interfaces> 
     <interface name="management"> 
      <inet-address value="${jboss.bind.address.management:127.0.0.1}"/> 
     </interface> 
     <interface name="public"> 
      <inet-address value="${jboss.bind.address:127.0.0.1}"/> 
     </interface> 
     <interface name="unsecure"> 
      <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/> 
     </interface> 
    </interfaces> 

    <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}"> 
     <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/> 
     <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/> 
     <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/> 
     <socket-binding name="http" port="${jboss.http.port:8080}"/> 
     <socket-binding name="https" port="${jboss.https.port:8443}"/> 
     <socket-binding name="txn-recovery-environment" port="4712"/> 
     <socket-binding name="txn-status-manager" port="4713"/> 
     <outbound-socket-binding name="mail-smtp"> 
      <remote-destination host="localhost" port="25"/> 
     </outbound-socket-binding> 
    </socket-binding-group> 

</server> 

답변

1

당신은 클라이언트 측 조회에서 정규화 된 이름을 사용해야합니다 파일. 예 :

java : global/firstEJB/CalculetteImplementation! com.esprit.Calculette

Code to list all the entries in jndi on remote machine에 설명 된 솔루션을 사용하여 EJB bean이 성공적으로 등록되었는지 확인할 수 있습니다.

+0

고마워,이게 나를 위해 일했어. 나는 완전한 jndi 이름을 사용하지 않는 튜토리얼을 따르고 있었지만 "java : global"을 추가하면 더 이상 예외가 없다. –

관련 문제