2013-09-05 7 views
1

나는 3.2.1, gwt 2.4 및 최대 절전 모드를 사용하는 응용 프로그램을 보유하고 있습니다.dev 모드 서버에서 GWT XML config 구문 분석 오류가 발생했습니다.

이렇게하면 tomcat에 문제가 없으며 오류없이 실행됩니다. 난 개발을위한 GWT 개발자 모드 서버를 시작하려고하면

, 서버는 내가 xml 파일이 발견 볼 수 있지만 com.google에서 문서 로케이터 수있는 지금까지

Loading modules 
    com.my.app.App 
     [ERROR] Unexpected error while processing XML 
    java.lang.NullPointerException 
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:187) 
    at org.allcolor.xml.parser.CShaniSaxParser.parseStartTag(CShaniSaxParser.java:1393) 
    at org.allcolor.xml.parser.CXmlParser.parseSTARTTag(CXmlParser.java:1405) 
    at org.allcolor.xml.parser.CXmlParser.parse(CXmlParser.java:948) 
    at org.allcolor.xml.parser.CShaniSaxParser.parse(CShaniSaxParser.java:767) 
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:347) 
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68) 
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418) 
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:296) 
    at com.google.gwt.dev.cfg.ModuleDefLoader$1.load(ModuleDefLoader.java:198) 
    at com.google.gwt.dev.cfg.ModuleDefLoader.doLoadModule(ModuleDefLoader.java:324) 
    at com.google.gwt.dev.cfg.ModuleDefLoader.loadFromClassPath(ModuleDefLoader.java:156) 
    at com.google.gwt.dev.DevModeBase.loadModule(DevModeBase.java:992) 
    at com.google.gwt.dev.DevMode.loadModule(DevMode.java:557) 
    at com.google.gwt.dev.DevMode.doStartup(DevMode.java:443) 
    at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1058) 
    at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:811) 
    at com.google.gwt.dev.DevMode.main(DevMode.java:311) 
    [ERROR] shell failed in doStartup method 

오류

을 다음과 같이 실패합니다. gwt.dev.util.xml.ReflectiveParser.java가 설정되어 있지 않고 사용할 때 NullPointerException이 발생하여 실패합니다.

내 실수는 무엇입니까?

감사 스벤

답변

1

문제는 그 javax.xml의 XML 파서로 org.allcolor.xml.parser 세트 자체를. 클라이언트 측 코드에 org.allcolor이 필요하지 않은 경우 DevMode의 클래스 경로에서 제거하십시오.

참고로, 우리는 비슷한의 Xerces에 문제가 있습니다 (기본적으로 GWTTestCase 테스트를 실행하는 데 사용) HtmlUnit과의 Xerces를 요구하지만, Xerces에 다음 JVM에 XML 파서로 등록하고 같은 방법으로 분석 모듈을 나누기. 따라서 Xerces JAR에서 META-INF을 제거해야합니다.

+0

감사합니다. 실제로이 파서는 내 응용 프로그램에서 사용되며 제거 할 수 없습니다 (최소한 내가 원하지 않는 ;-)) GWT dev 모드 서버를 실행하는 나의 방법은 내 IDE에서 조건부 중단 점을 사용하는 것이 었습니다 ,이 locators를 설정합니다. 이것은 디버그 모드에서 실행하는 데 도움이됩니다. 어쨌든 나는 당신의 답을 해결책으로 생각합니다. Thanks Thomas – Metaphalon

+0

파서는 클라이언트 측 코드에 사용됩니까? 또는 서버 측에서만? 서버 측 종속성은'WEB-INF/lib'에 있습니다. DevMode 클래스 경로에는 그 점이 없습니다. (참고 : _build 경로에 관해서는 말하지 않습니다.) –

+0

저는이 GWT dev 모드 서버의 새로운 점에 상당히 익숙합니다. . 이것은 -noserver를 사용하여 GWT dev 모드 서버를 시작하고이를 Tomcat에서도 배포해야한다는 뜻입니까? – Metaphalon

관련 문제