2012-01-16 65 views
0

我想在Jboss 5.1服務器上部署solr 3.5。我已經修改了 WEB-INF \ web.xml中通過增加設置Solr的主如下:在Jboss 5.1上部署Solr 3.5時出錯

<env-entry> 
<env-entry-name>solr/home</env-entry-name> 
<env-entry-type>java.lang.String</env-entry-type> 
<env-entry-value>E:\apache-solr-3.5.0\example\solr</env-entry-value> 
</env-entry> 

現在,當我啓動JBoss我得到這個錯誤。維基百科解釋說,從solr.war的WEB-INF \ lib中刪除 xercesImpl-2.8.1.jar 和xml-apis-1.3.03.jar。但是我沒有在Solr 3.5的這個位置看到這些罐子。 謝謝。

13:30:39,614 ERROR [AbstractKernelController] Error installing to Parse: 
name=vfsfile:/E:/jboss/server/default/deploy/solr.war/ state=PreParse 
mode=Manual requiredState=Parse 
org.jboss.deployers.spi.DeploymentException: Error creating managed object 
for vfsfile:/E:/jboss/server/default/deploy/solr.war/ 
at 
org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49) 
at 
org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.createMetaData(AbstractParsingDeployerWithOutput.java:362) 
at 
org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.createMetaData(AbstractParsingDeployerWithOutput.java:322) 
at 
org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.createMetaData(AbstractParsingDeployerWithOutput.java:294) 
at 
org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.deploy(AbstractParsingDeployerWithOutput.java:234) 
at 
org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:179) 
at 
org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1454) 
at 
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1172) 
at 
org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1113) 
at 
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348) 
at 
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1652) 
at 
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:938) 
at 
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082) 
at 
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:988) 
at 
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:826) 
at 
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:556) 
at 
org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:789) 
at 
org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:699) 
at 
org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117) 
at 
org.jboss.system.server.profileservice.repository.ProfileDeployAction.install(ProfileDeployAction.java:70) 
at 
org.jboss.system.server.profileservice.repository.AbstractProfileAction.install(AbstractProfileAction.java:53) 
at 
org.jboss.system.server.profileservice.repository.AbstractProfileService.install(AbstractProfileService.java:403) 
at 
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348) 
at 
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1652) 
at 
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:938) 
at 
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082) 
at 
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:988) 
at 
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:778) 
at 
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:543) 
at 
org.jboss.system.server.profileservice.repository.AbstractProfileService.registerProfile(AbstractProfileService.java:308) 
at 
org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:256) 
at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:461) 
at org.jboss.Main.boot(Main.java:221) 
at org.jboss.Main$1.run(Main.java:556) 
at java.lang.Thread.run(Thread.java:662) 
Caused by: org.jboss.xb.binding.JBossXBException: Failed to parse source: 
The content of element type "env-entry" must match 
"(description?,env-entry-name,env-entry-value?,env-entry-type)". @ 
vfsfile:/E:/jboss/server/default/deploy/solr.war/WEB-INF/web.xml[47,14] 
at 
org.jboss.xb.binding.parser.sax.SaxJBossXBParser.parse(SaxJBossXBParser.java:203) 
at 
org.jboss.xb.binding.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:168) 
at org.jboss.xb.util.JBossXBHelper.parse(JBossXBHelper.java:189) 
at org.jboss.xb.util.JBossXBHelper.parse(JBossXBHelper.java:166) 
at 
org.jboss.deployers.vfs.spi.deployer.SchemaResolverDeployer.parse(SchemaResolverDeployer.java:137) 
at 
org.jboss.deployers.vfs.spi.deployer.SchemaResolverDeployer.parse(SchemaResolverDeployer.java:121) 
at 
org.jboss.deployers.vfs.spi.deployer.AbstractVFSParsingDeployer.parseAndInit(AbstractVFSParsingDeployer.java:304) 
at 
org.jboss.deployers.vfs.spi.deployer.AbstractVFSParsingDeployer.parseAndInit(AbstractVFSParsingDeployer.java:286) 
at 
org.jboss.deployers.vfs.spi.deployer.AbstractVFSParsingDeployer.parse(AbstractVFSParsingDeployer.java:203) 
at 
org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.createMetaData(AbstractParsingDeployerWithOutput.java:348) 
... 33 more 
Caused by: org.xml.sax.SAXException: The content of element type 
"env-entry" must match 
"(description?,env-entry-name,env-entry-value?,env-entry-type)". @ 
vfsfile:/E:/jboss/server/default/deploy/solr.war/WEB-INF/web.xml[47,14] 
at 
org.jboss.xb.binding.parser.sax.SaxJBossXBParser$MetaDataErrorHandler.error(SaxJBossXBParser.java:426) 
at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source) 
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) 
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) 
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) 
at org.apache.xerces.impl.dtd.XMLDTDValidator.handleEndElement(Unknown 
Source) 
at org.apache.xerces.impl.dtd.XMLDTDValidator.endElement(Unknown Source) 
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown 
Source) 
at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown 
Source) 
at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown 
Source) 
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) 
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) 
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) 
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) 
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 
at 
org.jboss.xb.binding.parser.sax.SaxJBossXBParser.parse(SaxJBossXBParser.java:199) 
... 42 more 
+0

「爲了好玩」在同一臺機器上用tomcat試試。 – 2012-01-17 00:00:29

+0

這是SOLR 3.5中的一個已知錯誤https://issues.apache.org/jira/browse/SOLR-2718 https://issues.apache.org/jira/browse/SOLR-3084(更好地詢問Solr用戶郵件 - 列表,恕我直言) – 2012-02-16 07:35:45

回答

1

時候晚發佈一個答案,也許,但解決的辦法是那麼容易(和耗時,如果你還不知道吧!),我想我不得不分享吧!希望這有助於...

取消註釋看起來像這樣的塊:

<!-- People who want to hardcode their "Solr Home" directly into the 
     WAR File can set the JNDI property here... 
    --> 
    <env-entry> 
    <env-entry-name>/solr/home</env-entry-name> 
    <env-entry-value>/the/path/to/your/solr/home</env-entry-value> 
    <env-entry-type>java.lang.String</env-entry-type> 
    </env-entry> 

但把env-entry節點作爲web-app節點的最後一個孩子,而不是第一個(像在原來web.xml文件)。 然後你走了。

我親自在JBoss AS 6.0.0上通過Ubuntu Linux機器(OpenJDK for Java v。1.6.0_24/IcedTea6 1.11.4)對Solr 3.6.1進行了測試。