I'm back with more SmartTarget 2014 installation woes, and it seems that I'm 95% of the way home, but this isn't a game of horseshoes as we all know. :)
Lay of the Land
- Server A hosts the CM
- Server B hosts the the CD (standard HTTPUpload), SmartTarget Web Service, and the Presentation Server
- Server C hosts Fredhopper and the Deployment Web Service (non-J2EE)
I can publish from the CM, and the Publishing Queue says "Successful". The CD logs show the package coming in, and the post-deploy transaction kicks off which successfully sends it over to Fredhopper. Fredhopper takes the package into its incoming folder, and begins processing. It's here that I run into issues. The log file located at c:\fredhopper\data\instances\SmartTargetIdx\log\qserver.log
gives me a few interesting warnings and errors:
This appears three or so times:
Database 'directory:C:\fredhopper\bin\..\data\instances\SmartTargetIdx\data\bizman\db\default' not created, connection made to existing database instead.
java.sql.SQLWarning: Database 'directory:C:\fredhopper\bin\..\data\instances\SmartTargetIdx\data\bizman\db\default' not created, connection made to existing database instead.
at org.apache.derby.iapi.error.SQLWarningFactory.newSQLWarning(Unknown Source)
at org.apache.derby.iapi.error.SQLWarningFactory.newSQLWarning(Unknown Source)
at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source)
at org.apache.derby.impl.jdbc.EmbedConnection30.<init>(Unknown Source)
at org.apache.derby.impl.jdbc.EmbedConnection40.<init>(Unknown Source)
at org.apache.derby.jdbc.Driver40.getNewEmbedConnection(Unknown Source)
at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
at org.apache.derby.jdbc.AutoloadedDriver.connect(Unknown Source)
at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
Then things appear to go really wrong:
Format current time.0 - Unexpected error :
Format current time.0 - java.lang.NoClassDefFoundError: javax/mail/Message
at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.addValues(ScriptValuesMod.java:248)
at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.processRow(ScriptValuesMod.java:667)
at org.pentaho.di.trans.step.BaseStep.runStepThread(BaseStep.java:2889)
at org.pentaho.di.trans.steps.scriptvalues_mod.ScriptValuesMod.run(ScriptValuesMod.java:730)
Caused by: java.lang.ClassNotFoundException: javax.mail.Message
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
... 4 more
Before ultimately it looks like it dies here:
Write current time as TIMESTAMP - Transformation detected one or more steps with errors.
Write current time as TIMESTAMP - Errors detected!
Write current time as TIMESTAMP - Errors detected!
Write current time as TIMESTAMP - Transformation is killing the other steps!
The Kettle job doesn't even appear to fire, as the log file in c:\fredhopper\data\instances\etl\logs
only updates when I manually trigger it to run.
Any assistance would be highly appreciated.
EDIT @ 12.07a 08/22: I'm including some screenshots of the various configurations that I have for ST. Feel free to request others. Additionally, I noticed that after one of my publishes an XML file representing my test component presentation made it into the /fas-xml-incremental/catalog01 folder; about ten minutes after I'd published. Networky timeouts are usually around 10 minutes, no?
Content Deployer configuration:
Publication target configuration:
smarttarget_conf.xml
Proof that the Content Deployer is successfully pushing to Fredhopper (log file):