﻿<?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-itstarting:IT进行时-随笔分类-Java Tips</title><link>http://www.blogjava.net/itstarting/category/16182.html</link><description>想自己所想，做自己所爱</description><language>zh-cn</language><lastBuildDate>Thu, 25 Mar 2010 03:17:17 GMT</lastBuildDate><pubDate>Thu, 25 Mar 2010 03:17:17 GMT</pubDate><ttl>60</ttl><item><title>如何在WebLogic 8.1.6环境中查找有连接池泄漏的代码</title><link>http://www.blogjava.net/itstarting/archive/2008/11/13/240196.html</link><dc:creator>IT进行时</dc:creator><author>IT进行时</author><pubDate>Wed, 12 Nov 2008 16:41:00 GMT</pubDate><guid>http://www.blogjava.net/itstarting/archive/2008/11/13/240196.html</guid><wfw:comment>http://www.blogjava.net/itstarting/comments/240196.html</wfw:comment><comments>http://www.blogjava.net/itstarting/archive/2008/11/13/240196.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/itstarting/comments/commentRss/240196.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/itstarting/services/trackbacks/240196.html</trackback:ping><description><![CDATA[<h2><span style="font-family: 黑体">解决连接池泄漏步骤</span></h2>
<p class="MsoNormal" style="text-indent: 21pt; text-align: left" align="left"><span style="font-size: 10pt; font-family: 宋体">登录</span><span lang="EN-US" style="font-size: 10pt; font-family: Verdana">weblogic console,&nbsp; %Domain% -&gt; Services -&gt; JDBC -&gt; Connection Pools -&gt; jdbc/ioa<O:P></O:P></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana">&nbsp;<O:P></O:P></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana">Configuration</span><span style="font-size: 10pt; font-family: 宋体">页</span><span lang="EN-US" style="font-size: 10pt; font-family: Verdana"> -&gt; Connection, </span><span style="font-size: 10pt; font-family: 宋体">点开</span><span lang="EN-US" style="font-size: 10pt; font-family: Verdana">Advanced Options, </span><span style="font-size: 10pt; font-family: 宋体">修改以下配置项状态：</span><span lang="EN-US" style="font-size: 10pt; font-family: Verdana"><O:P></O:P></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial"><O:P>&nbsp;</O:P></span></strong></p>
<table class="MsoTableProfessional" style="border-right: medium none; border-top: medium none; border-left: medium none; width: 428.4pt; border-bottom: medium none; border-collapse: collapse" cellspacing="0" cellpadding="0" width="571" border="1">
    <tbody>
        <tr>
            <td style="border-right: black 1pt solid; padding-right: 5.4pt; border-top: black 1pt solid; padding-left: 5.4pt; background: black; padding-bottom: 0cm; border-left: black 1pt solid; width: 171.3pt; padding-top: 0cm; border-bottom: black 1pt solid; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" width="228">
            <p class="MsoNormal" style="text-align: center" align="center"><strong><span style="font-size: 9.5pt; color: white; font-family: 宋体">配置项名称</span></strong><strong><span lang="EN-US" style="font-size: 9.5pt; color: white; font-family: Arial"><O:P></O:P></span></strong></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: 1pt solid; padding-left: 5.4pt; background: black; padding-bottom: 0cm; border-left: medium none; width: 39.9pt; padding-top: 0cm; border-bottom: 1pt solid; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" width="53">
            <p class="MsoNormal" style="text-align: center" align="center"><strong><span style="font-size: 9.5pt; color: white; font-family: 宋体">默认值</span></strong><strong><span lang="EN-US" style="font-size: 9.5pt; color: white; font-family: Arial"><O:P></O:P></span></strong></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: 1pt solid; padding-left: 5.4pt; background: black; padding-bottom: 0cm; border-left: medium none; width: 39.9pt; padding-top: 0cm; border-bottom: 1pt solid; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" width="53">
            <p class="MsoNormal" style="text-align: center" align="center"><strong><span style="font-size: 9.5pt; color: white; font-family: 宋体">修改为</span></strong><strong><span lang="EN-US" style="font-size: 9.5pt; color: white; font-family: Arial"><O:P></O:P></span></strong></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: 1pt solid; padding-left: 5.4pt; background: black; padding-bottom: 0cm; border-left: medium none; width: 177.3pt; padding-top: 0cm; border-bottom: 1pt solid; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" width="236">
            <p class="MsoNormal" style="text-align: center" align="center"><strong><span style="font-size: 9.5pt; color: white; font-family: 宋体">说明</span></strong><strong><span lang="EN-US" style="font-size: 9.5pt; color: white; font-family: Arial"><O:P></O:P></span></strong></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: 1pt solid; width: 171.3pt; padding-top: 0cm; border-bottom: 1pt solid" width="228">
            <p class="MsoNormal" style="text-align: center" align="center"><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial">Enable Connection Leak Profiling<O:P></O:P></span></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 39.9pt; padding-top: 0cm; border-bottom: 1pt solid" valign="top" width="53">
            <p class="MsoNormal" style="text-align: left" align="left"><span style="font-size: 9.5pt; color: black; font-family: 宋体">禁用</span><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial"><O:P></O:P></span></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 39.9pt; padding-top: 0cm; border-bottom: 1pt solid" valign="top" width="53">
            <p class="MsoNormal" style="text-align: left" align="left"><span style="font-size: 9.5pt; color: black; font-family: 宋体">启用</span><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial"><O:P></O:P></span></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 177.3pt; padding-top: 0cm; border-bottom: 1pt solid" valign="top" width="236">
            <p class="MsoNormal" style="text-align: left" align="left"><span style="font-size: 9.5pt; color: black; font-family: 宋体">开启连接池泄漏的监控。</span><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial"><O:P></O:P></span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: 1pt solid; width: 171.3pt; padding-top: 0cm; border-bottom: 1pt solid" width="228">
            <p class="MsoNormal" style="text-align: center" align="center"><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial">Enable Connection Profiling<O:P></O:P></span></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 39.9pt; padding-top: 0cm; border-bottom: 1pt solid" valign="top" width="53">
            <p class="MsoNormal" style="text-align: left" align="left"><span style="font-size: 9.5pt; color: black; font-family: 宋体">禁用</span><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial"><O:P></O:P></span></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 39.9pt; padding-top: 0cm; border-bottom: 1pt solid" valign="top" width="53">
            <p class="MsoNormal" style="text-align: left" align="left"><span style="font-size: 10pt; font-family: 宋体">启用</span><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial"><O:P></O:P></span></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 177.3pt; padding-top: 0cm; border-bottom: 1pt solid" valign="top" width="236">
            <p class="MsoNormal" style="text-align: left" align="left"><span style="font-size: 9.5pt; color: black; font-family: 宋体">开启连接池监控。</span><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial"><O:P></O:P></span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: 1pt solid; width: 171.3pt; padding-top: 0cm; border-bottom: 1pt solid" width="228">
            <p class="MsoNormal" style="text-align: center" align="center"><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial">Inactive Connection Timeout<O:P></O:P></span></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 39.9pt; padding-top: 0cm; border-bottom: 1pt solid" valign="top" width="53">
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana">0</span><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial"><O:P></O:P></span></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 39.9pt; padding-top: 0cm; border-bottom: 1pt solid" valign="top" width="53">
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana">100</span><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial"><O:P></O:P></span></p>
            </td>
            <td style="border-right: 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 177.3pt; padding-top: 0cm; border-bottom: 1pt solid" valign="top" width="236">
            <p class="MsoNormal" style="text-align: left" align="left"><span style="font-size: 9.5pt; color: black; font-family: 宋体">连接在指定时间内（单位：秒）没有活动的话，</span><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial">WebLogic</span><span style="font-size: 9.5pt; color: black; font-family: 宋体">会将之释放并回收到连接池。</span><span lang="EN-US" style="font-size: 9.5pt; color: black; font-family: Arial"><O:P></O:P></span></p>
            </td>
        </tr>
    </tbody>
</table>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana"><O:P>&nbsp;</O:P></span></p>
<span style="font-size: 10.5pt; font-family: 宋体">&nbsp;&nbsp;&nbsp;&nbsp;以上配置项修改后不影响在跑的应用，不需要重启服务器或应用（配置项前没有黄色小图标</span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'"><V:SHAPETYPE id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <V:STROKE joinstyle="miter"></V:STROKE><V:FORMULAS><V:F eqn="if lineDrawn pixelLineWidth 0"></V:F><V:F eqn="sum @0 1 0"></V:F><V:F eqn="sum 0 0 @1"></V:F><V:F eqn="prod @2 1 2"></V:F><V:F eqn="prod @3 21600 pixelWidth"></V:F><V:F eqn="prod @3 21600 pixelHeight"></V:F><V:F eqn="sum @0 0 1"></V:F><V:F eqn="prod @6 1 2"></V:F><V:F eqn="prod @7 21600 pixelWidth"></V:F><V:F eqn="sum @8 21600 0"></V:F><V:F eqn="prod @7 21600 pixelHeight"></V:F><V:F eqn="sum @10 21600 0"></V:F></V:FORMULAS><V:PATH o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"></V:PATH><O:LOCK v:ext="edit" aspectratio="t"></O:LOCK></V:SHAPETYPE><V:SHAPE id="_x0000_i1025" style="width: 11.25pt" type="#_x0000_t75"  height:10.5pt&apos;><V:IMAGEDATA src="file:///D:\DOCUME~1\maizb\LOCALS~1\Temp\msohtml1\04\clip_image001.png" o:title=""></V:IMAGEDATA></V:SHAPE>&lt;!--[if !vml]--&gt;<img height="14" src="file:///D:/DOCUME~1/maizb/LOCALS~1/Temp/msohtml1/04/clip_image002.jpg" width="15" v:shapes="_x0000_i1025"  alt="" />&lt;!--[endif]--&gt;</span><span style="font-size: 10.5pt; font-family: 宋体">，</span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'">WebLogic</span><span style="font-size: 10.5pt; font-family: 宋体">很明确的告诉我们这个配置是不需要重启的），所以大可放心设置。只是启用监控后会对性能有一些影响，具体影响会有多大，我没有测试过，但开启这些设置只是暂时的，得到日志后我们就可以把配置还原会默认值。<br />
<br />
</span>
<meta content="Word.Document" name="ProgId" />
<meta content="Microsoft Word 11" name="Generator" />
<meta content="Microsoft Word 11" name="Originator" />
<link href="file:///D:%5CDOCUME%7E1%5Cmaizb%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C05%5Cclip_filelist.xml" rel="File-List" />
<style>@font-face {
font-family: 宋体;
}
@font-face {
font-family: @宋体;
}
@page  {mso-page-border-surround-header: no; mso-page-border-surround-footer: no; }
@page Section1 {size: 612.0pt 792.0pt; margin: 72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin: 36.0pt; mso-footer-margin: 36.0pt; mso-paper-source: 0; }
P.MsoNormal {
TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify; mso-style-parent: ""; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt
}
LI.MsoNormal {
TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify; mso-style-parent: ""; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt
}
DIV.MsoNormal {
TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify; mso-style-parent: ""; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt
}
DIV.Section1 {
page: Section1
}
</style>
<p class="MsoNormal" style="text-indent: 21pt"><span style="font-family: 宋体">在没有解决连接池泄漏问题之前，如果没有请求时连接池将一直保持为</span><span lang="EN-US">0</span><span style="font-family: 宋体">，不会再有连接池满造成请求无法响应的问题，我们也不用担心再挨客户骂，也为我们解决问题争取了宝贵到时间。</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US"><O:P>&nbsp;</O:P></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体">好了，下面才是关键。</span></p>
<p class="MsoNormal"><span lang="EN-US"><O:P>&nbsp;</O:P></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体">过一段时间后，在</span><span lang="EN-US">bea\user_projects\domains\%domainname%\%servername%</span><span style="font-family: 宋体">目录</span><span style="font-family: 宋体">下，打开</span><span lang="EN-US">%servername%</span><span lang="EN-US">.log</span><span style="font-family: 宋体">，查找，</span><span lang="EN-US">"A JDBC pool connection leak was detected"</span><span style="font-family: 宋体">，如果</span><span lang="EN-US">WebLogic</span><span style="font-family: 宋体">已经监控到有连接池泄漏的话，就可以找到以下日志，并且很清楚的告诉我们在哪一个类的哪行代码创建了连接，但没有关闭（注意红色加粗字体）：</span></p>
<p class="MsoNormal"><br />
</p>
<p class="MsoNormal">
<meta content="Word.Document" name="ProgId" />
<meta content="Microsoft Word 11" name="Generator" />
<meta content="Microsoft Word 11" name="Originator" />
<link href="file:///D:%5CDOCUME%7E1%5Cmaizb%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C09%5Cclip_filelist.xml" rel="File-List" /><O:SMARTTAGTYPE name="chsdate" namespaceuri="urn:schemas-microsoft-com:office:smarttags"></O:SMARTTAGTYPE>
<object id="ieooui" classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D"></object>
<style>st1\:* {
BEHAVIOR: url(#ieooui)
}
</style>
<style>@font-face {
font-family: 宋体;
}
@font-face {
font-family: @宋体;
}
@page  {mso-page-border-surround-header: no; mso-page-border-surround-footer: no; }
@page Section1 {size: 612.0pt 792.0pt; margin: 72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin: 36.0pt; mso-footer-margin: 36.0pt; mso-paper-source: 0; }
P.MsoNormal {
TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify; mso-style-parent: ""; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt
}
LI.MsoNormal {
TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify; mso-style-parent: ""; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt
}
DIV.MsoNormal {
TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify; mso-style-parent: ""; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt
}
P.a {
PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-TOP-STYLE: none; PADDING-TOP: 0cm; FONT-FAMILY: "Times New Roman"; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; TEXT-ALIGN: justify; BORDER-BOTTOM-STYLE: none; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-style-name: 代码; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt
}
LI.a {
PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-TOP-STYLE: none; PADDING-TOP: 0cm; FONT-FAMILY: "Times New Roman"; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; TEXT-ALIGN: justify; BORDER-BOTTOM-STYLE: none; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-style-name: 代码; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt
}
DIV.a {
PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 0pt; BORDER-TOP-STYLE: none; PADDING-TOP: 0cm; FONT-FAMILY: "Times New Roman"; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; TEXT-ALIGN: justify; BORDER-BOTTOM-STYLE: none; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-style-name: 代码; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt
}
DIV.Section1 {
page: Section1
}
</style>
</p>
<p class="MsoNormal"><span lang="EN-US"><O:P>&nbsp;</O:P></span></p>
<div style="border-right: windowtext 1pt solid; padding-right: 4pt; border-top: windowtext 1pt solid; padding-left: 4pt; padding-bottom: 1pt; border-left: windowtext 1pt solid; padding-top: 1pt; border-bottom: windowtext 1pt solid">
<p class="a"><ST1:CHSDATE isrocdate="False" islunardate="False" day="22" month="5" year="2008" w:st="on"><span lang="EN-US">2008-5-22</span></ST1:CHSDATE><span lang="EN-US"> </span><span style="font-family: 宋体">上午</span><span lang="EN-US">11</span><span style="font-family: 宋体">时</span><span lang="EN-US">47</span><span style="font-family: 宋体">分</span><span lang="EN-US">20</span><span style="font-family: 宋体">秒</span><span lang="EN-US"> CST<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Warning<span>&nbsp;&nbsp;&nbsp;&nbsp; </span>JDBC<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>A JDBC pool connection leak was detected. A connection leak occurs when a connection obtained from the pool was not closed explicitly by calling close() and then was disposed by the garbage collector and returned to the connection pool. The following stack trace at create shows where the leaked connection was created. Stack trace at connection create: </span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at weblogic.jdbc.wrapper.PoolConnection.init(PoolConnection.java:75)</span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at weblogic.jdbc.pool.Driver.allocateConnection(Driver.java:254)</span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at weblogic.jdbc.pool.Driver.connect(Driver.java:84)</span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at weblogic.jdbc.jts.Driver.getNonTxConnection(Driver.java:546)</span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at weblogic.jdbc.jts.Driver.connect(Driver.java:140)</span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:344)</span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at com.cp.fw.dao.BaseDAO.getConnection(BaseDAO.java:78)</span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at com.cp.fw.dao.dataset.DataSetOp.init(DataSetOp.java:78)</span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at com.cp.fw.dao.dataset.DataSetOp.&lt;init&gt;(DataSetOp.java:45)</span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><strong><span style="background: red; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial">at com.cp.ia.util.WorkFlowUtil.getNextWrokFlowId(WorkFlowUtil.java:93)</span><O:P></O:P></strong></span></p>
<p class="a"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at </span></p>
<p class="a" style="text-indent: 21pt"><span lang="EN-US"><O:P>&nbsp;</O:P></span></p>
<p class="a" style="text-indent: 21pt"><span style="font-family: 宋体">&#8230;&#8230;</span></p>
</div>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><O:P>&nbsp;</O:P></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体">另外一种方法：<br />
<br />
</span>
<meta content="Word.Document" name="ProgId" />
<meta content="Microsoft Word 11" name="Generator" />
<meta content="Microsoft Word 11" name="Originator" />
<link href="file:///D:%5CDOCUME%7E1%5Cmaizb%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C10%5Cclip_filelist.xml" rel="File-List" />
<style>@font-face {
font-family: 宋体;
}
@font-face {
font-family: @宋体;
}
@page  {mso-page-border-surround-header: no; mso-page-border-surround-footer: no; }
@page Section1 {size: 612.0pt 792.0pt; margin: 72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin: 36.0pt; mso-footer-margin: 36.0pt; mso-paper-source: 0; }
P.MsoNormal {
TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify; mso-style-parent: ""; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt
}
LI.MsoNormal {
TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify; mso-style-parent: ""; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt
}
DIV.MsoNormal {
TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify; mso-style-parent: ""; mso-pagination: none; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt
}
DIV.Section1 {
page: Section1
}
</style>
</p>
<p class="MsoNormal"><span style="font-family: 宋体">在</span><span lang="EN-US">WebLogic Console</span><span style="font-family: 宋体">，展开</span><span lang="EN-US"> %DomainName% -&gt; Servers -&gt; %ServerName%</span><span style="font-family: 宋体">，选到</span><span lang="EN-US">Logging &#8211; Server</span><span style="font-family: 宋体">页，在页面最下方点击</span> <span lang="EN-US">"View server log"</span><span style="font-family: 宋体">，同样查找</span> <span lang="EN-US">"A JDBC pool connection leak was detected"</span><span style="font-family: 宋体">，也可以找到同样的日志。</span></p>
<p class="MsoNormal"><span lang="EN-US"><O:P>&nbsp;</O:P></span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US">WebLogic</span><span style="font-family: 宋体">对于日志事件的说明：</span></p>
<p class="MsoNormal"><span lang="EN-US"><O:P>&nbsp;</O:P></span></p>
<table class="MsoNormalTable" style="width: 100%" cellpadding="0" width="100%" border="0">
    <tbody>
        <tr>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 112.5pt; padding-top: 0.75pt" valign="top" width="150">
            <p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">Message ID</span></strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体"><O:P></O:P></span></p>
            </td>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 337.5pt; padding-top: 0.75pt" valign="top" width="450">
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">BEA-001074<O:P></O:P></span></p>
            </td>
        </tr>
        <tr>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 112.5pt; padding-top: 0.75pt" valign="top" width="150">
            <p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">Subsystem</span></strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体"><O:P></O:P></span></p>
            </td>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 337.5pt; padding-top: 0.75pt" valign="top" width="450">
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">JDBC<O:P></O:P></span></p>
            </td>
        </tr>
        <tr>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 112.5pt; padding-top: 0.75pt" valign="top" width="150">
            <p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">Message</span></strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体"><O:P></O:P></span></p>
            </td>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 337.5pt; padding-top: 0.75pt" valign="top" width="450">
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">A JDBC pool connection leak was detected. A <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">connection leak occurs when a connection obtained <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">from the pool was not closed explicitly by calling <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">close() and then was disposed by the garbage <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">collector and returned to the connection pool. The <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">following stack trace at create shows where the <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">leaked connection was created.<span>&nbsp; </span>Stack trace at <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">connection create:<O:P></O:P></span></p>
            </td>
        </tr>
        <tr>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 112.5pt; padding-top: 0.75pt" valign="top" width="150">
            <p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">Detail</span></strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体"><O:P></O:P></span></p>
            </td>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 337.5pt; padding-top: 0.75pt" valign="top" width="450">
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">A JDBC pool connection leak was detected. A <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">connection leak occurs when a connection obtained <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">from the pool was not closed explicitly by calling <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">close() and then was disposed by the garbage <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">collector and returned to the connection pool. A <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">stack trace is printed indicating where the leaked <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">connection was created.<O:P></O:P></span></p>
            </td>
        </tr>
        <tr>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 112.5pt; padding-top: 0.75pt" valign="top" width="150">
            <p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">Cause</span></strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体"><O:P></O:P></span></p>
            </td>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 337.5pt; padding-top: 0.75pt" valign="top" width="450">
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">A JDBC pool connection leak was detected. A <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">connection leak occurs when a connection obtained <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">from the pool was not closed explicitly by calling <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">close() and then was disposed by the garbage <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">collector and returned to the connection pool. A <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">stack trace is printed indicating where the leaked <O:P></O:P></span></p>
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">connection was created.<O:P></O:P></span></p>
            </td>
        </tr>
        <tr>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 112.5pt; padding-top: 0.75pt" valign="top" width="150">
            <p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">Action</span></strong><span lang="EN-US" style="font-size: 12pt; font-family: 宋体"><O:P></O:P></span></p>
            </td>
            <td style="padding-right: 0.75pt; padding-left: 0.75pt; padding-bottom: 0.75pt; width: 337.5pt; padding-top: 0.75pt" valign="top" width="450">
            <p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体">Close the connection appropriately.<O:P></O:P></span></p>
            </td>
        </tr>
    </tbody>
</table>
<br />
<br />
原文：http://blog.csdn.net/esky2000/archive/2008/07/22/2689929.aspx
<img src ="http://www.blogjava.net/itstarting/aggbug/240196.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/itstarting/" target="_blank">IT进行时</a> 2008-11-13 00:41 <a href="http://www.blogjava.net/itstarting/archive/2008/11/13/240196.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Spring2.x与ActiveMQ5.0成功集成的心得（配置篇）</title><link>http://www.blogjava.net/itstarting/archive/2008/01/20/176642.html</link><dc:creator>IT进行时</dc:creator><author>IT进行时</author><pubDate>Sun, 20 Jan 2008 15:41:00 GMT</pubDate><guid>http://www.blogjava.net/itstarting/archive/2008/01/20/176642.html</guid><wfw:comment>http://www.blogjava.net/itstarting/comments/176642.html</wfw:comment><comments>http://www.blogjava.net/itstarting/archive/2008/01/20/176642.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/itstarting/comments/commentRss/176642.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/itstarting/services/trackbacks/176642.html</trackback:ping><description><![CDATA[&nbsp;
<p class="MsoNormal" style="text-indent: 21pt">ActiveMQ 5.0的文档实在是太少了，尤其是集成Spring2.x方面更少。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;下面是配置方面的心得：<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>&nbsp;&nbsp;一、服务器端配置：</strong></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US"><o:p>&nbsp;总体参考官方网站进行整合，差点害死人，不停的出现各种配置错误，后来经过<span lang="EN-US">google</span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">查询各种邮件列表，才发现</span><span lang="EN-US">xsd</span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用不当。</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">&lt;?</span><span style="color: #ff00ff">xml&nbsp;version="1.0"&nbsp;encoding="UTF-8"</span><span style="color: #0000ff">?&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">beans&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #ff0000">xmlns</span><span style="color: #0000ff">="http://www.springframework.org/schema/beans"</span><span style="color: #ff0000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;xmlns:amq</span><span style="color: #0000ff">="http://activemq.org/config/1.0"</span><span style="color: #ff0000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;xmlns:xsi</span><span style="color: #0000ff">="http://www.w3.org/2001/XMLSchema-instance"</span><span style="color: #ff0000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;xsi:schemaLocation</span><span style="color: #0000ff">="http://www.springframework.org/schema/beans&nbsp;http://www.springframework.org/schema/beans/spring-beans-2.0.xsd<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;http://activemq.org/config/1.0&nbsp;http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">beans</span><span style="color: #0000ff">&gt;</span></div>
<p class="MsoNormal" style="text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个才是正确的，两点：</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US">1</span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、去掉：</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US">&lt;!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"&gt;</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US">2</span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、用这个而不是那个：</span></p>
<p class="MsoNormal" style="margin-left: 21pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个：</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span lang="EN-US" style="font-size: 10pt; color: blue; line-height: 120%; font-family: 'Courier New'; mso-font-kerning: 0pt"><a href="http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd">http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd</a><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left: 21pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那个：</span><span lang="EN-US" style="font-size: 10pt; color: blue; line-height: 120%; font-family: 'Courier New'; mso-font-kerning: 0pt"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://activemq.apache.org/snapshot-schema/activemq-core-5.0-SNAPSHOT.xsd">http://activemq.apache.org/snapshot-schema/activemq-core-5.0-SNAPSHOT.xsd</a><o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent: 21pt"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;完整的配置如下：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;applicationContext-activeMQ.xml</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">&lt;?</span><span style="color: #ff00ff">xml&nbsp;version="1.0"&nbsp;encoding="UTF-8"</span><span style="color: #0000ff">?&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">beans&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #ff0000">xmlns</span><span style="color: #0000ff">="http://www.springframework.org/schema/beans"</span><span style="color: #ff0000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;xmlns:amq</span><span style="color: #0000ff">="http://activemq.org/config/1.0"</span><span style="color: #ff0000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;xmlns:xsi</span><span style="color: #0000ff">="http://www.w3.org/2001/XMLSchema-instance"</span><span style="color: #ff0000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;xsi:schemaLocation</span><span style="color: #0000ff">="http://www.springframework.org/schema/beans&nbsp;http://www.springframework.org/schema/beans/spring-beans-2.0.xsd<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;http://activemq.org/config/1.0&nbsp;http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">amq:broker&nbsp;</span><span style="color: #ff0000">useJmx</span><span style="color: #0000ff">="true"</span><span style="color: #ff0000">&nbsp;persistent</span><span style="color: #0000ff">="true"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">amq:persistenceAdapter</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">amq:jdbcPersistenceAdapter&nbsp;</span><span style="color: #ff0000">dataSource</span><span style="color: #0000ff">="#mysql-ds"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">amq:persistenceAdapter</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">amq:transportConnectors</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">amq:transportConnector&nbsp;</span><span style="color: #ff0000">uri</span><span style="color: #0000ff">="tcp://localhost:0"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">amq:transportConnectors</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">amq:broker</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;MySql&nbsp;DataSource&nbsp;Setup&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="mysql-ds"</span><span style="color: #ff0000">&nbsp;class</span><span style="color: #0000ff">="org.apache.commons.dbcp.BasicDataSource"</span><span style="color: #ff0000">&nbsp;destroy-method</span><span style="color: #0000ff">="close"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="driverClassName"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="com.mysql.jdbc.Driver"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="url"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="jdbc:mysql://localhost/activemq?relaxAutoCommit=true"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="username"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="activemq"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="password"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="activemq"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&lt;property&nbsp;name="poolPreparedStatements"&nbsp;value="true"/&gt;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">beans</span><span style="color: #0000ff">&gt;</span></div>
<p class="MsoNormal" style="text-indent: 21pt"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;二、<strong>web.xml配置：</strong>&nbsp;</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">activeMQ</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">context-param</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">param-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">contextConfigLocation</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">param-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">param-value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/WEB-INF/applicationContext-activeMQ.xml&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/WEB-INF/applicationContext-jms.xml&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">param-value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">context-param</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">listener</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">listener-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">org.springframework.web.context.ContextLoaderListener</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">listener-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">listener</span><span style="color: #0000ff">&gt;</span></div>
<p class="MsoNormal" style="text-indent: 21pt"><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>三、客户端配置</strong>（<strong><span style="color: red"><strong>此处</strong></span><span style="color: red">仅供参考，还未曾具体实战确认</span></strong>）：<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;applicationContext-jms.xml</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">&lt;?</span><span style="color: #ff00ff">xml&nbsp;version="1.0"&nbsp;encoding="UTF-8"</span><span style="color: #0000ff">?&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">beans&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #ff0000">xmlns</span><span style="color: #0000ff">="http://www.springframework.org/schema/beans"</span><span style="color: #ff0000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;xmlns:amq</span><span style="color: #0000ff">="http://activemq.org/config/1.0"</span><span style="color: #ff0000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;xmlns:xsi</span><span style="color: #0000ff">="http://www.w3.org/2001/XMLSchema-instance"</span><span style="color: #ff0000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;xsi:schemaLocation</span><span style="color: #0000ff">="http://www.springframework.org/schema/beans&nbsp;http://www.springframework.org/schema/beans/spring-beans-2.0.xsd<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;http://activemq.org/config/1.0&nbsp;http://activemq.apache.org/schema/core/activemq-core-5.0.0.xsd"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;ActiveMQ&nbsp;destinations&nbsp;to&nbsp;use&nbsp;&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">amq:queue&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="destination"</span><span style="color: #ff0000">&nbsp;&nbsp;physicalName</span><span style="color: #0000ff">="org.apache.activemq.spring.Test.spring.embedded"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;JMS&nbsp;ConnectionFactory&nbsp;to&nbsp;use,&nbsp;configuring&nbsp;the&nbsp;embedded&nbsp;broker&nbsp;using&nbsp;XML&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">amq:connectionFactory&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="jmsFactory"</span><span style="color: #ff0000">&nbsp;brokerURL</span><span style="color: #0000ff">="vm://localhost"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000">&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;Spring&nbsp;JMS&nbsp;Template&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="jmsTemplate"</span><span style="color: #ff0000">&nbsp;class</span><span style="color: #0000ff">="org.springframework.jms.core.JmsTemplate"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="connectionFactory"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;lets&nbsp;wrap&nbsp;in&nbsp;a&nbsp;pool&nbsp;to&nbsp;avoid&nbsp;creating&nbsp;a&nbsp;connection&nbsp;per&nbsp;send&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">class</span><span style="color: #0000ff">="org.springframework.jms.connection.SingleConnectionFactory"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="targetConnectionFactory"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">ref&nbsp;</span><span style="color: #ff0000">bean</span><span style="color: #0000ff">="jmsFactory"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="messageConverter"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">ref&nbsp;</span><span style="color: #ff0000">bean</span><span style="color: #0000ff">="dynamicMessageConverter"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="dynamicMessageConverter"</span><span style="color: #ff0000">&nbsp;class</span><span style="color: #0000ff">="com.tuanzi.message.mq.impl.DynamicMessageConverter"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000">&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="consumerJmsTemplate"</span><span style="color: #ff0000">&nbsp;class</span><span style="color: #0000ff">="org.springframework.jms.core.JmsTemplate"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="connectionFactory"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">ref&nbsp;</span><span style="color: #ff0000">bean</span><span style="color: #0000ff">="jmsFactory"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="messageConverter"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">ref&nbsp;</span><span style="color: #ff0000">bean</span><span style="color: #0000ff">="dynamicMessageConverter"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="receiveTimeout"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">10000</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;a&nbsp;sample&nbsp;POJO&nbsp;which&nbsp;uses&nbsp;a&nbsp;Spring&nbsp;JmsTemplate&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="simpleMessageProducer"</span><span style="color: #ff0000">&nbsp;class</span><span style="color: #0000ff">="com.tuanzi.message.mq.impl.SimpleMessageProducer"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="jmsTemplate"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">ref&nbsp;</span><span style="color: #ff0000">bean</span><span style="color: #0000ff">="jmsTemplate"</span><span style="color: #0000ff">&gt;&lt;/</span><span style="color: #800000">ref</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="destination"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">ref&nbsp;</span><span style="color: #ff0000">bean</span><span style="color: #0000ff">="destination"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #008000">&lt;!--</span><span style="color: #008000">&nbsp;a&nbsp;sample&nbsp;POJO&nbsp;consumer&nbsp;</span><span style="color: #008000">--&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="simpleMessageConsumer"</span><span style="color: #ff0000">&nbsp;class</span><span style="color: #0000ff">="com.tuanzi.message.mq.impl.SimpleMessageConsumer"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="jmsTemplate"</span><span style="color: #ff0000">&nbsp;ref</span><span style="color: #0000ff">="consumerJmsTemplate"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="destination"</span><span style="color: #ff0000">&nbsp;ref</span><span style="color: #0000ff">="destination"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">beans</span><span style="color: #0000ff">&gt;</span></div>
<p class="MsoNormal" style="text-indent: 21pt"></o:p></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><br />
&nbsp;&nbsp;&nbsp;&nbsp;TODO:<br />
&nbsp;&nbsp;&nbsp;&nbsp;1、客户端的配置需要实战后进行进一步的确认、更新；<br />
&nbsp;&nbsp;&nbsp;&nbsp;2、后期视情况增加一篇《Spring2.x与ActiveMQ5.0成功集成的心得（实战篇）》<br />
<br />
<br />
<span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;主要参考：</span> </p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US"><a href="http://activemq.apache.org/spring-support.html">http://activemq.apache.org/spring-support.html</a></span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US"><a href="http://activemq.apache.org/xml-reference.html">http://activemq.apache.org/xml-reference.html</a></span></p>
</span>
 <img src ="http://www.blogjava.net/itstarting/aggbug/176642.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/itstarting/" target="_blank">IT进行时</a> 2008-01-20 23:41 <a href="http://www.blogjava.net/itstarting/archive/2008/01/20/176642.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Jmagick的安装和使用</title><link>http://www.blogjava.net/itstarting/archive/2007/07/26/132499.html</link><dc:creator>IT进行时</dc:creator><author>IT进行时</author><pubDate>Thu, 26 Jul 2007 04:53:00 GMT</pubDate><guid>http://www.blogjava.net/itstarting/archive/2007/07/26/132499.html</guid><wfw:comment>http://www.blogjava.net/itstarting/comments/132499.html</wfw:comment><comments>http://www.blogjava.net/itstarting/archive/2007/07/26/132499.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/itstarting/comments/commentRss/132499.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/itstarting/services/trackbacks/132499.html</trackback:ping><description><![CDATA[jmagick是什么？不用我说了吧。<br><br>jmagick的安装（基于windows），精简版步骤：<br>1、下载jmagick-win-5.5.7-Q8.zip，并把jmagick.jar放到应用的lib下，jmagick.dll拷贝到SYSTEM32下；<br>2、安装ImageMagick-5.5.7-Q8-windows-dll.exe软件<br>3、重新启动机器<br>麻烦点，但对图片的处理能力，确实超乎想象的（不过用6.2.6版本频频出现JVM Crach，吓死）<br><br>jmagick的使用，我只用了图片缩放，还可以。<br>代码如下：<br>&nbsp;&nbsp; System.setProperty("jmagick.systemclassloader", "no");//这个没什么好说的，照办就是了<br>&nbsp;&nbsp;&nbsp;ImageInfo info = new ImageInfo(fromFileName);<br>&nbsp;&nbsp;&nbsp;MagickImage fromImage = new MagickImage(info);<br>&nbsp;&nbsp;&nbsp;Dimension dim = fromImage.getDimension();<br>&nbsp;&nbsp;&nbsp;double w = dim.getWidth();<br>&nbsp;&nbsp;&nbsp;double h = dim.getHeight();<br>&nbsp;&nbsp;&nbsp;int toHeight = (int)(h*toWidth/w);//按宽度比例缩放<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;MagickImage toImage = fromImage.scaleImage(toWidth, toHeight);//缩放操作<br>&nbsp;&nbsp;&nbsp;toImage.setFileName(toFileName);//设置输出的文件名<br>&nbsp;&nbsp;&nbsp;toImage.writeImage(info); //保存<br><br><br>过程中发现最新版本的诸多问题，要么NoClassDefFoundError要么Can't find dependent libraries，简直不胜其烦。<br><br>后来降级到5.5.7，就好了，说明IT人唯最新版本是从的想法不一定正确。<br><br>说心里话，过程中曾经出现过多次JVM crach，现在还有心理阴影。
<img src ="http://www.blogjava.net/itstarting/aggbug/132499.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/itstarting/" target="_blank">IT进行时</a> 2007-07-26 12:53 <a href="http://www.blogjava.net/itstarting/archive/2007/07/26/132499.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Tips:如何远程调试Tomcat或者Weblogic，解放我们脆弱的笔记本</title><link>http://www.blogjava.net/itstarting/archive/2007/06/13/123890.html</link><dc:creator>IT进行时</dc:creator><author>IT进行时</author><pubDate>Wed, 13 Jun 2007 08:22:00 GMT</pubDate><guid>http://www.blogjava.net/itstarting/archive/2007/06/13/123890.html</guid><wfw:comment>http://www.blogjava.net/itstarting/comments/123890.html</wfw:comment><comments>http://www.blogjava.net/itstarting/archive/2007/06/13/123890.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/itstarting/comments/commentRss/123890.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/itstarting/services/trackbacks/123890.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp; 对于开发和实施人员来说，也许大家经常会碰到这样的对话：</p>
<p>&nbsp;&nbsp;&nbsp; 实施工程师：系统有问题了，是哪里哪里（省略字若干+若干界面截图）<br />
&nbsp;&nbsp;&nbsp; 开发工程师：不可能，我这边还原了整个环境，包括数据库、代码和中间件&#8230;&#8230;<br />
&nbsp;&nbsp;&nbsp; 实施工程师：这边是weblogic，你那边是？<br />
&nbsp;&nbsp;&nbsp; 开发工程师：我的是Tomcat，但Tomcat和weblogic的差异呢，不知道&#8230;&#8230;</p>
<p>&nbsp;&nbsp;&nbsp; 然后就没有结果，因为我们的个人电脑真的无法或者难以承受weblogic或者websphere之重。</p>
<p>&nbsp;&nbsp;&nbsp; 怎么办呢，其实我们可以用远程调试的方法：<br />
&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; 三步配置远程调试：<br />
&nbsp;&nbsp;&nbsp; 一、对于TOMCAT：<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1、打开catalina.bat，并加入：<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5555<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2、配置Eclipse，如下图（此时Port与上面的address一致，是5555）：<br />
<img src="http://www.blogjava.net/images/blogjava_net/itstarting/debug_1.JPG" border="0"  alt="" /><br />
&nbsp;<br />
&nbsp;&nbsp;&nbsp; 3、如果Tocat已经起来（注意，可能在另外的机器上），那点击debug，即可进行与本地服务一样的调试过程。</p>
<p>&nbsp;&nbsp;&nbsp; 二、对于Weblogic：<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1、打开startWebLogic.cmd，并调整执行java命令的地方：<br />
%JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% -Dweblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%\server\lib\weblogic.policy" weblogic.Server<br />
调整为<br />
@REM ORG : %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% -Dweblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%\server\lib\weblogic.policy" weblogic.Server<br />
@REM Surport Remote Debug :<br />
set JAVA_DEBUG=-Xdebug -Xnoagent -Xrunjdwp:transport=dt_Socket,address=4000,server=y,suspend=n<br />
%JAVA_HOME%\bin\java %JAVA_VM% %JAVA_DEBUG% %MEM_ARGS% %JAVA_OPTIONS% -Dweblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%\server\lib\weblogic.policy" weblogic.Server<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2、其他配置类似Tomcat，如下：<br />
&nbsp;&nbsp;&nbsp;&nbsp;<img src="http://www.blogjava.net/images/blogjava_net/itstarting/debug_2.JPG" border="0"  alt="" /><br />
&nbsp;&nbsp;&nbsp; 3、同样，如果weblogic已经起来（注意，我上面的例子就是weblogic不在本机上，而在于另外的机器上），那点击debug，即可进行与本地服务一样的调试过程，如下：</p>
<p><img style="width: 737px; height: 535px" height="535" src="http://www.blogjava.net/images/blogjava_net/itstarting/debug_3.JPG" width="737" border="0"  alt="" /></p>
<p>&nbsp;&nbsp;&nbsp; 大家也许会问：这样调试会不会影响客户使用？当然会影响，如果一旦hit了断点，则整个应用会被挂起。那怎么样才能尽可能的进行调试呢？方法还是有的：<br />
&nbsp;&nbsp;&nbsp; 1、如果是tomcat，重新复制一份tomcat，修改一下端口，然后起来后调试，此时整个环境都类似了，调试起来非常方便；<br />
&nbsp;&nbsp;&nbsp; 2、如果是weblogic，重新建立一个新的domain即可，互不干扰；<br />
&nbsp;&nbsp;&nbsp; 3、如果是websphere，呵呵，没试过，留给大家的作业。</p>
<p>&nbsp;&nbsp;&nbsp; 原理？好奇的人还会问，其实就是jdwp(Java(tm) Debug Wire Protocol)，有兴趣就google一下吧。</p>
<img src ="http://www.blogjava.net/itstarting/aggbug/123890.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/itstarting/" target="_blank">IT进行时</a> 2007-06-13 16:22 <a href="http://www.blogjava.net/itstarting/archive/2007/06/13/123890.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>FCKeditor的几点重要改进和使用心得，值得分享</title><link>http://www.blogjava.net/itstarting/archive/2007/03/11/103142.html</link><dc:creator>IT进行时</dc:creator><author>IT进行时</author><pubDate>Sun, 11 Mar 2007 12:20:00 GMT</pubDate><guid>http://www.blogjava.net/itstarting/archive/2007/03/11/103142.html</guid><wfw:comment>http://www.blogjava.net/itstarting/comments/103142.html</wfw:comment><comments>http://www.blogjava.net/itstarting/archive/2007/03/11/103142.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.blogjava.net/itstarting/comments/commentRss/103142.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/itstarting/services/trackbacks/103142.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 以前公司购买过eWebEditor，功能应该还是不错的，但即便到了现在，也还仅是一个IE only的版本，无法满足现在差异化的需求。故前段时间下了最新的FCKeditor2.3.3版本下来（当然了，连带java的integration），demo来看看，发现有几个地方非常不爽：1、上载的文件，只能放在URL可及的地方（如默认只能放到嵌入应用路径的/UserFiles/下）；2、没有明确的上载视频的...&nbsp;&nbsp;<a href='http://www.blogjava.net/itstarting/archive/2007/03/11/103142.html'>阅读全文</a><img src ="http://www.blogjava.net/itstarting/aggbug/103142.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/itstarting/" target="_blank">IT进行时</a> 2007-03-11 20:20 <a href="http://www.blogjava.net/itstarting/archive/2007/03/11/103142.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于Apache+Tomcat的Cluster的郁闷问题，终于得到解决</title><link>http://www.blogjava.net/itstarting/archive/2007/03/07/102335.html</link><dc:creator>IT进行时</dc:creator><author>IT进行时</author><pubDate>Wed, 07 Mar 2007 02:51:00 GMT</pubDate><guid>http://www.blogjava.net/itstarting/archive/2007/03/07/102335.html</guid><wfw:comment>http://www.blogjava.net/itstarting/comments/102335.html</wfw:comment><comments>http://www.blogjava.net/itstarting/archive/2007/03/07/102335.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/itstarting/comments/commentRss/102335.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/itstarting/services/trackbacks/102335.html</trackback:ping><description><![CDATA[
		<p>此类话题已经很多，可以参考的文档也不少，我是参考这个blog的文档做的：<br /><a href="http://blogger.org.cn/blog/blog.asp?name=lhwork">http://blogger.org.cn/blog/blog.asp?name=lhwork</a><br /><br />1）环境和版本：<br />Apache2.0.59+Tomcat5.5.15（两个），一开始用的是Tomcat5.0.28，一直有问题（在后面总结），就升级到5.5去做试验了，冤枉5.0.28兄弟了:)<br /><br />步骤小结为：<br />1、安装（忽略）；<br />2、配置Tomcat：<br />   1）第一个Tomcat：<br />      A.启用jvmRoute      <br />    &lt;!-- You should set jvmRoute to support load-balancing via AJP ie :--&gt;<br />    &lt;Engine name="Standalone" defaultHost="localhost" jvmRoute="<strong>tomcat1</strong>"&gt;          <br />    &lt;!-- Define the top level container in our container hierarchy <br />    &lt;Engine name="Catalina" defaultHost="localhost"&gt;--&gt;<br />      B.启用原来禁用的Cluster设置<br />      <br />        &lt;Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster"<br />                 managerClassName="org.apache.catalina.cluster.session.DeltaManager"<br />                 expireSessionsOnShutdown="false"<br />                 useDirtyFlag="true"<br />                 notifyListenersOnReplication="true"&gt;</p>
		<p>            &lt;Membership <br />                className="org.apache.catalina.cluster.mcast.McastService"<br />                <strong><font color="#ff33ff">mcastBindAddress="127.0.0.1"</font></strong><br />                mcastAddr="224.1.2.3"<br />                mcastPort="2525"<br />                mcastFrequency="500"<br />                mcastDropTime="3000"/&gt;</p>
		<p>            &lt;Receiver <br />                className="org.apache.catalina.cluster.tcp.ReplicationListener"<br />                tcpListenAddress="auto"<br />                tcpListenPort="<strong>4001</strong>"<br />                tcpSelectorTimeout="100"<br />                tcpThreadCount="6"/&gt;</p>
		<p>            &lt;Sender<br />                className="org.apache.catalina.cluster.tcp.ReplicationTransmitter"<br />                replicationMode="pooled"<br />                ackTimeout="15000"/&gt;</p>
		<p>            &lt;Valve className="org.apache.catalina.cluster.tcp.ReplicationValve"<br />                   filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/&gt;<br />                   <br />            &lt;Deployer className="org.apache.catalina.cluster.deploy.FarmWarDeployer"<br />                      tempDir="/tmp/war-temp/"<br />                      deployDir="/tmp/war-deploy/"<br />                      watchDir="/tmp/war-listen/"<br />                      watchEnabled="false"/&gt;<br />                      <br />            &lt;ClusterListener className="org.apache.catalina.cluster.session.ClusterSessionListener"/&gt;<br />        &lt;/Cluster&gt;<br />      C.搞定<br />   2）配置第二个Tomcat（要注意端口冲突了）：<br />      A.变更端口<br />      &lt;Server port="8005" shutdown="SHUTDOWN"&gt;<br />      ＝》<br />      &lt;Server port="<strong>8004</strong>" shutdown="SHUTDOWN"&gt;<br />      B.变更端口<br />      &lt;Connector port="8009" <br />               enableLookups="false" redirectPort="8443" protocol="AJP/1.3" /&gt;<br />      ＝》<br />      &lt;Connector port="9009" <br />               enableLookups="false" redirectPort="8443" protocol="AJP/1.3" /&gt;<br />      C.启用jvmRoute      <br />    &lt;!-- You should set jvmRoute to support load-balancing via AJP ie :--&gt;<br />    &lt;Engine name="Standalone" defaultHost="localhost" jvmRoute="<strong>tomcat2</strong>"&gt;          <br />    &lt;!-- Define the top level container in our container hierarchy <br />    &lt;Engine name="Catalina" defaultHost="localhost"&gt;--&gt;<br />      D.启用原来禁用的Cluster设置      <br />        &lt;Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster"<br />                 managerClassName="org.apache.catalina.cluster.session.DeltaManager"<br />                 expireSessionsOnShutdown="false"<br />                 useDirtyFlag="true"<br />                 notifyListenersOnReplication="true"&gt;</p>
		<p>            &lt;Membership <br />                className="org.apache.catalina.cluster.mcast.McastService"<br />                <strong><font color="#ff33ff">mcastBindAddress="127.0.0.1"<br /></font></strong>                mcastAddr="224.1.2.3"<br />                mcastPort="<strong>2525</strong>"<br />                mcastFrequency="500"<br />                mcastDropTime="3000"/&gt;</p>
		<p>            &lt;Receiver <br />                className="org.apache.catalina.cluster.tcp.ReplicationListener"<br />                tcpListenAddress="auto"<br />                tcpListenPort="<strong>4002</strong>"<br />                tcpSelectorTimeout="100"<br />                tcpThreadCount="6"/&gt;</p>
		<p>            &lt;Sender<br />                className="org.apache.catalina.cluster.tcp.ReplicationTransmitter"<br />                replicationMode="pooled"<br />                ackTimeout="15000"/&gt;</p>
		<p>            &lt;Valve className="org.apache.catalina.cluster.tcp.ReplicationValve"<br />                   filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/&gt;<br />                   <br />            &lt;Deployer className="org.apache.catalina.cluster.deploy.FarmWarDeployer"<br />                      tempDir="/tmp/war-temp/"<br />                      deployDir="/tmp/war-deploy/"<br />                      watchDir="/tmp/war-listen/"<br />                      watchEnabled="false"/&gt;<br />                      <br />            &lt;ClusterListener className="org.apache.catalina.cluster.session.ClusterSessionListener"/&gt;<br />        &lt;/Cluster&gt;<br />      E.搞定<br />3、配置apache：<br />   1）修订conf/httpd.conf      <br />      #add by zhengxq<br />      LoadModule jk2_module modules/mod_jk2.so<br />   2）新增worders2.properties并放到conf下<br />      [shm]<br />info=Scoreboard. Requried for reconfiguration and status with multiprocess servers.<br />file=anon</p>
		<p># Defines a load balancer named lb. Use even if you only have one machine.<br />[lb:lb]<br />worker=ajp13:<strong>tomcat1</strong><br />worker=ajp13:<strong>tomcat2</strong></p>
		<p># Example socket channel, override port and host.<br />[channel.socket:localhost:<strong>9009</strong>]<br />port=<strong>9009</strong><br />host=127.0.0.1</p>
		<p># define the worker<br />[ajp13:localhost:<strong>9009</strong>]<br />channel=channel.socket:localhost:<strong>9009</strong><br />group=lb</p>
		<p># Example socket channel, override port and host.<br />[channel.socket:localhost:<strong>8009</strong>]<br />port=<strong>8009</strong><br />host=127.0.0.1</p>
		<p># define the worker<br />[ajp13:localhost:<strong>8009</strong>]<br />channel=channel.socket:localhost:<strong>8009</strong><br />group=lb</p>
		<p># Map the Tomcat examples webapp to the Web server uri space<br />[uri:/clusterapp/*]<br />group=lb<br />      3）搞定<br /><br />3.测试程序，请参考上述参考文档，如下：<br />&lt;%@ page contentType="text/html; charset=GBK" import="java.util.*"%&gt;<br />&lt;html&gt;&lt;head&gt;&lt;title&gt;Cluster App Test&lt;/title&gt;&lt;/head&gt;<br />&lt;body&gt;<br />Server Info: &lt;%out.print(request.getLocalAddr() + " : " + request.getLocalPort());%&gt;<br />&lt;%<br />out.println("&lt;br&gt; ID " + session.getId());</p>
		<p>// 如果有新的 Session 属性设置<br />String dataName = request.getParameter("dataName");<br />if (dataName != null &amp;&amp; dataName.length() &gt; 0) {<br />  String dataValue = request.getParameter("dataValue");<br />  session.setAttribute(dataName, dataValue);<br />}</p>
		<p>out.print("&lt;b&gt;Session 列表&lt;/b&gt;");</p>
		<p>Enumeration e = session.getAttributeNames();<br />while (e.hasMoreElements()) {<br />  String name = (String)e.nextElement();<br />  String value = session.getAttribute(name).toString();<br />  out.println( name + " = " + value);<br />  }<br />%&gt;<br />&lt;form action="index.jsp" method="POST"&gt;<br />  名称:&lt;input type=text size=20 name="dataName"&gt;<br />  &lt;br&gt;<br />  值:&lt;input type=text size=20 name="dataValue"&gt;<br />  &lt;br&gt;<br />  &lt;input type=submit&gt;<br />  &lt;/form&gt;<br />&lt;/body&gt;<br />&lt;/html&gt;<br /><br /><br /><br />   所需要注意的是：<br />   1、测试应用的web.xml必须加上：&lt;distributable/&gt;<br />   2、我搞了很久，发现三个东西起来后，可以访问，但只能做到负载均衡，不能session复制，这点我重复配置了一次，就是不行，郁闷之下找了tomcat的邮件列表，这样做：<br />      1）测试广播是否正常<br />         A. download this jar<br />            <a href="http://cvs.apache.org/~fhanik/tomcat-replication.jar">http://cvs.apache.org/~fhanik/tomcat-replication.jar</a></p>
		<p>         B. Open two terminals <br />            a) Terminal one run<br />               java -cp tomcat-replication.jar MCaster 239.255.10.10 2525 Terminal1<br />            b) Terminal two run<br />               java -cp tomcat-replication.jar MCaster 239.255.10.10 2525 Terminal2<br />         发现结果如下：<br />         C:\&gt;java -cp tomcat-replication.jar MCaster 224.1.2.3 2525 Terminal1<br />Usage MCaster [address port message]<br />BEGIN TO RECEIVE<br />SENT:Terminal11<br />SENT:Terminal12<br />SENT:Terminal13<br />SENT:Terminal14<br />SENT:Terminal15<br />SENT:Terminal16<br />SENT:Terminal17<br />SENT:Terminal18<br /><br />         表明广播有问题，气死了，难怪Tomcat总是在启动的时候提示：<br />         信息: Manager [/clusterapp]: skipping state transfer. No members active in cluster group.<br /><br />      后来终于发现猫腻，必须注意在server.xml的&lt;Cluster ..&lt;Membership里面加上<font color="#ff33ff"><strong>mcastBindAddress="127.0.0.1"。<br />       </strong></font><font color="#000000">为什么呢？很简单，因为我安装了VPN，这家伙会设置一个虚拟网卡，导致绑定失败（没地方责怪了，只好让它垫背）？！这是通过邮件列表里面所描述的多网卡绑定问题举一反三得到的判断。具体请参考：<a href="http://www.servlets.com/archive/servlet/ReadMsg?msgId=475067&amp;listName=tomcat-user">http://www.servlets.com/archive/servlet/ReadMsg?msgId=475067&amp;listName=tomcat-user</a><br /><br />      <br /></font><br /><br /></p>
<img src ="http://www.blogjava.net/itstarting/aggbug/102335.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/itstarting/" target="_blank">IT进行时</a> 2007-03-07 10:51 <a href="http://www.blogjava.net/itstarting/archive/2007/03/07/102335.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>