Symptom
Ich versuche den Signavio Process Manager als On-Premise Variante zu installieren. Dazu habe ich eine leere mySQL-Datenbank erstellt. Leider kann ich das SAP Signavio-System nicht korrekt starten. Auf der Diagnostics-Seite sind die meisten Prüfungen grün. Nur die letzte Zeile "Connection to Signavio Platform" ist rot. Hier bekomme ich die Fehlermeldung "Could not send a HTTP request to the Signavio back end. Please check you configuration.xml as well as Tomcats server.xml for correct server settings."
In dem Log sehe ich folgende Fehlermeldung:
2019
-
12
-
19
09
:
42
:
57
,
688
ERROR [localhost-startStop-
1
] r: u: t: .(AbstractFlushingEventListener.java:
324
) Could not synchronize database state with session
org.hibernate.exception.GenericJDBCException: could not update: [com.signavio.platform.feature.data.FeatureInfo#component[application,name]{application=stencilset, name=ORYX.StencilSet.http://b3mn.org/stencilset/bpmn2.0#}
]
at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:
140
)
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:
128
)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:
66
)
at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:
2596
)
at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:
2478
)
at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:
2805
)
at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:
114
)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:
268
)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:
260
)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:
180
)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:
321
)
at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:
64
)
at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:
1175
)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:
1251
)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:
102
)
at com.signavio.platform.feature.business.FeatureManager.getFeatureImpls(FeatureManager.java:
196
)
at com.signavio.platform.core.impl.FeatureConfigurationAccessorImpl.getStencilSetFeatures(FeatureConfigurationAccessorImpl.java:
101
)
at com.signavio.platform.feature.configuration.impl.FeatureConfigurator.considerStencilsetFeatures(FeatureConfigurator.java:
200
)
at com.signavio.platform.core.impl.AbstractPlatformInstanceImpl.bootInstance(AbstractPlatformInstanceImpl.java:
103
)
at com.signavio.platform.core.impl.PlatformInstanceImpl.bootInstance(PlatformInstanceImpl.java:
105
)
at com.signavio.platform.core.Platform.bootInstance(Platform.java:
70
)
at com.signavio.platform.listeners.EntryPoint.contextInitialized(EntryPoint.java:
45
)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:
4699
)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:
5165
)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:
183
)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:
743
)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:
719
)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:
705
)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:
1125
)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:
1859
)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:
511
)
at java.util.concurrent.FutureTask.run(FutureTask.java:
266
)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:
1149
)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:
624
)
at java.lang.Thread.run(Thread.java:
748
)
Caused by: java.sql.BatchUpdateException:
'\xD0\x94\xD0\xB8\xD0\xB0...'
for
column
'definition'
at row
1
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
62
)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:
45
)
at java.lang.reflect.Constructor.newInstance(Constructor.java:
423
)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:
425
)
at com.mysql.jdbc.Util.getInstance(Util.java:
408
)
at com.mysql.jdbc.SQLError.createBatchUpdateException(SQLError.java:
1163
)
at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:
1823
)
at com.mysql.jdbc.PreparedStatement.executeBatchInternal(PreparedStatement.java:
1307
)
at com.mysql.jdbc.StatementImpl.executeBatch(StatementImpl.java:
970
)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:
1723
)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:
70
)
at org.hibernate.jdbc.BatchingBatcher.addToBatch(BatchingBatcher.java:
56
)
at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:
2574
)
...
31
more
Caused by: java.sql.SQLException: Incorrect string value:
'\xD0\x94\xD0\xB8\xD0\xB0...'
for
column
'definition'
at row
1
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:
965
)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:
3978
)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:
3914
)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:
2530
)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:
2683
)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:
2495
)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:
1903
)
at com.mysql.jdbc.PreparedStatement.executeUpdateInternal(PreparedStatement.java:
2124
)
at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:
1801
)
...
37
more
Resolution
Die Fehlermelung aus dem Log deutet auf Probleme mit der Collation bei der erstellten Datenbank hin:
java.sql.SQLException: Incorrect string value:
'\xD0\x94\xD0\xB8\xD0\xB0...'
for
column
'definition'
at row
1
Die Bezeichnungen für die richtige Collation bei den gängigen Datenbanken sind:
- ORACLE: "utf-8 (global)"
- MySQL: "utf8_general_ci"
- MS SQL: "Latin1_General_CI_AS"
Keywords
KBA , BPI-SIG-PM-ONP-DB , Database configuration for SAP Signavio Process Manager , How To