Jakarta ee 尝试运行Wicket应用程序会得到404
我已经对我的应用程序的逻辑进行了分类。这只是“让应用程序运行”这一点,我遇到了一些问题 我知道我需要(并且拥有)一个类,该类通过显示主页(在我的例子中,称为“UserPage”)来启动应用程序。然而,即使正确填写了web.xml并实现了WicketApplication类,我仍然得到了404 两者的代码如下所示。有人能在两个方面帮助我吗 •告诉我哪里出了问题(以及原因) •这两个文件需要的外观以及更正的位置 提前谢谢 WicketApplication.javaJakarta ee 尝试运行Wicket应用程序会得到404,jakarta-ee,wicket,Jakarta Ee,Wicket,我已经对我的应用程序的逻辑进行了分类。这只是“让应用程序运行”这一点,我遇到了一些问题 我知道我需要(并且拥有)一个类,该类通过显示主页(在我的例子中,称为“UserPage”)来启动应用程序。然而,即使正确填写了web.xml并实现了WicketApplication类,我仍然得到了404 两者的代码如下所示。有人能在两个方面帮助我吗 •告诉我哪里出了问题(以及原因) •这两个文件需要的外观以及更正的位置 提前谢谢 WicketApplication.java package com.
package com.me.textboxformtutorial;
import com.me.textboxformtutorial.UserPage;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.protocol.http.WebApplication;
public class WicketApplication extends WebApplication {
@Override
public Class<UserPage> getHomePage()
{
return UserPage.class;
}
}
package com.me.textboxformtutorial;
导入com.me.textboxformtutorial.UserPage;
导入org.apache.wicket.markup.html.WebPage;
导入org.apache.wicket.protocol.http.WebApplication;
公共类WicketApplication扩展了WebApplication{
@凌驾
公共类getHomePage()
{
返回UserPage.class;
}
}
web.xml
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<servlet>
<servlet-name>WicketTextBoxExample</servlet-name>
<servlet-class>UserPage</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>WicketTextBoxExample</servlet-name>
<url-pattern>/textboxexample</url-pattern>
</servlet-mapping>
<filter>
<filter-name>wicketFilter</filter-name>
<filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class>
<init-param>
<param-name>applicationClassName</param-name>
<param-value>com.me.textboxformtutorial.WicketApplication</param-value>
</init-param>
</filter>
</web-app>
WickettextBoxes示例
用户页
WickettextBoxes示例
/文本框示例
威克特过滤器
org.apache.wicket.protocol.http.WicketFilter
应用程序类名
com.me.textboxformtutorial.WicketApplication
这里的问题是Wicket页面不是servlet。Wicket是一个框架,它为处理请求和呈现结果添加了自己的抽象层,因此不需要在web.xml
中单独声明所有页面
设置Wicket的正确方法是将定义的筛选器映射到所需的url:
<filter-mapping>
<filter-name>wicketFilter</filter-name>
<url-pattern>/*</url-pattern> <!-- or /textboxexample/* if you want your application to map to that url -->
</filter-mapping>
威克特过滤器
/*
并删除以下条目:
<servlet>
<servlet-name>WicketTextBoxExample</servlet-name>
<servlet-class>UserPage</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>WicketTextBoxExample</servlet-name>
<url-pattern>/textboxexample</url-pattern>
</servlet-mapping>
WickettextBoxes示例
用户页
WickettextBoxes示例
/文本框示例
这会将对给定url的所有请求馈送到Wicket筛选器,该筛选器将处理和解析这些请求,并将它们传递到相应的页面
如果您使用Maven,您可以从创建项目,这一切都可以为您完成。这里的问题是Wicket页面不是servlet。Wicket是一个框架,它为处理请求和呈现结果添加了自己的抽象层,因此不需要在
web.xml
中单独声明所有页面
设置Wicket的正确方法是将定义的筛选器映射到所需的url:
<filter-mapping>
<filter-name>wicketFilter</filter-name>
<url-pattern>/*</url-pattern> <!-- or /textboxexample/* if you want your application to map to that url -->
</filter-mapping>
威克特过滤器
/*
并删除以下条目:
<servlet>
<servlet-name>WicketTextBoxExample</servlet-name>
<servlet-class>UserPage</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>WicketTextBoxExample</servlet-name>
<url-pattern>/textboxexample</url-pattern>
</servlet-mapping>
WickettextBoxes示例
用户页
WickettextBoxes示例
/文本框示例
这会将对给定url的所有请求馈送到Wicket筛选器,该筛选器将处理和解析这些请求,并将它们传递到相应的页面
如果您使用Maven,您可以从中创建您的项目,这一切都可以为您完成。Wow!非常感谢:)世界上最小的过滤器,如果我见过的话。我认为这是因为我的Java文件没有被提及,可以吗?如果一切顺利,我会告诉你的。哇!非常感谢:)世界上最小的过滤器,如果我见过的话。我认为这是因为我的Java文件没有被提及,可以吗?如果事情进展顺利,我会告诉你的。