我想要做的事情应该是非常直接的,但迄今为止是不可能的。有人能告诉我如何从暴露的RESTeasy接口访问@Local Session Bean吗?我拖网的长度和宽度,我可以找到的所有我能找到的是相同的示例从暴露的RESTeasy接口访问@本地会话Bean
我想了解如何以常规方式使用RESTeasy访问会话bean。这就是事情的样子至今:
使用:
EJB 3
RestEasy的2.1
出版EJB接口:
@Local
@Path("RequestReport")
public interface EReport {
@GET
@Produces({"application/xml"})
@Path("request")
public String requestReport(@QueryParam("reportId") @DefaultValue("") String reportId,
@QueryParam("reportName") @DefaultValue("") String reportName,
@QueryParam("reportType") @DefaultValue("") String reportType);
}
}
BEAN 1:
@Stateless
public class EReportRequest implements EReport {
@EJB
private ReplyStringLocal replyString; // THIS IS WHERE THE PROBLEM LIES.
public String requestReport(@QueryParam("reportId") @DefaultValue("") String reportId,
@QueryParam("reportName") @DefaultValue("") String reportName,
@QueryParam("reportType") @DefaultValue("") String reportType) {
return replyString.getReply(reportId, reportName, reportType);
}
}
UNPUBLISHED EJB接口:
@Local
public interface ReplyStringLocal {
public String getReply(String reportId, String reportName, String reportType);
}
BEAN 2:
@Stateless
public class ReplyString implements ReplyStringLocal {
public String getReply(String reportId, String reportName, String reportType) {
return "<response><reportId>" + reportId + "</reportId><reportName>" + reportName +
"</reportName><reportType>" + reportType + "</reportType></response>";
}
}
这个例子是展示我的问题的目的,超级简单。预先感谢您的帮助。