我尝试在liferay 6.1.1上部署我的应用程序并得到此错误(当我在6.0.6上测试此应用程序时一切正常).这是什么意思?
引起:com.liferay.portal.kernel.xml.DocumentException:文档第1行出错:XML声明中"version"后面的值必须是带引号的字符串.嵌套异常:XML声明中"version"后面的值必须是带引号的字符串.
up:我不知道哪个文件出现此错误.完整日志
我不知道哪个文件出现此错误...所有日志[#| 2012-08-09T15:12:20.322 + 0400 | INFO | glassfish3.1.2 | javax.enterprise.system.std.com.sun.enterprise. server.logging | _ThreadID = 17; _ThreadName = Thread-3; | 15:12:20,321 ERROR [com.liferay.portal.kernel.deploy.auto.AutoDeployScanner] [AutoDeployDir:210] com.liferay.portal.kernel.deploy .auto.AutoDeployException:com.liferay.portal.kernel.xml.DocumentException:文档第1行出错:XML声明中"version"后面的值必须是带引号的字符串.嵌套异常:XML声明中"version"后面的值必须是带引号的字符串.com.liferay.portal.kernel.deploy.auto.AutoDeployException:com.liferay.portal.kernel.xml.DocumentException:文档第1行出错:XML声明中"version"后面的值必须是带引号的字符串.嵌套异常:XML声明中"version"后面的值必须是带引号的字符串.在com.liferay.portal.tools.deploy.BaseDeployer.autoDeploy(BaseDeployer.java:201)在com.liferay.portal.deploy.auto.PortletAutoDeployListener.deploy(PortletAutoDeployListener.java:84)在com.liferay.portal.kernel .deploy.auto.AutoDeployDir.processFile(AutoDeployDir.java:193)在com.liferay.portal.kernel.deploy.auto.AutoDeployDir.scanDirectory(AutoDeployDir.java:235)在com.liferay.portal.kernel.deploy.auto .AutoDeployScanner.run(AutoDeployScanner.java:54)引起:com.liferay.portal.kernel.xml.DocumentException:文档第1行出错:XML声明中"version"后面的值必须是带引号的字符串.嵌套异常:XML声明中"version"后面的值必须是带引号的字符串.在com.liferay.portal.xml.SAXReaderImpl.read(SAXReaderImpl.java:399)在com.liferay.portal.xml.SAXReaderImpl.read(SAXReaderImpl.java:378)在com.liferay.portal.xml.SAXReaderImpl.read (SAXReaderImpl.java:409)在com.liferay.portal.kernel.xml.SAXReaderUtil.read(SAXReaderUtil.java:155)在com.liferay.portal.tools.WebXMLBuilder.organizeWebXML(WebXMLBuilder.java:60)在COM. liferay.portal.tools.deploy.BaseDeployer.updateWebXml(BaseDeployer.java:2078)在com.liferay.portal.tools.deploy.BaseDeployer.deployDirectory(BaseDeployer.java:576)在com.liferay.portal.tools.deploy. BaseDeployer.deployFile(BaseDeployer.java:957)在com.liferay.portal.tools.deploy.BaseDeployer.deployFile(BaseDeployer.java:889)在com.liferay.portal.tools.deploy.BaseDeployer.autoDeploy(BaseDeployer.java: 198)... 4更多引起:org.dom4j.DocumentException:文档第1行出错:XML声明中"version"后面的值必须是带引号的字符串.嵌套异常:XML声明中"version"后面的值必须是带引号的字符串.在org.dom4j.io.SAXReader.read(SAXReader.java:482)org.dom4j.io.SAXReader.read(SAXReader.java:365)at com.liferay.portal.xml.SAXReaderImpl.read(SAXReaderImpl.java) :396)... 13更多|#]
小智 8
问题可能出在您的web.xml文件中.我有一个类似的问题,一个portlet在6.1GA1下工作正常但不是6.1GA2.当Liferay部署portlet(和钩子等)时,它会重写文件和其他文件以添加过滤器,库等.因此,错误可能不是您最初创建它时的文件,而是Liferay生成的文件.
就我而言,Liferay改变了web.xml的第一部分
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
Run Code Online (Sandbox Code Playgroud)
喜欢的东西
<?xml version=<filters>[other stuff]</filters>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
Run Code Online (Sandbox Code Playgroud)
所以这是一个修改过的第一行导致了这个问题.我有一些XML注释掉使用<!-- -->和删除这些部分修复了问题.但这是一个错误恕我直言.
| 归档时间: |
|
| 查看次数: |
7357 次 |
| 最近记录: |