Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在RenderResponse上调用createResourceURL时引发AbstractMethodError_Java_Url_Jsf_Jboss_Portlet - Fatal编程技术网

Java 在RenderResponse上调用createResourceURL时引发AbstractMethodError

Java 在RenderResponse上调用createResourceURL时引发AbstractMethodError,java,url,jsf,jboss,portlet,Java,Url,Jsf,Jboss,Portlet,我想在我的计算机上调用该方法 不幸的是,当我这样做时,会引发以下异常: Caused by: java.lang.AbstractMethodError: org.jboss.portletbridge.BufferedRenderResponseWrapper.createResourceURL()Ljavax/portlet/ResourceURL; 在portlet桥接器环境中,难道不可能编写资源URL吗 在我使用的bean中的JSF portlet(使用Jboss port

我想在我的计算机上调用该方法

不幸的是,当我这样做时,会引发以下异常:

Caused by:
   java.lang.AbstractMethodError:
   org.jboss.portletbridge.BufferedRenderResponseWrapper.createResourceURL()Ljavax/portlet/ResourceURL;
在portlet桥接器环境中,难道不可能编写资源URL吗

在我使用的bean中的JSF portlet(使用Jboss portletbridge 2.1.0)中,没有出现问题:

FacesContext fctx = FacesContext.getCurrentInstance(); Object obj = fctx.getExternalContext().getResponse(); RenderResponse rresponse = (RenderResponse) obj; ResourceURL resourceURL = rresponse.createResourceURL(); resourceURL.setResourceID(id); FacesContext fctx=FacesContext.getCurrentInstance(); Object obj=fctx.getExternalContext().getResponse(); RenderResponse rresponse=(RenderResponse)obj; ResourceURL ResourceURL=rresponse.createResourceURL(); resourceURL.setResourceID(id);
您确定获得了正确的RenderResponse对象吗

您正在使用的portlet桥版本似乎只支持portlet 1.0 api,而在portlet规范的2.0版本中引入了
createResourceURL
方法。JBoss Portal 2.7应该支持较新版本,如果它捆绑了一个只支持旧版本的桥,那将很奇怪


你能检查一下你用的是什么版本吗?捆绑版本应该在
deploy/jboss portal.sar/lib/portal portlet bridge lib.jar中,但您可能正在部署自己的版本以及应用程序。

我在1.0.0版中使用了portlet桥,但在2.0版中包含了portlet api。因此出现了问题。