gpt4 book ai didi

java - Wicket + Tomcat安装中 "resources"上下文路径如何协同工作

转载 作者:行者123 更新时间:2023-11-28 22:33:07 25 4
gpt4 key购买 nike

我是一名服务器端 Java 程序员,正在尝试学习 Web 开发,并且一直在尝试使用 Wicket、CSS、Tomcat、MySQL 和 Hibernate 以及 Maven 进行构建。我遇到了找不到 CSS 文件的问题,但我不确定是 Wicket 还是 Tomcat 或者甚至是我的托管服务提供商导致了这个问题。这是设置:

页面 LoginPage.html 的 HTML 包含以下内容:

<head>  
<title wicket:id="pageTitle"></title>
<link wicket:id="stylesheet"/>
</head>

这将填充相应的 LoginPage.java 代码:

public LoginPage(final PageParameters parameters)
{
// Setup page
add(new StyleSheetReference("stylesheet",
AppUserPage.class, "default.css"));

我使用“mvn package”创建一个“.war”文件。一旦我将此 .war 文件部署到我的托管网站,HTML 文件就会通过 Wicket 正常加载但没有应用 CSS

如果我使用“查看源代码”,我会看到以下内容:

<head>  
<title wicket:id="pageTitle">HR-Box Login</title>
<link wicket:id="stylesheet" rel="stylesheet" type="text/css"
href="resources/ca.svarb.hrbox.web.appuser.AppUserPage/default.css"/>
</head>

我认为关键是现在在 deafult.css 文件的 href 中添加了一个“资源”路径。奇怪的是,如果我将 .war 文件部署到本地默认的 Tomcat6 安装或使用“mvn jetty:run”运行,这两种方法都可以正常工作——我可以加载“http://localhost:8080/mywebapp-1.0- SNAPSHOT/?wicket:bookmarkablePage=:ca.svarb.hrbox.web.login.LoginPage"并且它使用 CSS 文件呈现得很好。

我的问题:

  1. 如何添加这个“资源”路径?我在 Wicket 配置中找不到任何告诉它将其添加到路径的内容。
  2. 默认的 Tomcat6 和 Jetty 安装是否有一些东西可以让他们了解在“资源”路径上的哪里可以找到文件?我的托管服务提供商正在使用 Tomcat,但他们可能更改了默认配置以不自动映射此路径。

如果有帮助,应用程序的源代码在 sourceforge 上:

https://wicket-hr-box.svn.sourceforge.net/svnroot/wicket-hr-box/branches/mysql

在此处从 SVN check out 并使用“mvn jetty:run”应该构建并运行应用程序,CSS 工作正常。

实时站点在这里:

http://svarb.org

最佳答案

“resources”是Wicket中的一个特殊路径。这样 Wicket 就知道它必须使用一个特殊的 RequestTarget 来处理这个资源请求。

关于java - Wicket + Tomcat安装中 "resources"上下文路径如何协同工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5059038/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com