我无法让资源路径在Wicket中正常工作。我所做的就是我有两种资源。
/profiles/profiles/{username}/history我将这两种资源装入这些路径的方式如下所示。
mountResource("/profiles", new ResourceReference("profilesResource") {
ProfilesResource resource = new ProfilesResource();
@Override
public IResource getResource() {
return resource;
}
});
mountResource("/profiles/{username}/history", new ResourceReference("profilesHistoryResource") {
ProfilesHistoryResource resource = new ProfilesHistoryResource();
@Override
public IResource getResource() {
return resource;
}
});然而,这是行不通的。一旦我介绍了/profiles/{username}/history资源,事情就会停止工作,当我试图加载/profiles/testuser/history时,我会得到以下错误
没有找到合适的方法。URL 'profiles/testuser/rentalaccesses‘和HTTP方法
我在这里做错什么了?为什么这些映射不起作用?
ProfilesResource
public class ProfilesResource extends GenericRestResource {
@MethodMapping(value = "/{username}", httpMethod = HttpMethod.GET)
public String get(String username) {
return "success";
}ProfilesHistoryResource
public class ProfilesHistoryResource extends GenericRestResource {
@MethodMapping(value = "/", httpMethod = HttpMethod.GET)
public String get(String username) {
return "success";
}
}发布于 2015-10-02 19:35:15
Apache (核心)不支持{placeholder}。它支持${mandatory}和#{optional}。您绝对不能将{..}与WebApplication#mountResource()`一起使用。
WicketStuff RestAnnotations支持@MethodMapping和co。
https://stackoverflow.com/questions/32908891
复制相似问题