﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-走自己的路-随笔分类-JDBC JNDI JMS RMI EJB and Other J2EE Tech </title><link>http://www.blogjava.net/ldd600/category/32135.html</link><description>路漫漫其修远兮，吾将上下而求索</description><language>zh-cn</language><lastBuildDate>Sat, 16 Jan 2010 21:33:59 GMT</lastBuildDate><pubDate>Sat, 16 Jan 2010 21:33:59 GMT</pubDate><ttl>60</ttl><item><title>在JavaMail的基础上构建自己的Email Channel(1):基础知识</title><link>http://www.blogjava.net/ldd600/archive/2010/01/16/309768.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Sat, 16 Jan 2010 04:33:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2010/01/16/309768.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/309768.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2010/01/16/309768.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/309768.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/309768.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 最近在javamail的基础上，写了一个Email channel，把相关知识总结一下。&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2010/01/16/309768.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/309768.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2010-01-16 12:33 <a href="http://www.blogjava.net/ldd600/archive/2010/01/16/309768.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>OC4J升级Oracle JDBC driver版本</title><link>http://www.blogjava.net/ldd600/archive/2010/01/15/309679.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Fri, 15 Jan 2010 05:17:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2010/01/15/309679.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/309679.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2010/01/15/309679.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/309679.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/309679.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: OC4J1033升级Oracle JDBC driver到11.1.0.7.0版本&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2010/01/15/309679.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/309679.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2010-01-15 13:17 <a href="http://www.blogjava.net/ldd600/archive/2010/01/15/309679.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java端RESTful web services的几种实现方式</title><link>http://www.blogjava.net/ldd600/archive/2009/08/13/291018.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Thu, 13 Aug 2009 07:27:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2009/08/13/291018.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/291018.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2009/08/13/291018.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/291018.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/291018.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: java端RESTful web services的几种实现方式&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2009/08/13/291018.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/291018.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2009-08-13 15:27 <a href="http://www.blogjava.net/ldd600/archive/2009/08/13/291018.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>RESTful vs SOAPy</title><link>http://www.blogjava.net/ldd600/archive/2009/07/31/289209.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Fri, 31 Jul 2009 00:40:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2009/07/31/289209.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/289209.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2009/07/31/289209.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/289209.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/289209.html</trackback:ping><description><![CDATA[&nbsp;
<p><strong><span style="font-size: 10pt; font-family: Arial">Rest and Restful web services</span></strong></p>
<p><span style="font-size: 10pt; font-family: Arial">There are currently two schools of thought in developing web services: the traditional, standards-based approach (SOAP) and conceptually simpler and the trendier new kid on the block (REST). The origin of the term "REST" comes from the famous thesis from Roy Fielding describing the concept of Representative State Transfer (REST). REST is an architectural style that can be summed up as four verbs (GET, POST, PUT, and DELETE from HTTP 1.1) and the nouns, which are the resources available on the network (referenced in the URI). The verbs have the following operational equivalents:</span></p>
<p><span style="font-size: 10pt; font-family: Arial">HTTP&nbsp;&nbsp;&nbsp;&nbsp; CRUD Equivalent</span></p>
<p><span style="font-size: 10pt; font-family: Arial">==============================</span></p>
<p><span style="font-size: 10pt; font-family: Arial">GET&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; read</span></p>
<p><span style="font-size: 10pt; font-family: Arial">POST&nbsp;&nbsp;&nbsp;&nbsp; create,update,delete</span></p>
<p><span style="font-size: 10pt; font-family: Arial">PUT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; create,update</span></p>
<p><span style="font-size: 10pt; font-family: Arial">DELETE&nbsp;&nbsp; delete</span></p>
<p><span style="font-size: 10pt; font-family: Arial">The emergence of the RESTful style of web services was a reaction to the more heavy-weight SOAP-based standards. In RESTful web services, the emphasis is on simple point-to-point communication over HTTP using plain old XML (POX) or JSON. </span></p>
<p><span style="font-size: 10pt; font-family: Arial">Java API for RESTful Web Services specification is in final state, JAX-RS is an annotation-based API for implementing RESTful web services, based on HTTP. In addition to the Sun-provided reference implementation, Jersey, other implementations are available (in various stages of completion): as part of the popular Restlet framework, the JBoss RESTeasy project , and as part of the Apache CXF web services stack.</span></p>
<p><strong><span style="font-size: 10pt; font-family: Arial">Rest vs SOAP:</span></strong></p>
<p><span style="font-size: 10pt; font-family: Arial">Representation</span></p>
<p><span style="font-size: 10pt; font-family: Arial">A REST-style web service might be every bit as subtle and complicated as a SOAP-based service. The RESTful approach tries to simplify matters by taking what HTTP, with its MIME type system, already offers: built-in CRUD operations, uniformly identifiable resources, and typed representations that can capture a resource's state. The key to the REST methodology is to write Web services using a representation that is already well known and widely used: the URI. </span></p>
<p><span style="font-size: 10pt; font-family: Arial">Complexity</span></p>
<p><span style="font-size: 10pt; font-family: Arial">REST as a design philosophy tries to isolate application complexity at the endpoints, that is, at the client and at the service. A service may require lots of logic and computation to maintain resources and to generate adequate representation of resources—for instance, large and subtly formatted XML documents—and a client may require significant XML processing to extract the desired information from the XML representations transferred from the service to the client. </span></p>
<p><span style="font-size: 10pt; font-family: Arial">Bandwidth</span></p>
<p><span style="font-size: 10pt; font-family: Arial">RESTful approach keeps the complexity out of the transport level, as a resource representation is transferred to the client as the body of an HTTP response message. By contrast, a SOAP-based service inevitably complicates the transport level because a SOAP message is encapsulated as the body of a transport message; for instance, an HTTP or SMTP message. SOAP requires messages within messages, whereas REST does not. </span></p>
<p><span style="font-size: 10pt; font-family: Arial">Performance</span></p>
<p><span style="font-size: 10pt; font-family: Arial">SOAP uses XML generally bloats your messages quite a bit. </span></p>
<p><span style="font-size: 10pt; font-family: Arial">Something like POX or JSON would be more compact and maybe faster to serialize / deserialize.</span></p>
<p><span style="font-size: 10pt; font-family: Arial">Payloads of SOAP are significantly larger which are slower to assemble, transport, parse, validate and process.</span></p>
<p><span style="font-size: 10pt; font-family: Arial">Security</span></p>
<p><span style="font-size: 10pt; font-family: Arial">A typical SOAP request will use POST to communicate with a given service. And without looking into the SOAP envelope, there's no way to know whether that request simply wants to query data or delete entire tables from the database</span></p>
<p><span style="font-size: 10pt; color: black; font-family: Arial">As for authentication and authorization, SOAP places the burden in the hands of the application developer. The REST methodology instead takes into account the fact that Web servers already have support for these tasks. </span></p>
<p><span style="font-size: 10pt; font-family: Arial">Domain Design</span></p>
<p><span style="font-size: 10pt; font-family: Arial">SOAP services defined in Web Services Description Language (WSDL) emphasize contracts and actions. In contrast, REST focuses on direct addressing and manipulation of resources, which is more compatible with the domain-driven approach.</span></p>
<p><span style="font-size: 10pt; font-family: Arial">Defects</span></p>
<p style="margin-left: 21pt; text-indent: -21pt; tab-stops: list 21.0pt"><span style="font-size: 6.5pt; font-family: Wingdings">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 10pt; font-family: Arial">There is less definition of interface, especially the method interface</span></p>
<p style="margin-left: 21pt; text-indent: -21pt; tab-stops: list 21.0pt"><span style="font-size: 6.5pt; font-family: Wingdings">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 10pt; font-family: Arial">Hard to make strongly typed objects to work with it in server side code &nbsp;</span></p>
<p style="margin-left: 21pt; text-indent: -21pt; tab-stops: list 21.0pt"><span style="font-size: 6.5pt; font-family: Wingdings">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 10pt; font-family: Arial">Only works over HTTP, but SOAP can work on HTTP, FTP, MIME, JMS, SMTP and etc</span></p>
<p style="margin-left: 21pt; text-indent: -21pt; tab-stops: list 21.0pt"><span style="font-size: 6.5pt; font-family: Wingdings">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 10pt; font-family: Arial">Calls to REST are restricted by HTTP Verbs (GET, POST, PUT, DELETE.. etc)</span></p>
<p style="margin-left: 21pt; text-indent: -21pt; tab-stops: list 21.0pt"><span style="font-size: 6.5pt; font-family: Wingdings">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 10pt; font-family: Arial">No automatic xml schema validation</span></p>
<p style="margin-left: 21pt; text-indent: -21pt; tab-stops: list 21.0pt"><span style="font-size: 6.5pt; font-family: Wingdings">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 10pt; font-family: Arial">Less SOA-style than SOAP</span></p>
<p style="margin-left: 21pt; text-indent: -21pt; tab-stops: list 21.0pt"><span style="font-size: 6.5pt; font-family: Wingdings">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 10pt; font-family: Arial">Developer has less control on security than SOAP, SOAP has ws-*(ws-security, ws-trust, ws-policy and etc), SAML, XACML and etc</span></p>
<p style="margin-left: 21pt; text-indent: -21pt; tab-stops: list 21.0pt"><span style="font-size: 6.5pt; font-family: Wingdings">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 10pt; font-family: Arial">Routing is network-controlled, but SOAP can make client to control routing explicitly through SOAP headers, WS-Addressing and etc</span></p>
<p><strong><span style="font-size: 10pt; font-family: Arial">Implementation</span></strong></p>
<p><span style="font-size: 10pt; font-family: Arial">How to implement Restful web services, there are three kinds of methods recently:</span></p>
<ul style="margin-top: 0in" type="disc">
    <li style="tab-stops: list .5in"><span style="font-size: 10pt; font-family: Arial">Make use of provider and dispatch twins of SOAP-based web service</span>
    <li style="tab-stops: list .5in"><span style="font-size: 10pt; font-family: Arial">Implement Restful HTTPServlets</span>
    <li style="tab-stops: list .5in"><span style="font-size: 10pt; font-family: Arial">JAX-RS, annotation-based implementation</span> </li>
</ul>
<img src ="http://www.blogjava.net/ldd600/aggbug/289209.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2009-07-31 08:40 <a href="http://www.blogjava.net/ldd600/archive/2009/07/31/289209.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>RMI使用的注意点</title><link>http://www.blogjava.net/ldd600/archive/2009/05/05/268994.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Tue, 05 May 2009 07:29:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2009/05/05/268994.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/268994.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2009/05/05/268994.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/268994.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/268994.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 前两天application team使用framework的rmi服务出了一些问题，总结一下，顺便俺也占个坑，以后RMI使用中需要注意的地方都可以加到此帖中。&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2009/05/05/268994.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/268994.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2009-05-05 15:29 <a href="http://www.blogjava.net/ldd600/archive/2009/05/05/268994.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>通用RPC简易框架</title><link>http://www.blogjava.net/ldd600/archive/2009/04/04/263927.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Sat, 04 Apr 2009 12:57:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2009/04/04/263927.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/263927.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2009/04/04/263927.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/263927.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/263927.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 我们经常需要进行远程业务方法的调用，并对返回的结果进行处理。我们规范化了调用流程，可扩展支持多种协议：HTTP, JMS, RMI, FTP等，实现了序列化和反序列化，负载均衡，异步调用等模块。默认给出HTTP实现。&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2009/04/04/263927.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/263927.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2009-04-04 20:57 <a href="http://www.blogjava.net/ldd600/archive/2009/04/04/263927.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JAXB vs XStream</title><link>http://www.blogjava.net/ldd600/archive/2009/03/04/257832.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Wed, 04 Mar 2009 09:15:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2009/03/04/257832.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/257832.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2009/03/04/257832.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/257832.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/257832.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: XStream和JAXB这两东东本质上是有差别的，JAXB称为OX binding工具，XStream应该算序列化工具，但OX binding工具也会marshall和unmarshall，则包含了序列化部分。序列化工具不一定需要提供binding的功能。既然都玩序列化，那就简单地比较一下它们两在序列化方面的强弱吧。&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2009/03/04/257832.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/257832.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2009-03-04 17:15 <a href="http://www.blogjava.net/ldd600/archive/2009/03/04/257832.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>对比XStream和JSON</title><link>http://www.blogjava.net/ldd600/archive/2009/01/20/252089.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Tue, 20 Jan 2009 09:43:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2009/01/20/252089.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/252089.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2009/01/20/252089.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/252089.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/252089.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 对json(json lib,  jettison)和xstream转换后的数据长度，格式和花费的时间做了比较，描述了使用json和xstream的各自的优势，以及如何如何选择。&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2009/01/20/252089.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/252089.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2009-01-20 17:43 <a href="http://www.blogjava.net/ldd600/archive/2009/01/20/252089.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle应用服务器单个Container多Process(jvm)环境下，用Ormi和jms实现toplink会话缓存同步</title><link>http://www.blogjava.net/ldd600/archive/2008/12/09/245302.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Tue, 09 Dec 2008 10:00:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2008/12/09/245302.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/245302.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2008/12/09/245302.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/245302.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/245302.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在Oracle Application Server环境下OC4J Instance下的每个process的jvm的rmi端口是动态分配的，如果能解决这个动态的问题，就可以使用ORMI作为jndi的provider url。但是需要注意的是如果是在server启动时初始化toplink session，需要等待JmsServer线程执行完毕。&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2008/12/09/245302.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/245302.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2008-12-09 18:00 <a href="http://www.blogjava.net/ldd600/archive/2008/12/09/245302.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oc4j+toplink+spring使用jta外部事务的一点心得</title><link>http://www.blogjava.net/ldd600/archive/2008/11/14/240607.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Fri, 14 Nov 2008 13:48:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2008/11/14/240607.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/240607.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2008/11/14/240607.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/240607.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/240607.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 晚上要下班的时候，application team那里使用Tibco EMS做消息集成服务时候出了bug，错误是：java.sql.SQLException: 当全局事务处理处于活动状态时, 无法调用方法 'commit'，应该是在全局事务中使用了本地事务并提交了。帮忙看了一下，它的oc4j, toplink, spring的使用上都存在着一些问题，并把要注意的地方总结了一下。包括oc4j，toplink，spring三块。&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2008/11/14/240607.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/240607.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2008-11-14 21:48 <a href="http://www.blogjava.net/ldd600/archive/2008/11/14/240607.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何在JAVA端使Oracle存储过程串行地执行</title><link>http://www.blogjava.net/ldd600/archive/2008/08/25/224148.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Mon, 25 Aug 2008 06:12:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2008/08/25/224148.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/224148.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2008/08/25/224148.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/224148.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/224148.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在java端调用存储过程的时候需要存储过程串行的执行，如果使用synchronized lock在应用服务器突然down掉的情况下会出现问题，因为session并没有立即断掉，后台的存储过程还在继续执行，这样如果应用服务器立即重启，再调用该存储过程或者其他需要一起串行化处理的存储过程就会违反同步执行的原则，所以我们必须把锁放在oracle db端，利用oracle锁机制来完成存储过程的同步，文章总结了一下在java端如何使用oracle这个用户锁机制。&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2008/08/25/224148.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/224148.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2008-08-25 14:12 <a href="http://www.blogjava.net/ldd600/archive/2008/08/25/224148.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java中的Connection Pool</title><link>http://www.blogjava.net/ldd600/archive/2008/07/14/214755.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Mon, 14 Jul 2008 08:30:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2008/07/14/214755.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/214755.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2008/07/14/214755.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/214755.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/214755.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 总结了一下java中使用到Connection Pool的一些情况，并想了一下如何实现特定种类的Connection Pool。&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2008/07/14/214755.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/214755.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2008-07-14 16:30 <a href="http://www.blogjava.net/ldd600/archive/2008/07/14/214755.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>