liferay5.0+oracle10配置好后启动报如下错误:
15 May 2007 01:44:59,453 CPOR ERROR [http-8080-Processor24] util.ContentTransformerListener: org.dom4j.DocumentException: Error on line 1 of document : Content is not allowed in prolog. Nested exception: Content is not allowed in prolog.
at org.dom4j.io.SAXReader.read(SAXReader.java:482)
at org.dom4j.io.SAXReader.read(SAXReader.java:365)
at com.liferay.portlet.journal.util.ContentTransformerListener.replaceContent(ContentTransformerListener.java:90)
at com.liferay.portlet.journal.util.ContentTransformerListener.onXml(ContentTransformerListener.java:58)
at com.liferay.portlet.journal.util.JournalUtil.transform(JournalUtil.java:757)
at com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl.getArticleContent(JournalArticleLocalServiceImpl.java:709)
at com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl.getArticleContent(JournalArticleLocalServiceImpl.java:585)
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 org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:280)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
at $Proxy12.getArticleContent(Unknown Source)
at com.liferay.portlet.journal.service.JournalArticleLocalServiceUtil.getArticleContent(JournalArticleLocalServiceUtil.java:269)
at com.liferay.portlet.journalcontent.util.JournalContentUtil.getContent(JournalContentUtil.java:78)
at com.liferay.portlet.journalcontent.action.ViewAction.render(ViewAction.java:69)
at com.liferay.portal.struts.PortletAction.execute(PortletAction.java:102)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at com.liferay.portal.struts.PortletRequestProcessor.processActionPerform(PortletRequestProcessor.java:249)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at com.liferay.portal.struts.PortletRequestProcessor.process(PortletRequestProcessor.java:131)
at com.liferay.portlet.StrutsPortlet.include(StrutsPortlet.java:223)
at com.liferay.portlet.StrutsPortlet.doView(StrutsPortlet.java:194)
at com.liferay.portlet.LiferayPortlet.doDispatch(LiferayPortlet.java:51)
at javax.portlet.GenericPortlet.render(GenericPortlet.java:163)
at com.liferay.portlet.CachePortlet._invoke(CachePortlet.java:365)
at com.liferay.portlet.CachePortlet.render(CachePortlet.java:182)
at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:953)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.filters.strip.StripFilter.doFilter(StripFilter.java:260)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.filters.compression.CompressionFilter.doFilter(CompressionFilter.java:124)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:1108)
at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:1054)
at com.liferay.portal.action.RenderPortletAction.execute(RenderPortletAction.java:72)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:156)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:479)
at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:877)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.filters.strip.StripFilter.doFilter(StripFilter.java:94)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.filters.secure.SecureFilter.doFilter(SecureFilter.java:143)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.filters.compression.CompressionFilter.doFilter(CompressionFilter.java:115)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Nested exception:
根据错误可以看出是XML解析错误,在网上找了好久找到一些人的回答:
# DocumentTransformerListener does not work
journal.transformer.listener=com.liferay.portlet.journal.util.TokensTransformerListener,com.liferay.portlet.journal.util.PropertiesTransformerListener,com.liferay.portlet.journal.util.LocaleTransformerListener
The issue happens because DocumentTransformerListener, which used to be disabled in Liferay 4.2.0, is now enabled by default. However, if the filter breaks, that does not disable the journal content, only the filter.
按他回答的修改后,错误依旧.没办法,自已找原因.用sqldeveloper打开数据库发现journalarticle表content字段,有的显示很多"\n",有的是正确的换行,只要是显示"\n"运行就会报错,自已写了三个存储过程,分别针对journalarticle,journaltemplate,journalstructure三个表修改,代码如下:
create or replace PROCEDURE ARTICLE AS
BEGIN
FOR RESULT_ IN (SELECT * FROM JOURNALARTICLE WHERE CONTENT LIKE '%\n%') LOOP
UPDATE JOURNALARTICLE SET CONTENT =
Replace(RESULT_.CONTENT,'\n',CHR(10)) WHERE ID_=RESULT_.ID_;
END LOOP;
END ARTICLE;
create or replace PROCEDURE STRUCTRUE AS
BEGIN
FOR RESULT_ IN (SELECT * FROM JOURNALSTRUCTURE WHERE XSD LIKE '%\n%') LOOP
UPDATE JOURNALSTRUCTURE SET XSD =
Replace(RESULT_.XSD,'\n',CHR(10)) WHERE ID_=RESULT_.ID_;
END LOOP;
END STRUCTRUE;
create or replace PROCEDURE TEMPLATE AS
BEGIN
FOR RESULT_ IN (SELECT * FROM JOURNALTEMPLATE WHERE XSL LIKE '%\n%') LOOP
UPDATE JOURNALTEMPLATE SET XSL =
Replace(RESULT_.XSL,'\n',CHR(10)) WHERE ID_=RESULT_.ID_;
END LOOP;
END TEMPLATE;
15 May 2007 01:44:59,453 CPOR ERROR [http-8080-Processor24] util.ContentTransformerListener: org.dom4j.DocumentException: Error on line 1 of document : Content is not allowed in prolog. Nested exception: Content is not allowed in prolog.
at org.dom4j.io.SAXReader.read(SAXReader.java:482)
at org.dom4j.io.SAXReader.read(SAXReader.java:365)
at com.liferay.portlet.journal.util.ContentTransformerListener.replaceContent(ContentTransformerListener.java:90)
at com.liferay.portlet.journal.util.ContentTransformerListener.onXml(ContentTransformerListener.java:58)
at com.liferay.portlet.journal.util.JournalUtil.transform(JournalUtil.java:757)
at com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl.getArticleContent(JournalArticleLocalServiceImpl.java:709)
at com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl.getArticleContent(JournalArticleLocalServiceImpl.java:585)
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 org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:280)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
at $Proxy12.getArticleContent(Unknown Source)
at com.liferay.portlet.journal.service.JournalArticleLocalServiceUtil.getArticleContent(JournalArticleLocalServiceUtil.java:269)
at com.liferay.portlet.journalcontent.util.JournalContentUtil.getContent(JournalContentUtil.java:78)
at com.liferay.portlet.journalcontent.action.ViewAction.render(ViewAction.java:69)
at com.liferay.portal.struts.PortletAction.execute(PortletAction.java:102)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at com.liferay.portal.struts.PortletRequestProcessor.processActionPerform(PortletRequestProcessor.java:249)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at com.liferay.portal.struts.PortletRequestProcessor.process(PortletRequestProcessor.java:131)
at com.liferay.portlet.StrutsPortlet.include(StrutsPortlet.java:223)
at com.liferay.portlet.StrutsPortlet.doView(StrutsPortlet.java:194)
at com.liferay.portlet.LiferayPortlet.doDispatch(LiferayPortlet.java:51)
at javax.portlet.GenericPortlet.render(GenericPortlet.java:163)
at com.liferay.portlet.CachePortlet._invoke(CachePortlet.java:365)
at com.liferay.portlet.CachePortlet.render(CachePortlet.java:182)
at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:953)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.filters.strip.StripFilter.doFilter(StripFilter.java:260)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.filters.compression.CompressionFilter.doFilter(CompressionFilter.java:124)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:1108)
at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:1054)
at com.liferay.portal.action.RenderPortletAction.execute(RenderPortletAction.java:72)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:156)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:479)
at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:877)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.filters.strip.StripFilter.doFilter(StripFilter.java:94)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.filters.secure.SecureFilter.doFilter(SecureFilter.java:143)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.filters.compression.CompressionFilter.doFilter(CompressionFilter.java:115)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Nested exception:
根据错误可以看出是XML解析错误,在网上找了好久找到一些人的回答:
# DocumentTransformerListener does not work
journal.transformer.listener=com.liferay.portlet.journal.util.TokensTransformerListener,com.liferay.portlet.journal.util.PropertiesTransformerListener,com.liferay.portlet.journal.util.LocaleTransformerListener
The issue happens because DocumentTransformerListener, which used to be disabled in Liferay 4.2.0, is now enabled by default. However, if the filter breaks, that does not disable the journal content, only the filter.
按他回答的修改后,错误依旧.没办法,自已找原因.用sqldeveloper打开数据库发现journalarticle表content字段,有的显示很多"\n",有的是正确的换行,只要是显示"\n"运行就会报错,自已写了三个存储过程,分别针对journalarticle,journaltemplate,journalstructure三个表修改,代码如下:
create or replace PROCEDURE ARTICLE AS
BEGIN
FOR RESULT_ IN (SELECT * FROM JOURNALARTICLE WHERE CONTENT LIKE '%\n%') LOOP
UPDATE JOURNALARTICLE SET CONTENT =
Replace(RESULT_.CONTENT,'\n',CHR(10)) WHERE ID_=RESULT_.ID_;
END LOOP;
END ARTICLE;
create or replace PROCEDURE STRUCTRUE AS
BEGIN
FOR RESULT_ IN (SELECT * FROM JOURNALSTRUCTURE WHERE XSD LIKE '%\n%') LOOP
UPDATE JOURNALSTRUCTURE SET XSD =
Replace(RESULT_.XSD,'\n',CHR(10)) WHERE ID_=RESULT_.ID_;
END LOOP;
END STRUCTRUE;
create or replace PROCEDURE TEMPLATE AS
BEGIN
FOR RESULT_ IN (SELECT * FROM JOURNALTEMPLATE WHERE XSL LIKE '%\n%') LOOP
UPDATE JOURNALTEMPLATE SET XSL =
Replace(RESULT_.XSL,'\n',CHR(10)) WHERE ID_=RESULT_.ID_;
END LOOP;
END TEMPLATE;