Orbeon выдает StackOverFlowError при попытке доступа к базе данных - PullRequest
0 голосов
/ 04 октября 2011

У меня установлена ​​версия Orbeon 3.9 PE на Tomcat 6.0, установленная на Debian 6.0.2 с MySQL 5.1.

Я могу запустить Orbeon и развернуть / использовать приложения, развернутые в ресурсах / приложениях, но с доступомКонструктор форм new-form-creation (../orbeon/fr/orbeon/builder/new) приводит к тому, что в журнал выводится следующая ошибка (и страница не загружается, что не позволяет создавать формы):


2011-10-04 14:11:09,274 INFO  OrbeonSessionListener  - Session Listener - Session created.
2011-10-04 14:11:10,631 WARN  XFormsServer  - xxforms:instance() - instance not found {instance id: "fr-uuid"}
2011-10-04 14:11:10,631 WARN  XFormsServer  - xxforms:instance() - instance not found {instance id: "fr-save-locally-file-name"}
2011-10-04 14:11:11,838 WARN  XFormsServer  - xxforms:instance() - instance not found {instance id: "fr-uuid"}
2011-10-04 14:11:11,838 WARN  XFormsServer  - xxforms:instance() - instance not found {instance id: "fr-save-locally-file-name"}
2011-10-04 14:12:00,649 ERROR ProcessorService  - Exception with no location data
java.lang.StackOverflowError
        at java.lang.Exception.<init>(Exception.java:41)
        at java.lang.RuntimeException.<init>(RuntimeException.java:43)
        at org.orbeon.oxf.common.OXFException.<init>(OXFException.java:203)
        at org.orbeon.oxf.common.ValidationException.<init>(ValidationException.java:105)
        at org.orbeon.oxf.xforms.xbl.XBLContainer.performDefaultAction(XBLContainer.java:809)
        at org.orbeon.oxf.xforms.XFormsContainingDocument.performDefaultAction(XFormsContainingDocument.java:1004)
        at org.orbeon.oxf.xforms.xbl.XBLContainer.dispatchEvent(XBLContainer.java:1035)
        at org.orbeon.oxf.xforms.XFormsContainingDocument.dispatchEvent(XFormsContainingDocument.java:880)
        at org.orbeon.oxf.xforms.XFormsContextStack.pushBinding(XFormsContextStack.java:562)
        at org.orbeon.oxf.xforms.XFormsContextStack.pushBinding(XFormsContextStack.java:247)
        at org.orbeon.oxf.xforms.ControlTree$CreateControlsListener.pushBinding(ControlTree.java:824)
.....

Мой контекстный файл 'orbeon.xml':


<Context path="/orbeon" docBase="/usr/local/orbeon-3.9" debug="0" reloadable="true">
    <Resource name="jdbc/orbeonmysql" auth="Container" type="javax.sql.DataSource" initialSize="3" maxActive="10" maxIdle="20" maxWait="30000" driverClassName="com.mysql.jdbc.Driver" poolPreparedStatements="true" username="orbeon" password="xxx" url="jdbc:mysql://localhost:3306/orbeon?useUnicode=true&amp;characterEncoding=UTF8"/>
</Context>

Конфигурация базы данных в properties-local.xml:


<property as="xs:anyURI" name="oxf.fr.persistence.service.mysql.datasource" value="orbeonmysql"/>
<property as="xs:anyURI" name="oxf.fr.persistence.app.uri.*.*.*" value="/fr/service/mysql"/>

Я установил тот же пакет Orbeon PE на Windows 7 с tomcat6 и mysql 5.1 с теми же настройками, и он работает просто отлично.

На сервере Debian, на котором установлен Confluenceтот же tomcat, подключающийся к тому же серверу базы данных, который также отлично работает.

Я пробовал использовать 2 версии MySQL Connectors: mysql-connector-java-5.0.8 mysql-connector-java-5.1.17

Я потерялся здесь, как еrror log ничего не говорит о том, с чем я мог бы работать, и я не могу найти подобные проблемы, чтобы получить подсказки.


// UPDATE


Попробовал оба -Xss16m и -Xss32m.Страница больше не будет выдавать StackOverFlowError, но и никогда не прекратит загрузку.Я также удалил экземпляр Confluence из Tomcat, чтобы убедиться, что он не является частью проблемы.

Я вставил дамп базы данных и заметил, что на странице компоновщика / сводки будут отображаться формы в БД.Я могу получить доступ к сводным страницам опубликованных форм.Также можно заполнять новые данные опубликованными формами или редактировать существующие.Единственное, что не работает, это редактирование / создание новых страниц.

Я также попытался добавить 'ulimit -s 2048' к запуску tomcat, без эффекта.

tomcat JAVA_OPTS в конфигурации tomcat выглядит так:следующие:


ulimit -s 2048
export JAVA_OPTS="-Djava.awt.headless=true -Xmx1024M -Xms256m -XX:PermSize=256m -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Xss32m"
export CATALINA_OPTS="$CATALINA_OPTS $JAVA_OPTS"

Последние напечатанные записи журнала:


2011-10-06 08:41:09,051 WARN  XFormsServer  - xxforms:instance() - instance not found {instance id: "fr-uuid"}
2011-10-06 08:41:09,051 WARN  XFormsServer  - xxforms:instance() - instance not found {instance id: "fr-save-locally-file-name"}
2011-10-06 08:41:10,289 WARN  XFormsServer  - xxforms:instance() - instance not found {instance id: "fr-uuid"}
2011-10-06 08:41:10,289 WARN  XFormsServer  - xxforms:instance() - instance not found {instance id: "fr-save-locally-file-name"}
// END OF LOG, no new rows after 10mins of waiting
...