2012-02-23 59 views
0

我正在制作一个拦截SOAP消息的PEP服务器,并根据单独数据库中定义的WS-Policies对其进行检查。它在3个compontents被划分:JAR/WAR/EAR中的MessageHandler

1)PEP(策略enforcemenet点)截获一个消息处理程序

2)将其发送到所述邮件 - > PDP(策略决策点)决定哪些消息通过

得到

3)通过使用带有策略的数据库的PIP(策略信息点)。

如果策略是正确的,则会将消息进一步发送到Web服务。现在我想知道如何将这个PEP打包到一个JAR文件中(或WAR/EAR?我是新手,所以我不确定它应该来自哪种类型的包)。 PEP是一个消息处理程序,因此Web服务必须指定@HandlerChain(file =“handler.xml”)

现在是否可以将此PEP包含在xml文件中,如果它包含在jar文件?

+0

您的PEP,PDP和PIP组件是否都是独立的服务器,或者是同一个(PEP)服务器中的不同模块? – Perception 2012-02-24 05:05:22

+0

@Perception他们将作为独立的服务器,每个耳朵文件,但很可能会运行在相同的glassfish应用程序但仍然不应该考虑 – 2012-02-24 19:30:35

回答

0

我推荐使用JAX-WS来创建和调用Java Web服务。

关于创建服务和客户端来调用服务有一个很好的教程。在你的情况下,你会想要在“简单的JAX-WS客户端”部分输入。他们概述了如何使用NetBeans做到这一点,但您可以获得一般想法,然后针对您的特定情况进行修改。

这里的链接教程:我想在您的情况Creating a Simple Web Service and Client with JAX-WS

,你可以只创建一个被打包成一个JAR Java客户端。

+0

这不会工作看到我正在处理的项目需要3个不同的组件。 PEP服务器,PDP和PIP。它们都是3个不同的包,通过SOAP和/或RMI进行通信。要点是,您可以将这些部署在实际Web服务的FRONT中,并使用策略对其进行保护。实际的Web服务和客户端试图调用对我来说没有任何意义。 PEP服务器将成为实际Web服务的消息处理程序 – 2012-02-23 22:29:53

+0

@RoyTeeuwen - “PEP服务器将成为实际Web服务的消息处理程序” - 消息处理程序与Java消息服务(JMS)中的一样? PEP服务器需要进行编程,以便能够处理来自Web服务的消息。这听起来像JMS可能是一个很好的途径,因为消息将被各种组件发送和使用。 – 2012-02-24 13:43:31

+0

否MessageHandler是一个SOAPHandler,它在实际的Web服务前拦截SOAP消息,并且可以在输入实际的Web服务之前读取/修改它们 – 2012-02-24 19:31:55

相关问题