방금 OS를 다시 설치하고 항상 사용하는 표준 도구를 설치하고 테스트했습니다. 이제 이클립스에서 Jboss 5를 시작하려고 할 때 이전과는 전혀 다른 오류가 발생합니다.
3:53:10,693 ERROR [AbstractKernelController] Error installing to Instantiated: name=AttachmentStore state=Described
java.lang.IllegalArgumentException: Wrong arguments. new for target java.lang.reflect.Constructor expected=[java.net.URI] actual=[java.io.File]
at org.jboss.reflect.plugins.introspection.ReflectionUtils.handleErrors(ReflectionUtils.java:395)
at org.jboss.reflect.plugins.introspection.ReflectionUtils.newInstance(ReflectionUtils.java:153)
at org.jboss.reflect.plugins.introspection.ReflectConstructorInfoImpl.newInstance(ReflectConstructorInfoImpl.java:106)
at org.jboss.joinpoint.plugins.BasicConstructorJoinPoint.dispatch(BasicConstructorJoinPoint.java:80)
at org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.createTarget(AOPConstructorJoinpoint.java:282)
at org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.dispatch(AOPConstructorJoinpoint.java:103)
at org.jboss.kernel.plugins.dependency.KernelControllerContextAction$JoinpointDispatchWrapper.execute(KernelControllerContextAction.java:241)
at org.jboss.kernel.plugins.dependency.ExecutionWrapper.execute(ExecutionWrapper.java:47)
at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextAction.java:109)
at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:70)
at org.jboss.kernel.plugins.dependency.InstantiateAction.installActionInternal(InstantiateAction.java:66)
at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54)
at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42)
at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:774)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:540)
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBean(AbstractKernelDeployer.java:319)
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBeans(AbstractKernelDeployer.java:297)
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deploy(AbstractKernelDeployer.java:130)
at org.jboss.kernel.plugins.deployment.BasicKernelDeployer.deploy(BasicKernelDeployer.java:76)
at org.jboss.bootstrap.microcontainer.TempBasicXMLDeployer.deploy(TempBasicXMLDeployer.java:91)
at org.jboss.bootstrap.microcontainer.TempBasicXMLDeployer.deploy(TempBasicXMLDeployer.java:161)
at org.jboss.bootstrap.microcontainer.ServerImpl.doStart(ServerImpl.java:138)
at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:450)
at org.jboss.Main.boot(Main.java:221)
at org.jboss.Main$1.run(Main.java:556)
at java.lang.Thread.run(Thread.java:619)
Failed to boot JBoss:
java.lang.IllegalStateException: Incompletely deployed:
DEPLOYMENTS IN ERROR:
Deployment "AttachmentStore" is in error due to: java.lang.IllegalArgumentException: Wrong arguments. new for target java.lang.reflect.Constructor expected=[java.net.URI] actual=[java.io.File]
DEPLOYMENTS MISSING DEPENDENCIES:
Deployment "ProfileServiceBootstrap" is missing the following dependencies:
Dependency "ProfileService" (should be in state "Installed", but is actually in state "Instantiated")
Dependency "jboss.kernel:service=Kernel" (should be in state "Installed", but is actually in state "**ERROR**")
Deployment "ProfileServiceDeployer" is missing the following dependencies:
Dependency "AttachmentStore" (should be in state "Installed", but is actually in state "**ERROR**")
Deployment "ProfileService" is missing the following dependencies:
Dependency "ProfileServiceDeployer" (should be in state "Installed", but is actually in state "Instantiated")
Dependency "jboss.kernel:service=KernelController" (should be in state "Installed", but is actually in state "**ERROR**")
Deployment "ProfileServicePersistenceDeployer" is missing the following dependencies:
Dependency "AttachmentStore" (should be in state "Installed", but is actually in state "**ERROR**")
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.internalValidate(AbstractKernelDeployer.java:278)
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.validate(AbstractKernelDeployer.java:174)
at org.jboss.bootstrap.microcontainer.ServerImpl.doStart(ServerImpl.java:142)
at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:450)
at org.jboss.Main.boot(Main.java:221)
at org.jboss.Main$1.run(Main.java:556)
at java.lang.Thread.run(Thread.java:619)
23:53:11,600 INFO [ServerImpl] Runtime shutdown hook called, forceHalt: true
23:53:11,615 INFO [ServerImpl] Shutdown complete
누구도 비슷한 문제를 겪은 적이 있었나요?
답변
JRE 및 OS 버전의 특정 조합에서 발생하는 버그처럼 보입니다 ( https://jira.jboss.org/jira/browse/JBAS-6981 참조 ). 기본적으로 JBoss 구성은 특정 순서로 생성자를 반환하기 위해 리플렉션에 의존하고 있으며 경우에 따라이 순서가 다르므로 예외가 발생합니다. 1.6.0_17에서 _18로 재설치 할 때 JRE 버전을 변경 했습니까?
어쨌든 해결 방법은 JIRA 문제와 여기에 설명되어 있습니다 . 의 내용을 변경해야합니다 conf/bootstrap/profile.xml
. 의 정의를 AttachmentStore
찾아서 다음과 같이 시작하도록 생성자 줄을 변경합니다 (예 : 태그에 class
XML 속성 추가 parameter
).
<constructor><parameter class="java.io.File"><inject …
원래 버전에는 class="java.io.File"
속성 이 없습니다 .
JBoss 사람들은 꽤 조잡하지만 거기에 있습니다.
답변
jboss-5.0.0.GA-JDK6 / server / default / conf / bootstrap $ diff bindings.xml.old bindings.xml
이 파일에서 두 가지를 변경해야합니다. 하나:
낡은
<bean name="StandardBindings" class="java.util.HashSet"
< elementClass="org.jboss.services.binding.ServiceBindingMetadata">
<constructor>
<parameter>
<set>
—New
<bean name="StandardBindings" class="java.util.HashSet">
<constructor>
<parameter class="java.util.Collection">
<set elementClass="org.jboss.services.binding.ServiceBindingMetadata">
둘째 : 그리고 아래 빈 정의의 http 포트 번호
<bean class="org.jboss.services.binding.ServiceBindingMetadata">
<property name="serviceName">jboss.web:service=WebServer</property>
<property name="port">7070</property>