Spring 4.0.2.RELEASE和xfire1.2.6集成后出现一个奇葩问题

最近遇到一个奇葩的问题,我们的后台Dubbo服务已经和Spring 4.0.2.RELEASE版本集成,因为需要和一个第三方服务提供方对接,而对方提供的接口是web Service的,而且使用的框架是xfire。我们的技术对接童鞋,按照对方提供的技术文档进行代码编写,在pom.xml中添加了一段依赖导入相关需要的jar包,配置如下: 12345 <dependency> <groupId>org.codehaus.xfire</groupId> <artifactId>xfire-all</artifactId> <version>1.2.6</version></dependency>然后当代码开发已经写得差不多了,在调试的时候就出现一个奇葩问题,老是报一个错org.xml.sax.SAXParseException; lineNumber: 5; columnNumber: 96; Document root element “beans”, must match DOCTYPE root “null”.

tomcat运行中途自动退出,问题查证

我们的一个tomcat 7运行应用本来在测试环境运行良好,最近突然应用就自动退出停服,有点奇怪,查看了启动(tailf -n 200 catalina.out)日志获得一段有效的日志信息:1234ERROR: transport error 202: bind failed: Address already in useERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:750]FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197) 如何解决呢?我们可以从这段日志下手分析。

jenkins配置一个项目自动部署的步骤实践

Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1、持续的软件版本发布/测试项目。 2、监控外部调用执行的工作。 我们可以用Jenkins来配置一套自动编译发布项目的流程。下面我们以一个简单的例子来说明。主要有以下步骤: 1 新建一个项目credit,选择构建一个Maven项目:

多并发时支付如何保持账户余额的一致性?

  不管是电商,还是O2O业务都会涉及到支付,而且多速情况下流量比较大,尤其是在做活动的时候。一般支付系统主要有充值,扣费,提现,转账等功能,那么在有些业务场景下,尤其是多并发的情况下,我们在做扣费业务操作时该怎样去保持账户余额的一致呢?Java开发人员可能第一个想法就是在调用扣减的DAO的方法上加上一个synchronized关键字,这个解决办法在单节点应用部署是也许能生效管用,但是在我们实际的应用场景中,一般都是集群,多节点部署的应用,这个时候该如何解决呢?

Redis分布式锁Java实现

redis分布式锁可以解决多个应用进程间同步操作的一致性。网上有很多资料并不能完全解决。 1.时间同步问题 2.在一个进程crash后失效时间后自动释放锁 3.有些多线程race condition没有考虑到 Java版本的代码参考如下