我从这个指南开始(http://wicket.apache.org/start/quickstart.html),并且运行正常.接下来,我想添加自己的CSS并开始搞砸了.我快到了无处不在主要是因为我没有一个线索,如何在java(我来自一个C#/ asp.net背景).
无论如何,那些知道Apache Wicket的人都会知道这一点,但是快速启动的源代码可以像下面这样的项目/ src / main / java / com / xyz
我推测我可以做的是在这里添加一个CSS文件夹,所以我创建了一个示例CSS,我把它粘在这里像这样:
project/src/main/java/com/xyz/css/conor.css (containing something real simple like the following) h2 { font-family: tahoma; }
然后我删除了我的homepage.html中的Wicket默认css,并将其更改为参考我的如下:
<link rel="stylesheet" href="css/conor.css" type="text/css" />
但是我的页面没有注意到conor.css …显然我做错了事情,但是找不到一个java虚拟机的一步一步的指导(也就是我!
我已经读过像你需要安装eclipse网络工具的东西.我确实不知道这对我有什么用处,或者为什么会指示我的网页使用CSS.
任何帮助非常感谢!
解决方法
在您的情况下,您尝试链接到位于Java类路径中的资源.这与Web上下文根(位于src / main / webapp)不同.类路径资源和Web上下文资源之间的区别在于Wicket负责并控制对类路径资源的访问,并且您的容器(即jetty,tomcat,glassfish等)负责并控制对Web上下文资源的访问.
例如,当一个资源在Wicket的范围之内时,我们可以用它来做各种各样的事情,比如替代,压缩,缩小,聚合.这些东西是维克特的一部分.
现在你的问题在手,因为你没有告诉维克特链接的资源是在它的控制下,Wicket假设你想要容器来处理这些.为了减轻这种情况,您应该添加< wicket:link>标记你的< link>标签(一个或多个).
<head> ... <wicket:link> <link rel="stylesheet" href="css/conor.css" type="text/css" /> ... </wicket:link> </head>
< wicket:link>标签告诉Wicket查找附带的资源,并尝试在Java类路径上解析它们.