Sql server 2005 从Mssql开始配置jbpm(7.28.0版)服务器
我使用的是jbpm版本7.28.0。我需要用Mssql配置它,除了连接到默认数据库H2。我正在跟踪并编辑\standalone\configuration\standalone.xmlSql server 2005 从Mssql开始配置jbpm(7.28.0版)服务器,sql-server-2005,jbpm,mssql-jdbc,Sql Server 2005,Jbpm,Mssql Jdbc,我使用的是jbpm版本7.28.0。我需要用Mssql配置它,除了连接到默认数据库H2。我正在跟踪并编辑\standalone\configuration\standalone.xml元素,如下所示 <subsystem xmlns="urn:jboss:domain:datasources:5.0"> <datasources> <datasource jndi-name="java:jboss/datasources/ExampleDS"
元素,如下所示
<subsystem xmlns="urn:jboss:domain:datasources:5.0">
<datasources>
<datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
<connection-url>jdbc:mssql:mem:test.DB_CLOSE_DELAY=-1.DB_CLOSE_ON_EXIT=FALSE</connection-url>
<driver>mssql</driver>
<security>
<user-name>jbpm</user-name>
<password>Jbpm@123</password>
</security>
</datasource>
<xa-datasource jndi-name="java:jboss/datasources/jBPMDS" pool-name="jBPMXADS" enabled="true">
<xa-datasource-property name="URL">jdbc:mssql:file:${jboss.server.data.dir}/jbpm-db;MVCC=TRUE</xa-datasource-property>
<xa-datasource-class>com.microsoft.sqlserver.jdbc.SQLServerDataSource</xa-datasource-class>
<driver>mssql</driver>
<security>
<user-name>jbpm</user-name>
<password>Jbpm@123</password>
</security>
</xa-datasource>
<drivers>
<driver name="h2" module="com.h2database.h2">
<xa-datasource-class>com.microsoft.sqlserver.jdbc.SQLServerDataSource</xa-datasource-class>
</driver>
</drivers>
</datasources>
</subsystem>
jdbc:mssql:mem:test.DB\u CLOSE\u DELAY=-1.DB\u CLOSE\u ON\u EXIT=FALSE
数据库
java业务流程管理
Jbpm@123
jdbc:mssql:file:${jboss.server.data.dir}/jbpm-db;MVCC=真
com.microsoft.sqlserver.jdbc.SQLServerDataSource
数据库
java业务流程管理
Jbpm@123
com.microsoft.sqlserver.jdbc.SQLServerDataSource
但我有以下错误
16:16:35776错误[org.jboss.as.controller.management operation]
(控制器启动线程)WFLYCTL0013:操作(“添加”)失败-
地址:([
(“子系统”=>“数据源”),
(“数据源”=>“示例”)]-故障描述:{
“WFLYCTL0412:未安装的必需服务:”=>[“jboss.jdbc driver.mssql”],
“WFLYCTL0180:缺少/不可用依赖项的服务”=>[
“jboss.driver demander.java:jboss/datasources/examples缺少[jboss.jdbc driver.mssql]”,
“缺少org.wildfly.data-source.examples[jboss.jdbc driver.mssql]。”
]}
我不确定我所做的配置是否正确。如何解决此问题并将JBPM与MSSQL连接?两个数据源都使用“MSSQL”驱动程序。但是这个驱动程序不可用。我建议为H2数据库和mssql数据库创建两个不同的驱动程序。H2数据库示例包括一些流程示例。 需要javax.xml.bind.api。 我为jbpm(7.54.0)编写了jbpm-sqlserver-config.cli。 试试下面的方法。(上面是jdk11、sqlserver2012) jbpm-sqlserver-config.cli
embed-server --server-config=standalone.xml
try
module add --name=com.microsoft.sqlserver --resources=drivers/mssql-jdbc-9.2.1.jre11.jar --dependencies=javax.api,javax.transaction.api,javax.xml.bind.api
catch
echo "SQLServer module exists"
end-try
if (outcome != success) of /subsystem=datasources/jdbc-driver=sqlserver:read-resource
/subsystem=datasources/jdbc-driver=sqlserver:add(driver-name=sqlserver,driver-module-name=com.microsoft.sqlserver,driver-xa-datasource-class-name=com.microsoft.sqlserver.jdbc.SQLServerXADataSource)
end-if
if (outcome == success) of /subsystem=datasources/xa-data-source=jBPMXADS:read-resource
/subsystem=datasources/xa-data-source=jBPMXADS:remove
end-if
xa-data-source add --name=jBPMXADS --jndi-name="java:/MSSQLXADS" --driver-name=sqlserver --user-name=jbpm --password=jbpm --xa-datasource-class=com.microsoft.sqlserver.jdbc.SQLServerXADataSource --xa-datasource-properties=[ServerName=10.255.255.88, PortNumber=1433, DatabaseName=jbpm] --background-validation=false --valid-connection-checker-class-name=org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker
if (outcome != success) of /system-property=org.kie.server.persistence.ds:read-resource
/system-property=org.kie.server.persistence.ds:add(value="java:/MSSQLXADS")
else
/system-property=org.kie.server.persistence.ds:write-attribute(name=value,value="java:/MSSQLXADS")
end-if
if (outcome != success) of /system-property=org.kie.server.persistence.dialect:read-resource
/system-property=org.kie.server.persistence.dialect:add(value="org.hibernate.dialect.SQLServer2012Dialect")
else
/system-property=org.kie.server.persistence.dialect:write-attribute(name=value,value="org.hibernate.dialect.SQLServer2012Dialect")
end-if
if (outcome != success) of /system-property=org.kie.server.id:read-resource
/system-property=org.kie.server.id:add(value="sample-server")
else
/system-property=org.kie.server.id:write-attribute(name=value,value="sample-server")
end-if
if (outcome != success) of /system-property=org.kie.server.controller:read-resource
/system-property=org.kie.server.controller:add(value="http://localhost:8080/business-central/rest/controller")
else
/system-property=org.kie.server.controller:write-attribute(name=value,value="http://localhost:8080/business-central/rest/controller")
end-if
if (outcome != success) of /system-property=org.kie.server.location:read-resource
/system-property=org.kie.server.location:add(value="http://localhost:8080/kie-server/services/rest/server")
else
/system-property=org.kie.server.location:write-attribute(name=value,value="http://localhost:8080/kie-server/services/rest/server")
end-if
if (outcome != success) of /system-property=org.jbpm.casemgmt.showcase.url:read-resource
/system-property=org.jbpm.casemgmt.showcase.url:add(value="/jbpm-casemgmt")
else
/system-property=org.jbpm.casemgmt.showcase.url:write-attribute(name=value,value="/jbpm-casemgmt")
end-if
stop-embedded-server
./jboss-cli.sh--file=jbpm-sqlserver-config.cli
embed-server --server-config=standalone.xml
try
module add --name=com.microsoft.sqlserver --resources=drivers/mssql-jdbc-9.2.1.jre11.jar --dependencies=javax.api,javax.transaction.api,javax.xml.bind.api
catch
echo "SQLServer module exists"
end-try
if (outcome != success) of /subsystem=datasources/jdbc-driver=sqlserver:read-resource
/subsystem=datasources/jdbc-driver=sqlserver:add(driver-name=sqlserver,driver-module-name=com.microsoft.sqlserver,driver-xa-datasource-class-name=com.microsoft.sqlserver.jdbc.SQLServerXADataSource)
end-if
if (outcome == success) of /subsystem=datasources/xa-data-source=jBPMXADS:read-resource
/subsystem=datasources/xa-data-source=jBPMXADS:remove
end-if
xa-data-source add --name=jBPMXADS --jndi-name="java:/MSSQLXADS" --driver-name=sqlserver --user-name=jbpm --password=jbpm --xa-datasource-class=com.microsoft.sqlserver.jdbc.SQLServerXADataSource --xa-datasource-properties=[ServerName=10.255.255.88, PortNumber=1433, DatabaseName=jbpm] --background-validation=false --valid-connection-checker-class-name=org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker
if (outcome != success) of /system-property=org.kie.server.persistence.ds:read-resource
/system-property=org.kie.server.persistence.ds:add(value="java:/MSSQLXADS")
else
/system-property=org.kie.server.persistence.ds:write-attribute(name=value,value="java:/MSSQLXADS")
end-if
if (outcome != success) of /system-property=org.kie.server.persistence.dialect:read-resource
/system-property=org.kie.server.persistence.dialect:add(value="org.hibernate.dialect.SQLServer2012Dialect")
else
/system-property=org.kie.server.persistence.dialect:write-attribute(name=value,value="org.hibernate.dialect.SQLServer2012Dialect")
end-if
if (outcome != success) of /system-property=org.kie.server.id:read-resource
/system-property=org.kie.server.id:add(value="sample-server")
else
/system-property=org.kie.server.id:write-attribute(name=value,value="sample-server")
end-if
if (outcome != success) of /system-property=org.kie.server.controller:read-resource
/system-property=org.kie.server.controller:add(value="http://localhost:8080/business-central/rest/controller")
else
/system-property=org.kie.server.controller:write-attribute(name=value,value="http://localhost:8080/business-central/rest/controller")
end-if
if (outcome != success) of /system-property=org.kie.server.location:read-resource
/system-property=org.kie.server.location:add(value="http://localhost:8080/kie-server/services/rest/server")
else
/system-property=org.kie.server.location:write-attribute(name=value,value="http://localhost:8080/kie-server/services/rest/server")
end-if
if (outcome != success) of /system-property=org.jbpm.casemgmt.showcase.url:read-resource
/system-property=org.jbpm.casemgmt.showcase.url:add(value="/jbpm-casemgmt")
else
/system-property=org.jbpm.casemgmt.showcase.url:write-attribute(name=value,value="/jbpm-casemgmt")
end-if
stop-embedded-server
您必须在sqlserver上创建jbpm数据库,并授予适当的访问权限。
请仔细阅读ms网站上的“了解XA事务”