新しいストライプアクションの作成中にログファイルに次のエラーが見つかりました。net.sourceforge.stripes.exception.StripesServletException:ActionBeanタイプのインスタンスを作成できませんでした
**net.sourceforge.stripes.exception.StripesServletException: ***Could not create instance of ActionBean type*** [site.person.inspector.finaid.budget.ManageSession].**
at net.sourceforge.stripes.controller.AnnotatedClassActionResolver.getActionBean(AnnotatedClassActionResolver.java:368)
at net.sourceforge.stripes.controller.NameBasedActionResolver.getActionBean(NameBasedActionResolver.java:264)
at net.sourceforge.stripes.controller.AnnotatedClassActionResolver.getActionBean(AnnotatedClassActionResolver.java:293)
at net.sourceforge.stripes.controller.DispatcherHelper$1.intercept(DispatcherHelper.java:106)
at net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:158)
at.site.stripesext.ConnectionContextSetupInterceptor.intercept(ConnectionContextSetupInterceptor.java:17)
at net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:155)
at net.sourceforge.stripes.controller.BeforeAfterMethodInterceptor.intercept(BeforeAfterMethodInterceptor.java:113)
at net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:155)
at net.sourceforge.stripes.controller.ExecutionContext.wrap(ExecutionContext.java:74)
at net.sourceforge.stripes.controller.DispatcherHelper.resolveActionBean(DispatcherHelper.java:102)
at net.sourceforge.stripes.controller.DispatcherServlet.resolveActionBean(DispatcherServlet.java:238)
at net.sourceforge.stripes.controller.DispatcherServlet.service(DispatcherServlet.java:141)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.person.PersonAuditFilter.doFilter(PersonAuditFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.support.security.AuthorizationFilter.doFilter(AuthorizationFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.support.session.SessionTrackingFilter.doFilter(SessionTrackingFilter.java:41)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.support.security.AuthenticationFilter.doFilter(AuthenticationFilter.java:39)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.support.downtime.DowntimeFilter.doFilter(DowntimeFilter.java:41)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.QueueFilter.doFilter(QueueFilter.java:23)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.TransactionFilter.doFilter(TransactionFilter.java:82)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.ExceptionLoggingFilter.doFilter(ExceptionLoggingFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.PdfFilter.doFilter(PdfFilter.java:42)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.PreventCacheResponseFilter.doFilter(PreventCacheResponseFilter.java:25)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at site.QuiesceFilter.doFilter(QuiesceFilter.java:91)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.HqlTraceFilter.doFilter(HqlTraceFilter.java:43)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at .site.AuditFilter.doFilter(AuditFilter.java:61)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:500)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:619)
以下は私が今作業しているクラスです。あなたは私がgetViewSessionUrl(すなわちactionBean.viewSessionUrl)を呼び出すリンクをクリックしたときに、私がやろうとしています何
@UrlBinding("/person/inspect/finaid/budget/manage-session-budget.page")
public class ManageSession extends AbstractAidApplicantYearSessionTab{
//The class AbstractAidApplicantYearSessionTab has a hierarchy and the last one extends from UIAction
private static final String MANAGE_JSP_FILE="person/inspect/finaid/budget/manage-session-budget.jsp" ;
@Override
@DefaultHandler
public Resolution show() {
return new MauiForwardResolution(MANAGE_JSP_FILE);
}
public ManageSession(PersonInspectorAction personInspector, String group, String title) {
super(personInspector, group, title);
}
}
@UrlBinding("/person/inspect/finaid/budget/cost-of-attendance.page")
public class CostOfAttendanceTab extends AbstractAidApplicantTab {
public String getViewSessionUrl() {
return "/person/inspect/finaid/budget/manage-session-budget.page";
}
public CostOfAttendanceTab(PersonInspectorAction personInspector, String group, String title) {
super(personInspector, group, title);
}
}
です。これはあなたを管理セッションに招待します。ページ(つまりクラスManageSession)...そのクラスでは、私はshow()というデフォルトの解決策を持っています。これはあなたをmanage-session-budget.jspに転送します。しかし、私はそれがJSPファイルを取得していないかsthがManageSessionページで間違っているのか分かりません...
あなたは何か考えていますか?
あなたは正しいです 'ManageSession'には引数なしのコンストラクタがありません。それで、 'CostOfAttendance'のような他のクラスはうまく動作します。私もManageSessionにデフォルトのコンストラクタを入れようとしましたが、site.person.inspector.finaid.AbstractAidApplicantYearSessionTab(ManageSessionの親)で使用できるデフォルトのコンストラクタはありませんというコンパイル時エラーがあります。 AbstractAidApplicantYearSessionTabで同じことをすると、それは私を親クラスに向けるようになります。 ManageSession以外のクラスを変更する権利はありません。私は何をすべきか? – WowBow
CostOfAttendanceTabクラスには、引数を持たないコンストラクタがあります。これは、Javaコンパイラが 'super()'を呼び出すだけです。引数なしのコンストラクタ**は、最初の命令としてスーパーコンストラクタを呼び出す必要があります。スーパークラスに引数なしのコンストラクタがない場合は、明示的に別のものを呼び出さなければなりません: 'public ManageSession(){super(null、null、null); // ...}' http://docs.oracle.com/javase/tutorial/java/javaOO/constructors.htmlを参照してください。 –
ごめんなさい。 CostOfAttendanceTabには既にコンストラクタがあります。私は私の質問を編集しました。 public CostOfAttendanceTab(PersonInspectorAction personInspector、Stringグループ、String title){ super(personInspector、group、title); } – WowBow