Bug 778257 (SOA-757)

Summary: publish_as_webservice quickstart fails - need to define JBM user
Product: [JBoss] JBoss Enterprise SOA Platform 4 Reporter: Len DiMaggio <ldimaggi>
Component: JBossESB, ExamplesAssignee: Julian Coleman <jcoleman>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecified   
Target Milestone: ---   
Target Release: 4.3 CR1   
Hardware: Unspecified   
OS: Unspecified   
URL: http://jira.jboss.org/jira/browse/SOA-757
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
SOA-P IR4
Last Closed: 2008-10-15 20:00:05 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Len DiMaggio 2008-09-07 02:01:42 UTC
Date of First Response: 2008-09-07 04:53:56
project_key: SOA

Jeff Delong actually found this one.

This user/password definition is missing from hsqldb-persistence-service.xml:

POPULATE.TABLES.15 = INSERT INTO JBM_USER (USER_ID, PASSWD) VALUES ('esbuser', 'esbpassword')

Adding it enables the QS to run.

Without it - this exception is raised:

21:55:18,113 ERROR [ActionProcessingPipeline] Authentication exception : 
org.jboss.soa.esb.services.security.SecurityServiceException: Exception while trying to login:
        at org.jboss.internal.soa.esb.services.security.JaasSecurityService.authenticate(JaasSecurityService.java:140)
        at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipelineSecured(ActionProcessingPipeline.java:412)
        at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:365)
        at org.jboss.soa.esb.listeners.message.MessageAwareListener$TransactionalRunner.run(MessageAwareListener.java:530)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)
Caused by: javax.security.auth.login.FailedLoginException: No matching username found in Principals
        at org.jboss.security.auth.spi.DatabaseServerLoginModule.getUsersPassword(DatabaseServerLoginModule.java:152)
        at org.jboss.security.auth.spi.UsernamePasswordLoginModule.login(UsernamePasswordLoginModule.java:206)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at javax.security.auth.login.LoginContext.invoke(LoginContext.java:769)
        at javax.security.auth.login.LoginContext.access$000(LoginContext.java:186)
        at javax.security.auth.login.LoginContext$5.run(LoginContext.java:706)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.login.LoginContext.invokeCreatorPriv(LoginContext.java:703)
        at javax.security.auth.login.LoginContext.login(LoginContext.java:575)
        at org.jboss.internal.soa.esb.services.security.JaasSecurityService.authenticate(JaasSecurityService.java:133)
        ... 6 more

Comment 1 Mark Little 2008-09-07 08:53:56 UTC
So this is a failure only when hsql is used?

Comment 2 Len DiMaggio 2008-09-08 01:24:10 UTC
THAT is a good point - we'll have to add this line:
   POPULATE.TABLES.15 = INSERT INTO JBM_USER (USER_ID, PASSWD) VALUES ('esbuser', 'esbpassword') 

   ...to the persistence-server file for each supported DB. These files exist in the server, docs/examples, and the schema tool persistence files to be able to run this quickstart without editing the appropriate persistence file first.
   
[ldimaggi@ldimaggi 43_IR4]$ pwd
/opt/43_IR4

[ldimaggi@ldimaggi 43_IR4]$ find . -name "*persistence-service.xml" -print | sort
./jboss-soa-p.4.3.0/docs/examples/jms/clustered-hsqldb-persistence-service.xml
./jboss-soa-p.4.3.0/docs/examples/jms/hsqldb-persistence-service.xml
./jboss-soa-p.4.3.0/docs/examples/jms/mssql-persistence-service.xml
./jboss-soa-p.4.3.0/docs/examples/jms/mysql-persistence-service.xml
./jboss-soa-p.4.3.0/docs/examples/jms/ndb-persistence-service.xml
./jboss-soa-p.4.3.0/docs/examples/jms/null-persistence-service.xml
./jboss-soa-p.4.3.0/docs/examples/jms/oracle-persistence-service.xml
./jboss-soa-p.4.3.0/docs/examples/jms/postgresql-persistence-service.xml
./jboss-soa-p.4.3.0/docs/examples/jms/sybase-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/server/all/deploy/jboss-messaging.sar/clustered-hsqldb-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/server/default/deploy/jboss-messaging.sar/hsqldb-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/server/production/deploy/jboss-messaging.sar/clustered-hsqldb-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/clustered-hsqldb-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/hsqldb-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/mssql-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/mysql-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/ndb-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/null-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/oracle10g-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/oracle9i-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/oracle-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/postgresql-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/common/sybase-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/db2/template/db2-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/mssql/template/mssql-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/mysql/template/mysql-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/oracle10g/template/oracle-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/oracle9i/template/oracle-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/postgresql/template/postgresql-persistence-service.xml
./jboss-soa-p.4.3.0/jboss-as/tools/schema/sybase/template/db2-persistence-service.xml
./jboss-soa-p.4.3.0/seamfp/bootstrap/deploy/messaging/hsqldb-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/docs/examples/jms/clustered-hsqldb-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/docs/examples/jms/hsqldb-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/docs/examples/jms/mssql-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/docs/examples/jms/mysql-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/docs/examples/jms/ndb-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/docs/examples/jms/null-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/docs/examples/jms/oracle-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/docs/examples/jms/postgresql-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/docs/examples/jms/sybase-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/server/default/deploy/jboss-messaging.sar/hsqldb-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/clustered-hsqldb-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/hsqldb-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/mssql-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/mysql-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/ndb-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/null-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/oracle10g-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/oracle9i-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/oracle-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/postgresql-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/sybase-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/db2/template/db2-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/mssql/template/mssql-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/mysql/template/mysql-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/oracle10g/template/oracle-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/oracle9i/template/oracle-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/postgresql/template/postgresql-persistence-service.xml
./jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/sybase/template/db2-persistence-service.xml


Comment 3 Julian Coleman 2008-09-09 14:59:34 UTC
Note that we have our own copies of the files:
  build-tools/resource/schema/jms/clustered-hsqldb-persistence-service.xml
  build-tools/resource/schema/jms/hsqldb-persistence-service.xml
which are copied in:
  build-tools/builders/eap/build.xml
because of a JBM/EAP bug.

See SOA-586 for details.


Comment 4 Len DiMaggio 2008-10-04 02:04:15 UTC
It looks like these files were changed in IR5:

[ldimaggi@ldimaggi 43_IR5_oct2]$ grep -rlH  "INSERT INTO JBM_USER (USER_ID, PASSWD) VALUES ('esbuser', 'esbpassword')" *

jboss-soa-p.4.3.0/docs/examples/jms/hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/docs/examples/jms/clustered-hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/docs/examples/jms/mysql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/samples/quickstarts/jms_secured/messaging-db-users-service.xml
jboss-soa-p.4.3.0/jboss-as/server/production/deploy/jboss-messaging.sar/clustered-hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/server/default/deploy/jboss-messaging.sar/hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/server/all/deploy/jboss-messaging.sar/clustered-hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/clustered-hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/mysql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/db2/template/db2-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/mysql/template/mysql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/docs/examples/jms/hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/docs/examples/jms/clustered-hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/docs/examples/jms/mysql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/samples/quickstarts/jms_secured/messaging-db-users-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/server/default/deploy/jboss-messaging.sar/hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/clustered-hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/mysql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/db2/template/db2-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/mysql/template/mysql-persistence-service.xml

But this is not the full list - see comment above.




Comment 5 Len DiMaggio 2008-10-06 15:30:21 UTC
<jcoleman> ldimaggi_wfh: Looking at SOA-757.  It does look as though the other DB's need doing as well.

<ldimaggi_wfh> jcoleman, It looks like all of these files need the fix; 
<ldimaggi_wfh> grep -rHl "INSERT INTO JBM_ROLE (ROLE_ID, USER_ID) VALUES ('noacc','nobody')" *

<ldimaggi_wfh> jcoleman, While these have the fix:
<ldimaggi_wfh> grep -rlH  "INSERT INTO JBM_USER (USER_ID, PASSWD) VALUES ('esbuser', 'esbpassword')" *

<jcoleman> ldimaggi_wfh: Yes - mssql, ndb, oracle, oracle9i, oracle10g, postgresql, sybase.

Comment 6 Len DiMaggio 2008-10-06 19:33:42 UTC
Julian mentioned that he was looking at this.



Comment 7 Julian Coleman 2008-10-08 09:29:13 UTC
Fixed in revision 2060 of:
  schema/jms/clustered-mysql-persistence-service.xml
  schema/jms/clustered-oracle-persistence-service.xml
  schema/jms/clustered-postgresql-persistence-service.xml
  schema/jms/db2-persistence-service.xml
  schema/jms/mssql-persistence-service.xml
  schema/jms/mysql-persistence-service.xml
  schema/jms/ndb-persistence-service.xml
  schema/jms/null-persistence-service.xml
  schema/jms/oracle-persistence-service.xml
  schema/jms/oracle10g-persistence-service.xml
  schema/jms/oracle9i-persistence-service.xml
  schema/jms/postgresql-persistence-service.xml
  schema/jms/sybase-persistence-service.xml
  schema/tool/esb/build.xml
  schema/tool/esb/db2/template/db2-persistence-service.xml
  schema/tool/esb/mssql/template/mssql-persistence-service.xml
  schema/tool/esb/mysql/template/mysql-persistence-service.xml
  schema/tool/esb/oracle10g/template/oracle-persistence-service.xml
  schema/tool/esb/oracle9i/template/oracle-persistence-service.xml
  schema/tool/esb/postgresql/template/postgresql-persistence-service.xml
  schema/tool/esb/sybase/template/sybase-persistence-service.xml
along with SOA-915.

Commit message:
  Add clustered-* versions of
    mysql-persistence-service.xml
    oracle-persistence-service.xml
    postgresql-persistence-service.xml
  for use with `production' and `all' configurations.  Modify the schema tool
  to prepend "clustered-" for these deploys.  The clustered-* versions are the
  same as the original files, the original files now contain non-clustered
  configurations.  Note, that only the databases supported by the schema tool
  (mysql, oracle and postgresql) have been changed.

  Delete *-persistence-service.xml files that are duplicates (the ones in
  tool/esb/*/template/), or not used (oracle9i-* and oracle10g-*).

  Add POPULATE.TABLES.15 line for those files that were missing it.

  Fixes JIRA's SOA-757 and SOA-915.

  Thanks to Jirka for testing the fix for SOA-915.


Comment 8 Len DiMaggio 2008-10-15 19:58:14 UTC
Verified in CR1

[ldimaggi@ldimaggi 43_CR1]$ grep -rlH "INSERT INTO JBM_USER (USER_ID, PASSWD) VALUES ('esbuser', 'esbpassword')" * 
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/postgresql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/mssql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/clustered-oracle-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/oracle-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/ndb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/clustered-hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/mysql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/clustered-postgresql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/clustered-mysql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/sybase-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/docs/examples/jms/db2-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/samples/quickstarts/jms_secured/messaging-db-users-service.xml
jboss-soa-p.4.3.0/jboss-as/server/production/deploy/jboss-messaging.sar/clustered-hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/server/default/deploy/jboss-messaging.sar/hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/server/all/deploy/jboss-messaging.sar/clustered-hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/postgresql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/mssql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/clustered-oracle-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/oracle-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/ndb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/clustered-hsqldb-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/mysql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/clustered-postgresql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/clustered-mysql-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/sybase-persistence-service.xml
jboss-soa-p.4.3.0/jboss-as/tools/schema/common/db2-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/postgresql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/mssql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/clustered-oracle-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/oracle-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/ndb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/clustered-hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/mysql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/clustered-postgresql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/clustered-mysql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/sybase-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/docs/examples/jms/db2-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/samples/quickstarts/jms_secured/messaging-db-users-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/server/default/deploy/jboss-messaging.sar/hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/server/default/tmp/deploy/tmp17687hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/postgresql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/mssql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/clustered-oracle-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/oracle-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/ndb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/clustered-hsqldb-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/mysql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/clustered-postgresql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/clustered-mysql-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/sybase-persistence-service.xml
jboss-soa-p-standalone.4.3.0/jboss-esb/tools/schema/common/db2-persistence-service.xml