2012-10-18 14 views
6

Dieser Fehler war nicht da, wenn ich mein Programm zum ersten Mal ausführe, dann versuchte ich ein Experiment, um den Fluss der MVC-Architektur zu bekommen, aber jetzt zeigt es mir diese Ausnahme.Was verursacht diese NPE, wenn ich eine Aktion anfordere?

Ich vermute, das Problem ist, wenn ich über den Abonnement-Button anfordern, wird es zu struts.xml gehen, wo es nach Aktion suchen wird. Das Problem ist in Paket-Tag, was es sein sollte

java.lang.NullPointerException 
    org.apache.struts2.impl.StrutsActionProxy.getErrorMessage(StrutsActionProxy.java:69) 
    com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185) 
    org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63) 
    org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39) 
    com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58) 
    org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:501) 
    org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:432) 
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390) 
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) 
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) 
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) 
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) 
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) 
    java.lang.Thread.run(Thread.java:619) 

struts.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration        2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> 

<struts> 
    <constant name="struts.devMode" value="true" /> 
    /*This package*/ 
    <package name="Struts2Ex2" extends="struts.default"> 
     <action name="test" 
      class="MyPack.Verify" 
      method="execute"> 
      <result name="success">/Test2/WelcomeHome.jsp</result> 
     </action> 
    </package> 
</struts> 
+1

** Ich habe es die soloution in Paket-Tag sein sollte ** 'extends = "struts-default"' stattdessen ** 'extends = "struts.default"' ** – Javasist

+3

Bitte beantworten Sie die Frage mit einer Antwort, keinem Kommentar. –

Antwort

4

Die Fehler sind: 1. es gibt nicht so Kommentar /* */ in XML Verwendung <!-- --> statt. 2. Es gibt kein solches Paket struts.default Verwenden Sie stattdessen struts-default.

+0

Entschuldigung für/* */Kommentare und ja, ich habe die Antwort, es war ** Struts-Standard ** nur – Javasist

0

Ich habe das soloution in Paket-Tag sollte es 'erstreckt = "Streben-default"' statt 'erstreckt = "struts.default"'