0
我正在使用http://www.cqblueprints.com/xwiki/bin/view/Blue+Prints/Writing+A+JSP+Custom+Tag+Library創建自定義標記庫,以從我的自定義組件中生成XSS驗證鏈接。我已經把它帶到了一個標籤,因爲我需要做其他工作,並避免在JSP文件上編寫scriptlet(我已經在最後發佈了代碼)。如何從定製jsp Java類訪問XSSAPI?
我想從我的Java類使用XSSAPI,但看着javadoc for XSSAPI我看到它是一個接口;當在JSP文件中使用它時,它是一個初始化的對象,調用<cq:defineObjects/>
。
有沒有人有關於如何做到這一點的任何想法? XSSAPI類中有一個名爲getRequestSpecificAPI(slingRequest)
的方法,但它不是靜態的,我現在已經用完了想法。
@JspTag
public class FixInternalLinkTag extends CqSimpleTagSupport {
private String pathToPage;
@Override
public void doTag() throws JspException, IOException {
XSSAPI xssAPI; // ToDo how to get a reference to this?
urlPointingToPage = xssAPI.getValidHref(urlPointingToPage);
getJspWriter().write(urlPointingToPage);
}
public String getPathToPage() {
return pathToPage;
}
@JspTagAttribute(required = true, rtexprvalue = true)
public void setPathToPage(String pathToPage) {
this.pathToPage = pathToPage;
}
}
謝謝,這工作。我對CQ還是有點新意的,需要做很多關於服務和OSGI的閱讀! – blanquish 2013-03-19 00:08:30