首先用jboss7啓動jbpm5.4 lib下的這幾個war包時,全都falied。查看server.log時發現報如下錯誤:
1、ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) JBAS015052: Did not receive a response to the deployment operation within the allowed timeout period [60 seconds]. Check the server configuration file and the server logs to find more about the status of the deployment.
解決方案:
在jbpm-installer\jboss-as-7.1.1.Final\standalone\configuratio\standalone.xml中修改deployment-timeout="1000"
<subsystem xmlns="urn:jboss:domain:deployment-scanner:1.1">
<deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" deployment-timeout="1000"/>
</subsystem>
2、JBAS014775: New missing/unsatisfied dependencies:
service jboss.naming.context.java.jboss.datasources.jbpmDS (missing) dependents: [service jboss.persistenceunit."jbpm-gwt-console-server-5.4.0.Final-EE6.war#org.jbpm.persistence.jpa"]
service jboss.security.security-domain.jbpm-console (missing) dependents: [service jboss.web.deployment.default-host./gwt-console-server.realm]
解決方案:修改standalone.xml
爲jbpm-console添加一個安全域,在<subsystem xmlns="urn:jboss:domain:security:1.1"><security-domains>...</security-domains></subsystem>裏添加以下代碼:
<security-domain name="jbpm-console" cache-type="default"> <authentication> <login-module code="UsersRoles" flag="required"/> </authentication> </security-domain>
爲jbpm配置數據源(只需在示例數據源之後添加)
<subsystem xmlns="urn:jboss:domain:datasources:1.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</connection-url>
<driver>h2</driver>
<security>
<user-name>sa</user-name>
<password>sa</password>
</security>
</datasource>
<datasource jta="true" jndi-name="java:jboss/datasources/jbpmDS" pool-name="H2DS" enabled="true" use-java-context="true" use-ccm="true">
<connection-url>jdbc:mysql://localhost:3306/jbpm</connection-url>
<driver>mysql</driver>
<pool>
<min-pool-size>1</min-pool-size>
<max-pool-size>4</max-pool-size>
<prefill>false</prefill>
<use-strict-min>false</use-strict-min>
<flush-strategy>FailingConnectionOnly</flush-strategy>
</pool>
<security>
<user-name>root</user-name><password></password>
</security>
<validation>
<check-valid-connection-sql>SELECT 1</check-valid-connection-sql>
<validate-on-match>false</validate-on-match>
<background-validation>false</background-validation>
</validation>
</datasource>
<drivers>
<driver name="mysql" module="com.mysql">
<xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
</driver>
</drivers>
</datasources>
</subsystem>
註釋以下代碼:
<!--
<subsystem xmlns="urn:jboss:domain:jpa:1.0">
<jpa default-datasource=""/>
</subsystem>
-->
至此發現如果不在\standalone\deployments中加入jbpm-5.4.0.Final-form-builder.war可以正常啓動其他war包。
參考源文章:點擊打開鏈接
3、訪問http://localhost:8080/jbpm-console 登錄失敗
[org.jboss.security.auth.spi.UsersRolesLoginModule] (http-localhost-127.0.0.1-8080-2) Failed to load users/passwords/role files: java.io.IOException: No properties file: users.properties or defaults: defaultUsers.properties found
在網上看到很多說要設置login-config.xml文件,可是jboss7中沒有該文件。
解決方案:修改standalone.xml
<security-domain name="jbpm-console" cache-type="default">
<authentication>
<login-module code="Remoting" flag="optional">
<module-option name="password-stacking" value="useFirstPass"/>
</login-module>
<login-module code="RealmUsersRoles" flag="required">
<module-option name="usersProperties" value="${jboss.server.config.dir}/application-users.properties"/>
<module-option name="rolesProperties" value="${jboss.server.config.dir}/application-roles.properties"/>
<module-option name="realm" value="ApplicationRealm"/>
<module-option name="password-stacking" value="useFirstPass"/>
</login-module>
</authentication>
</security-domain>
修改完成之後運行報錯:
4、Login failure: javax.security.auth.login.FailedLoginException: Password Incorrect/Password Required
運行jboss-as-7.1.1.Final\bin下的add-user.bat添加用戶信息
在jbpm-installer\jboss-as-7.1.1.Final\standalone\configuration中的application-users.properties可以查看添加的用戶信息,之後登錄成功。