迁移到 wicket 1.5 - 资源(路径)问题
Migration to wicket 1.5 - resource (path) issue
我得到了从 wicket 1.4 迁移到 wicket 1.5 的任务。尽管迁移指南中缺少信息,但我还是能够以某种方式重构大多数问题。不幸的是,我遇到了 "resource" - atm 我收到了这个错误
java.lang.IllegalArgumentException: Argument 'resource' may not be null.
据我所知,有些事情发生了变化,wicket 无法再 "get" 我的资源。所以我曾经(在 wicket 1.4 中)有一段代码负责创建图像并传递它(该方法在扩展网页的 class 中):
private void addImageLogo() {
Resource res = new Resource() {
@Override
public IResourceStream getResourceStream() {
String logo = ConfigurationManager.getInstance().getPathValue(ConfigurationManager.LOGO_FILE_PATH);
return new FileResourceStream(new File(logo));
};
Image logo = new Image("logo", res);
add(logo);
}
现在资源 class 已不存在或找不到。在互联网上搜索时,我能够将其更改为这个
private void addImageLogo() {
String logoTxt = ConfigurationManager.getInstance().getPathValue(ConfigurationManager.LOGO_FILE_PATH);
ResourceReference res = new ResourceReference(logoTxt) {
@Override
public IResource getResource() {
return null;
}
};
Image logo = new Image("logo", res);
add(logo);
}
它负责获取路径(及其工作):ConfigurationManager.getInstance().getPathValue(ConfigurationManager.LOGO_FILE_PATH)
不幸的是,我仍然遇到上面提到的这个错误。方法 getResource()
自动生成,我认为这是一个问题,因为我正在重新调整 null
但我不知道我应该 return.
做什么(或如何)
因为它在 1.4.x 中使用了 IResourceStream,所以你可以只使用 org.apache.wicket.request.resource.ResourceStreamResource 作为图像的 IResource。
您的第一个代码片段不完整,因此我无法为您提供确切的替换代码。
我得到了从 wicket 1.4 迁移到 wicket 1.5 的任务。尽管迁移指南中缺少信息,但我还是能够以某种方式重构大多数问题。不幸的是,我遇到了 "resource" - atm 我收到了这个错误
java.lang.IllegalArgumentException: Argument 'resource' may not be null.
据我所知,有些事情发生了变化,wicket 无法再 "get" 我的资源。所以我曾经(在 wicket 1.4 中)有一段代码负责创建图像并传递它(该方法在扩展网页的 class 中):
private void addImageLogo() {
Resource res = new Resource() {
@Override
public IResourceStream getResourceStream() {
String logo = ConfigurationManager.getInstance().getPathValue(ConfigurationManager.LOGO_FILE_PATH);
return new FileResourceStream(new File(logo));
};
Image logo = new Image("logo", res);
add(logo);
}
现在资源 class 已不存在或找不到。在互联网上搜索时,我能够将其更改为这个
private void addImageLogo() {
String logoTxt = ConfigurationManager.getInstance().getPathValue(ConfigurationManager.LOGO_FILE_PATH);
ResourceReference res = new ResourceReference(logoTxt) {
@Override
public IResource getResource() {
return null;
}
};
Image logo = new Image("logo", res);
add(logo);
}
它负责获取路径(及其工作):ConfigurationManager.getInstance().getPathValue(ConfigurationManager.LOGO_FILE_PATH)
不幸的是,我仍然遇到上面提到的这个错误。方法 getResource()
自动生成,我认为这是一个问题,因为我正在重新调整 null
但我不知道我应该 return.
因为它在 1.4.x 中使用了 IResourceStream,所以你可以只使用 org.apache.wicket.request.resource.ResourceStreamResource 作为图像的 IResource。
您的第一个代码片段不完整,因此我无法为您提供确切的替换代码。