天天看點

JBoss啟動異常——常見錯誤

轉自:https://jingyan.baidu.com/article/db55b609e596654ba20a2f58.html

初學習jboss,遇到一些問題,轉載一些好東西收藏着。

工具/原料

  • jboss應用伺服器
  • window作業系統

第一類報錯:java.rmi.server.ExportException

  • 報錯:“java.rmi.server.ExportException: Port already in use: 1098; nested exception is:  java.net.BindException: Address already in use: JVM_Bind“
  • 此錯誤常在4.2版本中出現。

    需要修改的檔案的路徑:jboss-4.2.2.GA\server\default\conf\jboss-service.xml   把1098改為其它端口号,直到它成功為止。

    <attribute name="Port">1099</attribute>

    <attribute name="RmiPort">1098</attribute>

    END

第二類報錯:java.net.BindException

  • 報錯:“java.net.BindException: Address already in use: JVM_Bind:8080

    需要修改的檔案的路徑:jboss-4.2.2.GA\server\default\deploy\jboss-web.deployer\server.xml”

  • 此錯誤在各個版本都常見。

    把8080改為其它端口号,直到它成功為止,修改後一定記得要儲存.如安裝eclipse插件可以打開服務直接修改Port即可。

    END

第三類報錯:Deployment "AttachmentStore" is in error due to

  • 報錯:"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]"

    具體:

    ...

    16:15:28,605 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 "ProfileServicePersistenceDeployer" is missing the following dependencies:   

        Dependency "AttachmentStore" (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 "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**")   

        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)   

    16:15:29,515 INFO  [ServerImpl] Runtime shutdown hook called, forceHalt: true  

    16:15:29,523 INFO  [ServerImpl] Shutdown complete   

    Shutdown complete   

    Halting VM  

  • 此錯誤常在5.1版本中出現。

    這個錯誤是配置檔案profile.xml内的一個bug,檔案路徑為:$JBOSS_HOME/server/<serverName>/conf/bootstrap/profile.xml

    把其中的節點:

    <bean name="AttachmentStore" class="org.jboss.system.server.profileservice.repository.AbstractAttachmentStore">

     <constructor><parameter><inject bean="BootstrapProfileFactory" property="attachmentStoreRoot" /></parameter></constructor>

    修改為:

    <bean name="AttachmentStore" class="org.jboss.system.server.profileservice.repository.AbstractAttachmentStore">

     <constructor><parameter class="java.io.File"><inject bean="BootstrapProfileFactory" property="attachmentStoreRoot" /></parameter></constructor>

    END

第四類報錯:ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] (main) Error installing to Start

  • 報錯:"ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] (main) Error installing to Start: name=jboss:service=NamingProviderURLWriter state=Create mode=Manual requiredState=Installed

    java.io.IOException: Access is denied"

  • 解決辦法:停止windows的Indexing Service服務。

    END

第五類報錯:啟動正常在但是使用JBoss Tool3.1的插件JBossAS Tool釋出無效(JBoss5.1 Runtime Server釋出無效)

  • 在預設Runtime路徑“workspace\.metadata\.plugins\org.jboss.ide.eclipse.as.core\JBoss_5.1_Runtime_ServerXXX”内可以看到釋出的項目,啟動JBoss卻無法通路釋出資訊。
  • 出現原因:建立JBoss的項目的時候項目實體路徑内不能存在空格,比如路徑“Ejb Project”等帶有空格目錄的項目釋出後将無法被JBoss正确加載

    解決辦法:在開發JBoss的項目時候項目路徑一定不要帶空格或者其它比較少用的特殊字元,JBoss對路徑特别敏感。

    END

檢視端口方法

  1. 第一,二說明端口被其他程序占用了,檢視占用程序的方法為:

    以1098端口為例:

    1)指令行cmd -> netstat -ano | findstr "1098",得到占用端口1098的pID

    2)ctrl+alt+del,進入任務管理器,點選“檢視‘,選擇pid後,檢視是那個程序占用的,結束即可

    JBoss啟動異常——常見錯誤
    END

注意事項

直接檢視占用端口程序,并結束程序有一定風險,建議修改端口号(高手請忽略)。

繼續閱讀