Hi All,
I try to run Petstore 1.3.2 on JBoss 3.2.3. I used a patch for Petstore 1.3.2 to run on
JBoss 3.0.1 RC1. The patch works on 3.0.1 well. Using database cloudscape, provided by
j2eesdk 1.3.1. But doesnt work in 3.2.3.
link to the patch and doc:
http://docs.huihoo.com/jboss/petstore.html
I changed two things of JBoss 3.2.3:
First, I changed "C:\jboss-3.2.3\server\default\conf\login-config.xml"
add following lines into it:
-----------------------------------------------------------------------------------
<application-policy name = "CloudscapeDbRealm">
| <authentication>
| <login-module code =
"org.jboss.resource.security.ConfiguredIdentityLoginModule" flag =
"required">
| <module-option name = "principal"></module-option>
| <module-option name =
"userName">estoreuser</module-option>
| <module-option name =
"password">estore</module-option>
| <module-option name =
"managedConnectionFactoryName">jboss.jca:service=LocalTxCM,name=EstoreDataSource</module-option>
| </login-module>
| </authentication>
| </application-policy>
|
| <application-policy name = "CloudscapeDbRealmInventory">
| <authentication>
| <login-module code =
"org.jboss.resource.security.ConfiguredIdentityLoginModule" flag =
"required">
| <module-option name = "principal"></module-option>
| <module-option name =
"userName">estoreuser</module-option>
| <module-option name =
"password">estore</module-option>
| <module-option name =
"managedConnectionFactoryName">jboss.jca:service=LocalTxCM,name=InventoryDataSource</module-option>
| </login-module>
| </authentication>
| </application-policy>
--------------------------------------------------------------------
Second, I copy a file called "client-deployer-service.xml" into
"C:\jboss-3.2.3\server\default\deploy"
The content of this file:
---------------------------------------------------------------------------------
<server>
|
| <mbean
code="org.jboss.resource.connectionmanager.LocalTxConnectionManager"
name="jboss.jca:service=LocalTxCM,name=EstoreDataSource">
|
| <attribute
name="SecurityDomainJndiName">CloudscapeDbRealm</attribute>
|
|
| <depends optional-attribute-name="ManagedConnectionFactoryName">
| <!--embedded mbean-->
| <mbean code="org.jboss.resource.connectionmanager.RARDeployment"
name="jboss.jca:service=LocalTxDS,name=EstoreDataSource"> <!--DS-->
|
|
| <attribute name="JndiName">EstoreDB</attribute>
|
| <attribute name="ManagedConnectionFactoryProperties">
| <properties>
| <config-property name="ConnectionURL"
type="java.lang.String">jdbc:rmi://localhost:1099/jdbc:cloudscape:EstoreDB;create=true</config-property>
| <config-property name="DriverClass"
type="java.lang.String">COM.cloudscape.core.RmiJdbcDriver</config-property>
| <!--set these only if you want only default logins, not through JAAS
-->
| <config-property name="UserName"
type="java.lang.String">estoreuser</config-property>
| <config-property name="Password"
type="java.lang.String">estore</config-property>
| </properties>
| </attribute>
| <!--hack-->
| <depends
optional-attribute-name="OldRarDeployment">jboss.jca:service=RARDeployment,name=JBoss
LocalTransaction JDBC Wrapper</depends>
| </mbean>
| </depends>
|
|
| <depends optional-attribute-name="ManagedConnectionPool">
| <!--embedded mbean-->
| <mbean
code="org.jboss.resource.connectionmanager.JBossManagedConnectionPool"
name="jboss.jca:service=LocalTxPool,name=EstoreDataSource">
|
| <attribute name="MinSize">0</attribute>
| <attribute name="MaxSize">50</attribute>
| <attribute
name="BlockingTimeoutMillis">5000</attribute>
| <attribute name="IdleTimeoutMinutes">15</attribute>
| <attribute name="Criteria">ByContainer</attribute>
| </mbean>
| </depends>
| <depends
optional-attribute-name="CachedConnectionManager">jboss.jca:service=CachedConnectionManager</depends>
|
| <depends
optional-attribute-name="JaasSecurityManagerService">jboss.security:service=JaasSecurityManager</depends>
|
| <attribute
name="TransactionManager">java:/TransactionManager</attribute>
| <!--make the rar deploy! hack till better deployment-->
| <depends>jboss.jca:service=RARDeployer</depends>
|
| </mbean>
|
|
| <mbean
code="org.jboss.resource.connectionmanager.LocalTxConnectionManager"
name="jboss.jca:service=LocalTxCM,name=InventoryDataSource">
|
| <!--uncomment out this line if you are using the Informix DbRealm above -->
| <attribute
name="SecurityDomainJndiName">CloudscapeDbRealmInventory</attribute>
|
|
| <depends optional-attribute-name="ManagedConnectionFactoryName">
| <!--embedded mbean-->
| <mbean code="org.jboss.resource.connectionmanager.RARDeployment"
name="jboss.jca:service=LocalTxDS,name=InventoryDataSource"> <!--DS-->
|
| <attribute name="JndiName">InventoryDB</attribute>
|
| <attribute name="ManagedConnectionFactoryProperties">
| <properties>
| <config-property name="ConnectionURL"
type="java.lang.String">jdbc:rmi://localhost:1099/jdbc:cloudscape:EstoreDB;create=true</config-property>
| <config-property name="DriverClass"
type="java.lang.String">COM.cloudscape.core.RmiJdbcDriver</config-property>
| <!--set these only if you want only default logins, not through JAAS
-->
| <config-property name="UserName"
type="java.lang.String">estoreuser</config-property>
| <config-property name="Password"
type="java.lang.String">estore</config-property>
| </properties>
| </attribute>
| <!--hack-->
| <depends
optional-attribute-name="OldRarDeployment">jboss.jca:service=RARDeployment,name=JBoss
LocalTransaction JDBC Wrapper</depends>
| </mbean>
| </depends>
|
|
| <depends optional-attribute-name="ManagedConnectionPool">
| <!--embedded mbean-->
| <mbean
code="org.jboss.resource.connectionmanager.JBossManagedConnectionPool"
name="jboss.jca:service=LocalTxPool,name=InventoryDataSource">
|
| <attribute name="MinSize">0</attribute>
| <attribute name="MaxSize">50</attribute>
| <attribute
name="BlockingTimeoutMillis">5000</attribute>
| <attribute name="IdleTimeoutMinutes">15</attribute>
| <attribute name="Criteria">ByContainer</attribute>
| </mbean>
| </depends>
| <depends
optional-attribute-name="CachedConnectionManager">jboss.jca:service=CachedConnectionManager</depends>
|
| <depends
optional-attribute-name="JaasSecurityManagerService">jboss.security:service=JaasSecurityManager</depends>
|
| <attribute
name="TransactionManager">java:/TransactionManager</attribute>
| <!--make the rar deploy! hack till better deployment-->
| <depends>jboss.jca:service=RARDeployer</depends>
|
| </mbean>
|
| </server>
|
---------------------------------------------------------------------------------
(I started cloudscape.)
JBoss 3.2.3 seems has no problem with the modification of "login-config.xml".
However, JBoss 3.2.3 can't deploy "cloudscape-service.xml". It shows error
msg when I start it:
--------------------------------------------------------------------------------
12:22:18,140 ERROR [URLDeploymentScanner] MBeanException: Exception in MBean operation
'checkIncompleteDeployments()'
Cause: Incomplete Deployment listing:
Packages waiting for a deployer:
Incompletely deployed packages:
MBeans waiting for classes:
MBeans waiting for other MBeans:
[ObjectName: jboss.jca:service=LocalTxCM,name=EstoreDataSource
state: FAILED
I Depend On: jboss.jca:service=LocalTxDS,name=EstoreDataSource
Depends On Me: org.jboss.deployment.DeploymentException: Exception setting attribute
javax.management.Attribute: name=ManagedConnectionFactoryName value=jboss.
jca:service=LocalTxDS,name=EstoreDataSource on mbean
jboss.jca:service=LocalTxCM,name=EstoreDataSource; - nested throwable:
(javax.management.AttributeNotFoundException: Writable attribute
'ManagedConnectionFactoryName' not found), ObjectName:
jboss.jca:service=LocalTxDS,name=EstoreDataSource
state: FAILED
I Depend On:
Depends On Me: jboss.jca:service=LocalTxCM,name=EstoreDataSource
org.jboss.deployment.DeploymentException: No Attribute found with name: JndiName,
ObjectName:
jboss.jca:service=LocalTxCM,name=InventoryDataSource
state: FAILED
I Depend On: jboss.jca:service=LocalTxDS,name=InventoryDataSource
Depends On Me: org.jboss.deployment.DeploymentException: Exception setting attribute
javax.management.Attribute: name=ManagedConnectionFactoryName value=jboss.
jca:service=LocalTxDS,name=InventoryDataSource on mbean
jboss.jca:service=LocalTxCM,name=InventoryDataSource; - nested
throwable: (javax.management.AttributeNotFoundException: Writable attribute
'ManagedConnectionFactoryName' not found), ObjectName:
jboss.jca:service=LocalTxDS,name=InventoryDataSource
state: FAILED
I Depend On:
Depends On Me: jboss.jca:service=LocalTxCM,name=InventoryDataSource
org.jboss.deployment.DeploymentException: No Attribute found with name: JndiName
]
-------------------------------------------------------------------------------
The Petstore still can run, but shows "Unable to Connect to Database
Database Connection is closed: Confirm that you have started your database."
Could anyone kindly help with this problem, please?
Thank you very much!
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4048750#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...