在实现NexusIndexHTMLCustomizer的类内获取HttpServletRequest对象

在实现NexusIndexHTMLCustomizer的类内获取HttpServletRequest对象,nexus,Nexus,我有这样的要求 1) 在现有nexus oss最上面的面板上附加一个iframe,并添加url iframe的源必须使用url参数生成 作为查询参数输入。因此,我创建了一个java类来生成 提供HttpServeletRequest对象时的源url。一旦我拿到了 url我可以将其分配给一个变量并替换javascript中的源url 所以我计划做的是 public class CtfButtonBar implements NexusIndexHtmlCustomizer { . . . @

我有这样的要求

1) 在现有nexus oss最上面的面板上附加一个iframe,并添加url iframe的源必须使用url参数生成 作为查询参数输入。因此,我创建了一个java类来生成 提供HttpServeletRequest对象时的源url。一旦我拿到了 url我可以将其分配给一个变量并替换javascript中的源url

所以我计划做的是

public class CtfButtonBar implements NexusIndexHtmlCustomizer {

.
.
.
 @ Override
    public String getPostBodyContribution( Map<String, Object> context )
    {

        return "<script>jQuery(window).load(function () 
{jQuery('body').find('div:first').prepend('<iframe id=\"myframe\" src=\" " 

+  source url + 

"" >  </iframe>')});</script>";
    }
公共类CtfButtonBar实现NexusIndexHtmlCustomizer{
.
.
.
@凌驾
公共字符串getPostBodyContribution(映射上下文)
{
return“jQuery(window).load(function()
{jQuery('body').find('div:first').prepend('''');
}
在上面的“source url”变量中,它将是 iframe需要从HttpServeletRequest对象生成 基本上我需要这个类中的HttpServeletRequest对象。有吗
在这个类CtfButtonBar中有什么方法可以得到这个对象吗?

我为您和开发人员谈过,并得到了一些解决方案。以下是建议

final Request current = Request.getCurrent();
final Reference ref = current.getRootRef() or current.getResourceRef() 
这使用Restlet,因为NexusUI是通过Restlet呈现的,所以它应该可以工作——至少只要NexusUI使用Restlet就可以

您的插件应该依赖于nexus-Restle1x-plugin,其版本与您使用的nexus版本相同。可通过Central上的


如前所述,您可以在上述方法中使用该代码,从而访问该请求。

我对此表示怀疑。我建议直接在hipchat频道上与开发人员聊天,该频道链接自《非常感谢您为帮助我所做的努力》。但我如何在CtfButtonBar类中使用此功能(实现NexusIndexHtmlCustomizer的类)?。请告诉我这一点。