Java/Wicket:使用资源编译基本的 Hello World

2024-03-14

我正在关注这个 Hello World Wicket 应用程序的示例

https://www.ibm.com/developerworks/web/library/wa-aj-wicket/ https://www.ibm.com/developerworks/web/library/wa-aj-wicket/

我特别放置了HelloWorld.html在我的源目录旁边HelloWorld.java.

我的文件结构如下所示:

$ tree
.
├── pom.xml
├── src
│   ├── main
│   │   ├── java
│   │   │   └── com
│   │   │       └── example
│   │   │           └── wicket
│   │   │               ├── HelloWorld.html
│   │   │               ├── HelloWorld.java
│   │   │               └── HelloWorldApplication.java
│   │   ├── resources
│   │   └── webapp
│   │       └── WEB-INF
│   │           └── web.xml
│   └── test
│       └── java
└── wicketTest.iml 

但是,当我将其编译为 war 文件并加载到 Jetty 中时,我在浏览器中收到此错误:

Unexpected RuntimeException

Last cause: Can not determine Markup. Component is not yet connected to a parent. [Page class = com.example.wicket.HelloWorld, id = 4, render count = 1]

Stacktrace

Root cause:

org.apache.wicket.markup.MarkupNotFoundException: Can not determine Markup. Component is not yet connected to a parent. [Page class = com.example.wicket.HelloWorld, id = 4, render count = 1]
     at org.apache.wicket.Component.getMarkup(Component.java:737)
     at org.apache.wicket.Component.internalRender(Component.java:2344)
     at org.apache.wicket.Component.render(Component.java:2307)
     at org.apache.wicket.Page.renderPage(Page.java:1010) 

当我查看 war 文件时,我注意到 html 文件丢失了:

$ tar tvf target/wicketTest-1.0-SNAPSHOT.war
drwxrwxrwx  0 0      0           0 Aug 22 14:50 META-INF/
-rwxrwxrwx  0 0      0         128 Aug 22 14:50 META-INF/MANIFEST.MF
drwxrwxrwx  0 0      0           0 Aug 22 14:50 WEB-INF/
drwxrwxrwx  0 0      0           0 Aug 22 14:50 WEB-INF/classes/
drwxrwxrwx  0 0      0           0 Aug 22 14:50 WEB-INF/classes/com/
drwxrwxrwx  0 0      0           0 Aug 22 14:50 WEB-INF/classes/com/example/
drwxrwxrwx  0 0      0           0 Aug 22 14:50 WEB-INF/classes/com/example/wicket/
drwxrwxrwx  0 0      0           0 Aug 22 14:50 WEB-INF/lib/
-rwxrwxrwx  0 0      0         608 Aug 22 14:50 WEB-INF/classes/com/example/wicket/HelloWorld.class
-rwxrwxrwx  0 0      0         551 Aug 22 14:50 WEB-INF/classes/com/example/wicket/HelloWorldApplication.class
-rwxrwxrwx  0 0      0       25962 Aug 21 16:07 WEB-INF/lib/slf4j-api-1.6.4.jar
-rwxrwxrwx  0 0      0     2126440 Aug 21 16:07 WEB-INF/lib/wicket-core-6.10.0.jar
-rwxrwxrwx  0 0      0       86671 Aug 21 16:07 WEB-INF/lib/wicket-request-6.10.0.jar
-rwxrwxrwx  0 0      0      415858 Aug 21 16:07 WEB-INF/lib/wicket-util-6.10.0.jar
-rwxrwxrwx  0 0      0         690 Aug 22 13:22 WEB-INF/web.xml
drwxrwxrwx  0 0      0           0 Aug 22 14:50 META-INF/maven/
drwxrwxrwx  0 0      0           0 Aug 22 14:50 META-INF/maven/wicketTest/
drwxrwxrwx  0 0      0           0 Aug 22 14:50 META-INF/maven/wicketTest/wicketTest/
-rwxrwxrwx  0 0      0         675 Aug 22 08:52 META-INF/maven/wicketTest/wicketTest/pom.xml
-rwxrwxrwx  0 0      0         112 Aug 22 14:50 META-INF/maven/wicketTest/wicketTest/pom.properties

如何在 POM 文件中指定包含 html 文件?

我现在的 POM 是最小的:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>wicketTest</groupId>
    <artifactId>wicketTest</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>

    <dependencies>
        <dependency>
            <groupId>org.apache.wicket</groupId>
            <artifactId>wicket-core</artifactId>
            <version>6.10.0</version>
        </dependency>
    </dependencies>
</project>

如果您希望您的 HTML 位于检票口最佳实践位置(与您的类一起),解决方案是将其添加到 pom.xml 的构建部分。

<build>
    <resources>
        <resource>
            <filtering>false</filtering>
            <directory>src/main/resources</directory>
        </resource>
        <resource>
            <filtering>false</filtering>
            <directory>src/main/java</directory>
            <includes>
                <include>**</include>
            </includes>
            <excludes>
                <exclude>**/*.java</exclude>
            </excludes>
        </resource>
    </resources>
</build>
</project>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java/Wicket:使用资源编译基本的 Hello World 的相关文章

  • 在此代码中,Runnable 未实例化。为什么?

    Runnable cannot instantiate public class Thread4 public static void main String args Thread t1 new Thread new Runnable R
  • 最终字段可能尚未/已经初始化[重复]

    这个问题在这里已经有答案了 可能的重复 如何处理抛出检查异常的静态最终字段初始值设定项 https stackoverflow com questions 1866770 how to handle a static final field
  • Android CursorAdapter、ListView 和后台线程

    我一直在开发的这个应用程序有包含数兆字节数据的数据库可供筛选 许多活动只是列表视图 通过数据库中的各个级别的数据下降 直到到达 文档 即从数据库中提取并显示在手机上的 HTML 我遇到的问题是 其中一些活动需要能够通过捕获击键并重新运行带有
  • 如果主引用指向 null,WeakReference 或 SoftReference 有何不同

    我正在读关于WeakReference https docs oracle com javase 10 docs api java lang ref WeakReference html and SoftReference https do
  • 想要从java中的char数组创建字符流

    我想从 char 数组构造一个流以使用 java 8 功能 例如过滤器和映射 char list a c e Stream
  • AWS SDK 2 承担角色

    Bean public DynamoDbClient amazonDynamoDB final AssumeRoleRequest assumeRoleRequest AssumeRoleRequest builder roleSessio
  • 限制 JPQL 中的结果数量

    如何限制从数据库检索结果的数量 select e from Entity e I need only 10 results for instance 您可以尝试像这样给出 10 个要显式获取的结果 entityManager createQ
  • Java - toString 到 Color

    我一整天都在努力解决这个问题 基本上我做了一个 for 循环 将条目添加到数组列表中 其中一项是 颜色 变量 我已经用过random nextInt为颜色构造函数的红色 绿色和蓝色部分创建新值 我还设置了一个toString方法 这样我就可
  • 如何修复maven错误JAVA_HOME环境变量未正确定义

    当我在虚拟环境中检查maven的版本时 出现以下错误 The JAVA HOME environment variable is not defined correctly This environment variable is need
  • 如何从 Java 中“double”类型的值中删除小数值

    我正在调用一个名为 calculateStampDuty 的方法 它将返回 财产需缴纳的印花税金额 百分比计算有效 很好 并返回正确的值 15000 0 但是 我想显示该值 前端用户只是 15000 所以只想删除小数点和任何前面的值 此后
  • 欧拉项目 45

    我还不是一名熟练的程序员 但我认为这是一个有趣的问题 我想我应该尝试一下 三角形 五边形 六边形 数字由以下生成 公式 三角形 T n n n 1 2 1 3 6 10 15 五边形 P n n 3n 1 2 1 5 12 22 35 六角
  • 生产者程序中的 kafka 网络处理器错误(ArrayIndexOutOfBoundsException:18)

    我有下面的 kafka Producer Api 程序 我对 kafka 本身是新手 下面的代码从 API 之一获取数据并将消息发送到 kafka 主题 package kafka Demo import java util Propert
  • Java8 项目上的 SonarQube 给出 jacoco-Exception

    我刚刚下载了最新版本 SonarQube 4 3 然后尝试使用以下命令构建 java 8 项目 mvn clean install mvn sonar sonar 这给了我下面的例外 谷歌搜索 我的印象是这是一个早期的问题 应该已经解决 h
  • Java:java.util.Preferences 失败

    我的程序将加密的产品密钥数据保存到计算机上java util Preferences类 系统首选项 而不是用户 问题是 在 Windows 和 Linux 上 尚未在 OSX 上测试过 但可能是相同的 如果我不运行该程序sudo或者具有管理
  • 用于安装 R 软件包的备用编译器:clang:错误:不支持的选项“-fopenmp”

    我正在尝试在 OS X 10 11 6 上使用 R 版本 3 4 0 安装 rJava 包 install packages rJava type source 我收到以下错误 clang o libjri jnilib Rengine o
  • 如何在启用嵌入时间戳和 LTV 的情况下签署 PDF?

    我正在尝试签署启用了时间戳和 LTV 的 pdf 以便它在 Adob e Reader 中显示如下 在英语中 这意味着 签名包含嵌入的时间戳 和 签名启用了 LTV 这是我正在使用的代码 PrivateKey pk get pk from
  • 从特定 JAR 文件读取资源(文件的重复路径)

    假设您有 jar1 和artifactId 动物园 jar2 和artifactId 动物 两个 jar 都有一个具有相同路径的资源文件 例如 animals animal txt 有什么方法可以从特定的 jar 中读取该文件吗 使用 ge
  • 测量 tomcat 的排队请求数

    因此 使用tomcat 您可以设置acceptCount值 默认为100 这意味着当所有工作线程都忙时 新连接被放置在队列中 直到队列满 之后它们被拒绝 我想要的是监视此队列中项目的大小 但无法确定是否有办法通过 JMX 获取此值 即不是队
  • 内部类的访问修饰符[重复]

    这个问题在这里已经有答案了 可能的重复 受保护 公共内部类 https stackoverflow com questions 595179 protected public inner classes 我确信这个问题已经被问过 但我找不到
  • Javac 版本 1.7 无法为目标 1.7 构建

    我试图在 Linux Mint 系统上使用 Sun Java JDK 1 7 0 17 编译 Java 代码 但遇到了这个问题 javac version target 1 7 javac 1 7 0 17 javac invalid ta

随机推荐

  • Linux 中的 itoa 函数在哪里?

    itoa 是将数字转换为字符串的非常方便的函数 Linux下好像没有itoa 是否有等效的功能或者我必须使用sprintf str d num 编辑 抱歉 我应该记得这台机器绝对是非标准的 已经插入了各种非标准libc用于学术目的的实现 A
  • 从 pandas 数据框中删除句子长于特定单词长度的行

    我想从 pandas 数据框中删除行 其中包含特定列中长度大于所需长度的字符串 例如 输入帧 X Y 0 Hi how are you 1 An apple 2 glass of water 3 I like to watch movie
  • python正则表达式重复与捕获问题

    使用python3的正则表达式功能 是否可以根据找到的重复次数来捕获可变数量的捕获块 例如 在以下搜索字符串中 我想使用相同的正则表达式捕获所有数字字符串 搜索字符串 1 尝试捕获 89 45 zzz89zzz45 mp3 搜索字符串 2
  • 列名必须是字符串或数组 yii

    我在访问 yii 的网络应用程序时遇到了一些困难 我的配置与所有者的设置相同 但是当我尝试访问时 出现错误 列必须是字符串或数组 我该如何解决它 提前致谢 报告错误消息时 获得准确的错误消息会很有帮助 实际的错误消息是 列name必须是字符
  • 允许在 Mac OS X 应用程序中读取文件的权利是什么? (拒绝文件读取数据错误)

    我正在制作一个 Mac OS X 应用程序 沙盒 它从 etc myfolder 中安装的配置文件读取 当我尝试使用 NSFileHandle 读取文件时 我在控制台中收到以下错误 sandboxd 3251 MyApp 3251 deny
  • 文件上传到文件流

    我正在将文件与 HttpWebRequest 一起发送 我的文件将来自 FileUpload UI 这里我需要将文件上传转换为文件流 以将流与 HttpWebRequest 一起发送 如何将 FileUpload 转换为文件流 由于 Fil
  • 以编程方式获取完整的 Ruby 版本?

    我知道可以通过以下方式获取 Ruby 版本 例如 1 9 3 RUBY VERSION持续的 但是 我想知道如何确定确切的版本 例如 1 9 3 p0 原因是 Ruby 1 9 3 的早期版本中存在一个未修复的错误 该错误在更高版本中起作用
  • 移动赋值运算符和移动构造函数之间的区别?

    一段时间以来 这一直让我感到困惑 而且到目前为止我还没有找到满意的答案 问题很简单 什么时候有一个move assignment operator接到电话 什么时候move constructor operator接到电话吗 cpprefe
  • 通过flask/python在html中显示从couchDB附加的图像

    我正在使用 Flask 和 python 从 couchdb 获取图像附件 然后将图像传递到 imgurl html 进行显示 问题是我只得到这个 返回 0x103b9c0b8 gt 处的 couchdb http ResponseBody
  • 跨线程操作无效:从创建它的线程以外的线程访问控制“textBox1”[重复]

    这个问题在这里已经有答案了 我想使用 UART 将温度值从微控制器发送到 C 接口并显示温度Label Content 这是我的微控制器代码 while 1 key scan get value of temp if Usart Data
  • 具有多个按钮和多个视频的 Listactivity

    我有一个 listactivity 应用程序 由 5 行组成 每行包含一个文本和 5 个按钮 文本和按钮都是可单击的 文本将打开 MyDay 活动 即文本视图 当您单击任何按钮时 它必须打开视频视图屏幕 其工作正常 如下图所示 但我的问题是
  • jQuery.each() 如何处理关联数组(对象)?

    我有一个关联数组 里面有两个对象 运行这个 myassoc each 回调仅运行一次 回调参数 索引和对象 也分别返回 0 和整个关联数组 人们会期望jQuery each 对数组中的每个元素运行 返回正确的键作为索引 返回正确的元素作为对
  • 替换 PhotoSwipe 库中的图像

    我有一个照片滑动 http www photoswipe com 我的页面上的画廊是这样以编程方式创建的 var instance window Code PhotoSwipe attach image options 现在我想更新图库中的
  • 在 Django 单元测试中使用会话对象

    我正在编写一个登录视图 并想为该视图添加单元测试 我的观点是这样的 def login request if request POST usrname request POST get username password request P
  • NLog - 删除超过 X 天的日志

    如何删除日志早于 X 天的文件 这很简单 但我在一个文件夹中只记录一天的日志 我的 NLog config 如下所示
  • Gnuplot 列堆叠直方图 - 行/行计数

    我有一个数据文件 其中包含未定义数量的条目 如下所示 A B C D E 1 0 2 5 4 7 4 3 4 1 8 7 4 0 7 1 1 第一行代表工作时间 然后以交替的方式暂停等等 为了可视化这一点 我通过定义两种具有不同颜色的线条样
  • 打印 char 的十进制值

    打印字符的十进制值的程序 include
  • Microsoft.Azure.NotificationHubs 1.0.9 是否与 .NET Core 2.0 兼容?

    我们将NotificationHubs 1 0 9 版与 NetCore 2 0 和 Net Framework 4 7 结合使用 在编译时 我们收到此警告 包 Microsoft Azure NOtificationHubs 1 0 9
  • 在角度4中为不同页面设置不同布局的最佳方法

    我是 Angular 4 的新手 我想要实现的是为应用程序中的不同页面设置不同的布局页眉和页脚 我有三种不同的情况 登录 注册页面 无页眉 无页脚 路线 登录 注册 营销网站页面 这是根路径 它有页眉和页脚 这些部分大多在登录之前出现 路线
  • Java/Wicket:使用资源编译基本的 Hello World

    我正在关注这个 Hello World Wicket 应用程序的示例 https www ibm com developerworks web library wa aj wicket https www ibm com developer