2014-07-11 3 views
2

Jetty 9.0.6 및 JRE 1.7.0_45를 사용하는 웹 응용 프로그램을 지원하고 Jetty\webapps 폴더의 모든 war 파일이 성공적으로 배포됩니다. 유일한 문제는 Jetty 시작시 로그 파일에서 연결 거부 메시지를 수신하는 webapps\root 폴더입니다.Jetty 9.0.6 - java.net.ConnectException : 연결이 거부되었습니다. 연결

2014-06-19 13:43:16.766:WARN:oejw.WebAppContext:main: Failed startup of context [email protected]{/,file:/C:/Program%20Files/MyApplication/Jetty/webapps/root/,null}{C:\Program Files\MyApplication\Jetty\webapps\root} 
java.net.ConnectException: Connection refused: connect 
    at java.net.DualStackPlainSocketImpl.connect0(Native Method) 
    at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) 
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) 
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) 
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) 
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) 
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 
    at java.net.Socket.connect(Socket.java:579) 
    at java.net.Socket.connect(Socket.java:528) 
    at sun.net.NetworkClient.doConnect(NetworkClient.java:180) 
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:432) 
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:527) 
    at sun.net.www.http.HttpClient.<init>(HttpClient.java:211) 
    at sun.net.www.http.HttpClient.New(HttpClient.java:308) 
    at sun.net.www.http.HttpClient.New(HttpClient.java:326) 
    at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:996) 
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:932) 
    at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:850) 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1300) 
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:637) 
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(XMLEntityManager.java:1290) 
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startDTDEntity(XMLEntityManager.java:1257) 
    at com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.setInputSource(XMLDTDScannerImpl.java:262) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.dispatch(XMLDocumentScannerImpl.java:1162) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.next(XMLDocumentScannerImpl.java:1050) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:964) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) 
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777) 
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213) 
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649) 
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:333) 
    at org.eclipse.jetty.xml.XmlParser.parse(XmlParser.java:246) 
    at org.eclipse.jetty.webapp.Descriptor.parse(Descriptor.java:65) 
    at org.eclipse.jetty.webapp.WebDescriptor.parse(WebDescriptor.java:148) 
    at org.eclipse.jetty.webapp.MetaData.setWebXml(MetaData.java:171) 
    at org.eclipse.jetty.webapp.WebXmlConfiguration.preConfigure(WebXmlConfiguration.java:61) 
    at org.eclipse.jetty.webapp.WebAppContext.preConfigure(WebAppContext.java:453) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:489) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69) 
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:118) 
    at org.eclipse.jetty.util.component.ContainerLifeCycle.addBean(ContainerLifeCycle.java:282) 
    at org.eclipse.jetty.util.component.ContainerLifeCycle.addBean(ContainerLifeCycle.java:214) 
    at org.eclipse.jetty.util.component.ContainerLifeCycle.updateBeans(ContainerLifeCycle.java:764) 
    at org.eclipse.jetty.server.handler.HandlerCollection.setHandlers(HandlerCollection.java:89) 
    at org.eclipse.jetty.server.handler.ContextHandlerCollection.setHandlers(ContextHandlerCollection.java:145) 
    at org.eclipse.jetty.server.handler.HandlerCollection.addHandler(HandlerCollection.java:155) 
    at org.eclipse.jetty.deploy.bindings.StandardDeployer.processBinding(StandardDeployer.java:41) 
    at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:186) 
    at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:495) 
    at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:146) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:175) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:64) 
    at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:605) 
    at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:528) 
    at org.eclipse.jetty.util.Scanner.scan(Scanner.java:391) 
    at org.eclipse.jetty.util.Scanner.doStart(Scanner.java:313) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:145) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69) 
    at org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:557) 
    at org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:232) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69) 
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:118) 
    at org.eclipse.jetty.server.Server.start(Server.java:342) 
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:100) 
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:60) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:290) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69) 
    at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1250) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1174) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.eclipse.jetty.start.Main.invokeMain(Main.java:509) 
    at org.eclipse.jetty.start.Main.start(Main.java:651) 
    at org.eclipse.jetty.start.Main.main(Main.java:99) 

root 폴더에는 매우 기본적인 구조가 포함되어 있습니다.

root/ 
root/index.html 
root/WEB-INF/ 
root/WEB-INF/web.xml 

기본적으로 루트 폴더의 목적은 쿼리를 루트 (/)로 다른 경로로 리디렉션하는 것입니다.

이 폴더는 영향을받지 않는 서버에서 99 %의 시간을 성공적으로 배포합니다. 특정 서버에서 발생하면 일관되게 작동합니다. 성공적인 로그 항목은 다음과 같습니다.

2014-06-26 18:05:36.408:INFO:oejsh.ContextHandler:main: Started [email protected]{/,file:/C:/Program%20Files/MyApplication/Jetty/webapps/root/,AVAILABLE}{C:\Program Files\MyApplication\Jetty\webapps\root} 

제티는 Windows 서버에서 실행됩니다. 이 문제는 Windows Server 2003 및 Windows Server 2008 R2에서 발생하지만 이러한 OS 버전을 실행하는 모든 서버에서는 발생하지 않습니다. root 폴더의 폴더 사용 권한을 확인한 후이 문제가없는 서버와 비교해도 차이가 없습니다. 또한 문제가없는 서버의 root 폴더를 문제가있는 서버에 복사 했으므로 문제가 계속됩니다.

누가 이런 일이 발생했는지 또는이 문제를 해결하기위한 위치를 제안 할 수 있습니까?

Jetty의 버전을 변경하는 것은 나에게 옵션이 아니며 JRE를 업데이트하는 것도 아닙니다.

답변

5

이것은 jetty가 web.xml을 구문 분석하고 DTD를 다운로드하려고 할 때 발생할 수 있습니다. 아마 같이, XML에서 DTD를 제거하십시오 :

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" >. 

다른 검사로서 URL 및 자바 프록시 설정을.

+0

감사합니다. web.xml에서 DTD 참조를 제거했습니다. – FusionHammer

관련 문제