When creating ESB DMgr profile you may encounter the following error in the log:
<date>Sep 20, 2012 10:47:53 AM</date>
<millis>1348130873432</millis>
<sequence>10111</sequence>
<logger>com.ibm.ws.install.configmanager.actionengine.ant.utils.ANTLogToCmtLogAdapter</logger>
<level>WARNING</level>
<class>com.ibm.ws.install.configmanager.logging.LogUtils</class>
<method>logException</method>
<thread>0</thread>
<message>/opt/websph/ESB/util/dbUtils/profileHelpers/commonDBUtility.ant:985: Source file does not exist!
at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:324)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
(...)
and resulting:
<record>
<date>Sep 20, 2012 10:47:53 AM</date>
<millis>1348130873556</millis>
<sequence>10164</sequence>
<logger>com.ibm.wsspi.profile.WSProfileCLI</logger>
<level>INFO</level>
<class>com.ibm.wsspi.profile.WSProfileCLI</class>
<method>invokeWSProfile</method>
<thread>0</thread>
<message>Returning with return code: INSTCONFFAILED</message>
</record>
</log>
This happened to my colleague, who was configuring ESB DMgr against Derby network server. We spent a while figuring out what's wrong. Closer look into logs couple of lines before first error showed
<message>Target stopped for: init.db - SUCCESS</message>
so the Derby DB was initialized fine. Right afterwards we found:
<message>Execute SQL script with parameters: JDBCDriver='org.apache.derby.jdbc.ClientDriver' DB_URL='jdbc:derby://localhost:1527//opt/websph/ESB/profiles/Dmgr2/databases/WPRCSDB4' dbUserId='admin' sqlScriptPath='/opt/websph/ESB/profiles/Dmgr2/dbscripts/CommonDB/Derby/WPRCSDB4/createTable_CommonDB.sql' JDBC_DRIVER_FILE_STATIC='/opt/websph/ESB/derby/lib/derbyclient.jar'</message>
following this trail I asked my buddy to check dbScriptOutputDir content. Bingo! it contained the following structure:
<date>Sep 20, 2012 10:47:53 AM</date>
<millis>1348130873432</millis>
<sequence>10111</sequence>
<logger>com.ibm.ws.install.configmanager.actionengine.ant.utils.ANTLogToCmtLogAdapter</logger>
<level>WARNING</level>
<class>com.ibm.ws.install.configmanager.logging.LogUtils</class>
<method>logException</method>
<thread>0</thread>
<message>/opt/websph/ESB/util/dbUtils/profileHelpers/commonDBUtility.ant:985: Source file does not exist!
at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:324)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
(...)
and resulting:
<record>
<date>Sep 20, 2012 10:47:53 AM</date>
<millis>1348130873556</millis>
<sequence>10164</sequence>
<logger>com.ibm.wsspi.profile.WSProfileCLI</logger>
<level>INFO</level>
<class>com.ibm.wsspi.profile.WSProfileCLI</class>
<method>invokeWSProfile</method>
<thread>0</thread>
<message>Returning with return code: INSTCONFFAILED</message>
</record>
</log>
This happened to my colleague, who was configuring ESB DMgr against Derby network server. We spent a while figuring out what's wrong. Closer look into logs couple of lines before first error showed
<message>Target stopped for: init.db - SUCCESS</message>
so the Derby DB was initialized fine. Right afterwards we found:
<message>Execute SQL script with parameters: JDBCDriver='org.apache.derby.jdbc.ClientDriver' DB_URL='jdbc:derby://localhost:1527//opt/websph/ESB/profiles/Dmgr2/databases/WPRCSDB4' dbUserId='admin' sqlScriptPath='/opt/websph/ESB/profiles/Dmgr2/dbscripts/CommonDB/Derby/WPRCSDB4/createTable_CommonDB.sql' JDBC_DRIVER_FILE_STATIC='/opt/websph/ESB/derby/lib/derbyclient.jar'</message>
following this trail I asked my buddy to check dbScriptOutputDir content. Bingo! it contained the following structure:
/opt/websph/ESB /profiles/Dmgr2 /dbscripts/Comm onDB/Derby/WPRC SDB4/CommonDB/D erby/WPRCSDB4/p liki.sql
with clearly abundant subtree portion. The reason for this was that in the manageprofiles dbScriptOutputDir parameter contained unnecessary tail that is created automatically. Hence, ant script failed not finding sql files where expected. Changing
./manageprofile s.sh -create
(...) -dbOutputScript Dir '/opt/websph/ES B/profiles/Dmgr2/dbscripts/CommonDB/Derby/WPR CSDB2'
to
./manageprofile s.sh -create (...) -dbOutputScript Dir '/opt/websph/ES B/profiles/Dmgr 2/dbscripts'
did the trick. Please note that InfoCenter says you need to do it wrongly! Look here (Table 2, -dbOutputScriptDir description. Thank you RafaĆ!)
Good luck!
No comments:
Post a Comment