AbstractMethodError выбрасывается при вызове createResourceURL для RenderResponse - PullRequest
0 голосов
/ 25 ноября 2011

Я бы хотел вызвать метод createResourceURL () на моем RenderResponse .

К сожалению, когда я это делаю, я получаю следующее исключение:

Caused by:
   java.lang.AbstractMethodError:
   org.jboss.portletbridge.BufferedRenderResponseWrapper.createResourceURL()Ljavax/portlet/ResourceURL;

Разве в среде моста портлета невозможно записать URL ресурса?!

Ответы [ 2 ]

0 голосов
/ 25 ноября 2011

Кажется, что используемая вами версия моста портлета поддерживает только портлет 1.0 api, в то время как метод createResourceURL был представлен в версии 2.0 спецификации портлета. JBoss Portal 2.7 должен поддерживать более новую версию, было бы странно, если бы он включал мост, который поддерживает только более старую версию.

Можете ли вы проверить, какую версию вы используете? В комплекте должна быть версия deploy/jboss-portal.sar/lib/portal-portlet-bridge-lib.jar, но, возможно, вы развертываете свою собственную версию вместе со своим приложением.

0 голосов
/ 25 ноября 2011

В моем JSF-портлете (использующем Jboss portletbridge 2.1.0) в bean-компонентах, которые я использую, без проблем:


    FacesContext fctx = FacesContext.getCurrentInstance();
    Object obj = fctx.getExternalContext().getResponse();       
    RenderResponse rresponse = (RenderResponse) obj;
    ResourceURL resourceURL = rresponse.createResourceURL();
    resourceURL.setResourceID(id);

Вы уверены, что получили правильный объект RenderResponse?

...