如何从CQ5中的Java类调用/ bin / wcmcommand servlet类

时间:2015-08-19 10:18:37

标签: java servlets httpclient cq5 wcm

如何从Java Class中调用已经内置的“/ bin / wcmcommand”servlet。 HTTPClient和URL连接我无法对此servlet进行POST调用的方式。我收到错误代码:500。

2 个答案:

答案 0 :(得分:1)

不确定你的意思是什么?#34; servlet里面已经开箱即用了CQ5 Jar" 。 我从你的问题中理解的是,你想从Java类调用(HTTP GET/POST)一个servlet(而不是来自JSP!)。

我假设它是一个Sling Servlet并且已经注册了路径/资源类型或任何其他valid way of registering a servlet.

如果注册了" path" ,您可以通过多种方式触发HTTP请求。

<强>参考文献:

Using java.net.URLConnection to fire and handle HTTP requests

calling a servlet from a java class

答案 1 :(得分:1)

此OOTB Sling servlet仅接受吊索请求对象。所以不能像普通的servlet一样直接在java类中使用HTTPClient调用。 但是我的问题通过servlet通信解决了。我已经将调用类从java类更改为Sling servlet类,然后我使用这样的servlet通信进行通信。

SlingServletRequestWrapper

我想多次使用不同的值调用此servlet。 所以我使用request.getParameter()类来修改每个调用的{{1}}值。