최근에 jboss와 eclipse로 JPA 프로그램을 시도했습니다. MySQL에 연결하기 위해 JBoss 설치 디렉토리 경로에 필요한 mySQL-connector JAR 파일을 넣었습니다. jboss의 standalone.xml에 구성을 추가했으며 Eclipse에서 jboss를 시작하면 제대로 시작됩니다. 나 또한 구성된 연결뿐. 하지만 내 ejb 프로그램을 추가하고 서버를 시작하면 다음과 같은 오류가 발생합니다.이 문제를 해결하기 위해 검색 할 때 각 포럼마다 다른 해결책을 제공하지만 아무 것도 내 문제를 해결하지 못하는 것 같습니다.mysql에 연결하는 동안 JBoss 서버 예외가 발생했습니다.
ERROR
17 : 34 : 17,195 오류 [org.jboss.msc.service.fail (MSC 서비스 스레드 1-5) MSC00001 : 서비스 시작 실패 jboss.deployment.unit . "FirstEJBProject.jar".INSTALL : org.jboss.msc.service.StartException 서비스 jboss.deployment.unit. "FirstEJBProject.jar".INSTALL : 단계의 설치 "FirstEJBProject.jar"설치를 처리하지 못했습니다. org.jboss.as.server.deployment.DeploymentUnitPhaseService.start (DeploymentUnitPhaseService.java:119) [jb oss-as-server-7.1.1.Final.jar : 7.1.1.Final] org.jboss.msc.service.ServiceControllerImpl $ StartTask.startService (ServiceControllerImpl.java:1811) [jboss-msc-1.0. 2.GA.jar : 1.0.2.GA] at org.jboss.msc.service.ServiceControllerImpl $ StartTask.run (ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar : 1.0. 2.GA] java.util.concurrent.ThreadPoolExecutor.runWorker (알 소스) [에서의 rt.jar : java.util.concurrent.ThreadPoolExecutor $ Worker.run에서 1.7.0_13 (알 소스) [RT. jar : 1.7.0_13]에서 java.lang.Thread.run (알 수없는 소스) [rt.jar : 1.7.0_13] 발생 원인 : java.lang.IllegalArgumentException : 비어 있음 Java에서 이름 세그먼트가 허용되지 않음 org.jboss.msc.service.ServiceName.of (ServiceName.java:85) [jboss-msc-1.0.2.GA.jar : 1.0.2.GA] at org.jboss.msc.service.ServiceName. 추가 (ServiceName.java:112) [jboss-msc-1.0.2.GA.jar : 1.0.2.GA] at org.jboss.as.naming.deployment.ContextNames.buildServiceName (ContextNames.java:178) org.jboss.as.naming.deployment.ContextNames $ BindInfo에서 . org.jboss.as.naming.deployment.ContextNames $ BindInfo에서 (ContextNames.java:190) . (ContextNames.java:181) 에서 (org.jboss.as.naming.deployment.ContextNames.java:124) 된 .java 165) org.jboss.as.jpa.processor.PersistenceUnitDeploymentProcessor.addPuService에서 org.jboss.as.jpa.processor.PersistenceUnitDeploymentProcessor.deployPersistenceUnit (PersistenceUnitDeploymentProcessor.java:319) (PersistenceUnitDeploymentProcessor.java:258에서)에 org.jboss.as.jpa.processor.PersistenceUnitDeploymentProcessor.handleJarDeployment org.jboss.as.jpa.processor.PersistenceUnitDeploymentProcessor.deploy (PersistenceUnitDeploymentProcessor.java:120에서 (PersistenceUnitDeploymentProcessor.java:145) ) 에서 org.jboss.as.server.deployment.DeploymentUnitPhaseService.start (DeploymentUnitPhaseService.java:113) [jboss-as-server-7.1] .1.Final.jar : 7.1.1. 최종 ...] 5 더
17 : 34 : 17,430 정보 [org.jboss.as.JBAS015870 : 배포 "FirstEJBProject.jar"의 배포가 실패 메시지 ("JBAS014671 : 실패한 서비스"=> { "jboss.deployment.unit. \"FirstEJBProject.jar])가 포함 된 롤백되었습니다. \\ ". INSTALL"=> "서비스의 org.jboss.msc.service.StartException jboss.deployment.unit. \"FirstEJBProject.jar \ "INSTALL : 배포 단계의 설치 단계 \"FirstEJBProject. jar \ ""}, "JBAS014771 : 종속성/누락 된 서비스"=> [ "jboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.StudentLogic.Validatorjboss.naming.context.java.comp.FirstEJBProject. FirstEJBProject.StudentLogicMissing [jboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.StudentLogic. Validator.js " [ko] (MSC 서비스 스레드 1-2) JBAS015877 : 13ms에 FirstEJBProject.jar가 중지됨 17 : 34 : 17,445 정보 [org.jboss.as.controller] (DeploymentScanner-threads - 2) JBAS014774 : 서비스 상태 보고 JBAS014775 : 새로운 누락/불완전한 종속성 : service jboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.Stude ntLogic 부양 (누락) : jboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.StudentLogic.ValidatorFactory, 서비스 서비스 jboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.StudentLogic.Validator] JBST014777 : 시작에 실패한 서비스 : 서비스 jboss.deployment.unit. "FirstEJBProject.jar".INSTALL : 서비스의 org.jboss.msc.service.StartException jboss.deployment.unit. "FirstEJBProject.jar".INSTALL : 위상 배포 "FirstEJBProject.jar"를 설치하는 데 실패 처리
17 : 34 : 17,461 ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads-1) { "JBAS014653 : 복합 작업 이 실패하여 롤백되었습니다. "=> {"작업 단계 -2 " => {"JBAS014671 : 실패한 서비스 "=> {"jboss.deployment.unit. \ "FirstEJBProject.jar \". INSTALL "=> "org. 서비스의 시작 코드 jboss.deployment.unit. "FirstEJBProject.jar"설치 : 배포 단계의 설치 단계 \ "FirstEJBProject.jar \" ","JBAS014771 : 종속성이 누락되었거나 사용할 수 없음 "=> ["jboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.StudentLogic.Validatorjboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.StudentLogicMissing [jboss.naming.context.java .comp.FirstEJBProject.FirstEJBProject.StudentLogic.Validatorjboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.StudentLogic] ","jboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject .StudentLogic.ValidatorFactoryjboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.StudentLogicMissing [jboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.StudentLogic.ValidatorFactoryjboss.naming.context.java.comp.FirstEJBProject.FirstEJBProject.StudentLogic ] "]}}}
의 persistence.xml
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
version="1.0">
<!-- MySQL DataSource -->
<persistence-unit name="STUD">
<jta-data-source>java:/</jta-data-source>
<properties>
<property name="showSql" value="true" />
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />
</properties>
</persistence-unit>
sstandalone한다.xxx
<datasource jndi-name="java:/mydb" pool-name="my_pool" enabled="true" jta="true" use-java-context="true" use-ccm="true">
<connection-url>jdbc:mysql://localhost:3306/myschema</connection-url>
<driver>mysql</driver>
<security>
<user-name>root</user-name>
<password>password</password>
</security>
<statement>
<prepared-statement-cache-size>
100
</prepared-statement-cache-size>
<share-prepared-statements/>
</statement>
</datasource>
<drivers>
<driver name="h2" module="com.h2database.h2">
<xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
</driver>
<driver name="mysql" module="com.mysql"/>
</drivers>
</datasources>
여기에 뭔가가 빠졌습니다.
나는 mySQL-ds.xml을 사용해 보았고 데이터 소스를 해석 할 수 없기 때문에 다른 오류가 발생했다. 내 프로그램을 패키징하고 JBoss에서 SQL 연결을 다시 할 필요가 없기 때문에 솔루션을 알고 있다면 도움이 될 것입니다.
감사합니다.