我的GPathResult可以使用3种方式之一的名称节点
1)名称节点存在并且具有值ex:John
2)名称节点存在,但没有值.
3)根本没有名称节点.
在Groovy代码中,我如何使用我的Gpathresult区分上述3个案例.我是否使用像gPathResult这样的东西.value()!= null?
Pesudo代码:
if(name node is present and has a value){
do this
}
if(name node exists, but has no value in it){
do this
}
if( No name node exists at all){
do this
}
Run Code Online (Sandbox Code Playgroud) 我有多个webapps部署在tomcast服务器上.
在我的一个webapp的log4j.properties中,我添加了以下Socket HUB appender,以便将日志发送到该套接字.
log4j.appender.SOCKET=org.apache.log4j.net.SocketHubAppender
log4j.appender.SOCKET.port=9999
log4j.appender.SOCKET.locationInfo=true
Run Code Online (Sandbox Code Playgroud)
一切都得到了很好的部署.
我的第二个应用程序的log4j.properties也有相同的appender.
log4j.appender.SOCKET=org.apache.log4j.net.SocketHubAppender
log4j.appender.SOCKET.port=9999
log4j.appender.SOCKET.locationInfo=true
Run Code Online (Sandbox Code Playgroud)
现在,如果我尝试将第二个Web应用程序添加到已包含第一个Web应用程序的tomcat服务器,它会在日志中抛出"已在使用中的端口"错误.
但是,如果我将第二个应用程序的端口更改为9998,则日志中不会显示任何错误.Afaik,这里提到的端口是reciver的端口,因此如果多个应用程序使用相同的reciver端口,它应该不会有问题.
或者我应该在Tomcat的log4j.properties中配置此appender,而不是在其中部署的每个应用程序中配置.
高兴谢谢
当我需要异步写入activemq中的队列时,我有一个要求.我正在使用Spring Jms来做到这一点.这是我的spring上下文文件中的连线
<bean id="amqProducerConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="${activemq.broker}"/>
</bean>
<bean id="pooledProducerConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory" destroy-method="stop" lazy-init="true">
<property name="connectionFactory" ref="amqProducerConnectionFactory" />
</bean>
<bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
<property name="connectionFactory" ref="pooledProducerConnectionFactory" />
</bean>
Run Code Online (Sandbox Code Playgroud)
在我的代码中...我做..
void sendMessage(JmsTemplate jmsTemplate, String message, String requestQueue) {
def messageCreator = { session ->
session.createTextMessage(message)
} as MessageCreator
jmsTemplate.send(requestQueue, messageCreator)
}
Run Code Online (Sandbox Code Playgroud)
但上述似乎同步工作,而不是异步.有什么,我需要在这里,使过程异步(我的意思是添加,应用"A"写入到一个队列.它应该写入队列忘记,不要等到应用程序"B"从队列中拾起,处理它.)
我有一个要求,在包含字段的请求中,我的其余web服务进入.
在我的web服务中,我必须检查此字段,如果验证通过,则我将请求发送给第三方服务.
验证要求:
message_from字段包含email addressas string.我必须检查domain name(之后的所有内容@)是否是roin.com
例如:abc@roin.com传球,john_mandoza@roin.com传球,john_manodza@google.com失败......
我可以使用模式匹配器或其他任何方法进行此验证吗?
我已经使用字符串解析来捕获所有内容(@),然后equalsIgnoreCase进行比较roin.com
这种字符串解析方法有效,但还有更好的方法吗?
java ×4
asynchronous ×1
gpath ×1
groovy ×1
java-ee ×1
javascript ×1
log4j ×1
logging ×1
regex ×1
spring ×1
spring-jms ×1
string ×1
tomcat ×1
xml ×1
xpath ×1