Java 如何使用HL7侦听器配置ApacheCamel并部署到MCAT
我一直在考虑使用Tomcat中的Camel将HL7数据从指定端口路由到持久层处理。我真的很难理解如何做到这一点。我将使用作为基本配置示例。骆驼HL7的详细信息如下所示。我真的不明白如何更改uri(或创建适当的web.xml和camel-config-xml文件),以便它侦听MLLP连接,然后路由到适当的处理类。从文档中可以看出,uri是:Java 如何使用HL7侦听器配置ApacheCamel并部署到MCAT,java,tomcat,apache-camel,Java,Tomcat,Apache Camel,我一直在考虑使用Tomcat中的Camel将HL7数据从指定端口路由到持久层处理。我真的很难理解如何做到这一点。我将使用作为基本配置示例。骆驼HL7的详细信息如下所示。我真的不明白如何更改uri(或创建适当的web.xml和camel-config-xml文件),以便它侦听MLLP连接,然后路由到适当的处理类。从文档中可以看出,uri是: mina:tcp://localhost:8888?sync=true&codec=#hl7codec 到目前为止,我有这样一个spring
mina:tcp://localhost:8888?sync=true&codec=#hl7codec
到目前为止,我有这样一个spring-servlet.xml(错误为cvc复杂类型。2.4.c:匹配的通配符是严格的,但找不到元素“camel:camelContext”的声明):
还有一个web.xml,如下所示:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>HL7 Consumer</display-name>
<!-- location of spring xml files -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring-servlet.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>CamelServlet</servlet-name>
<servlet-class>org.apache.camel.component.servlet.CamelHttpTransportServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CamelServlet</servlet-name>
<url-pattern>/camel/*</url-pattern>
</servlet-mapping>
</web-app>
HL7消费者
上下文配置位置
类路径:spring-servlet.xml
org.springframework.web.context.ContextLoaderListener
骆驼队
org.apache.camel.component.servlet.CamelHttpTransportServlet
1.
骆驼队
/骆驼/*
我真的不明白如何配置Camel路由,然后确保传入消息传递给HL7MessageHandler。请参阅本教程,了解如何在web应用程序中使用Apache Camel:
然后,您需要在WAR文件中包含所需的Camel组件及其依赖项,例如WEB-INF/lib中的JAR。我已经检查了您的代码,对我来说似乎没问题,也许您的问题在其他地方 在这里,您可以找到一个关于如何使用camel创建HL7侦听器的教程 该项目是使用camel:run目标开发的,该目标用于在Maven的分叉JVM中运行camel-Spring配置。因此,如果您想在tomcat中运行它,可以添加tomcat maven插件,并使用tomcat:run目标运行它
希望有帮助 谢谢你,克劳斯,我一直都在挣扎。我已经开始做一个基本的配置,但我的学习曲线相当陡峭。我已经编辑了原始问题,但仍然需要一些指导。我想我需要先尝试确定我的基本结构是否正确?你需要一个驼峰路由,例如使用hl7端点的
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>HL7 Consumer</display-name>
<!-- location of spring xml files -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring-servlet.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>CamelServlet</servlet-name>
<servlet-class>org.apache.camel.component.servlet.CamelHttpTransportServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CamelServlet</servlet-name>
<url-pattern>/camel/*</url-pattern>
</servlet-mapping>
</web-app>