<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>百亩森林</title>
	<atom:link href="http://blog.baimusenlin.com/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.baimusenlin.com</link>
	<description></description>
	<lastBuildDate>Fri, 09 Jul 2010 10:02:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>C++连接mysql数据库</title>
		<link>http://blog.baimusenlin.com/801.html</link>
		<comments>http://blog.baimusenlin.com/801.html#comments</comments>
		<pubDate>Thu, 24 Jun 2010 09:32:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javaee]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[gcc]]></category>
		<category><![CDATA[MinGW]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://blog.baimusenlin.com/?p=801</guid>
		<description><![CDATA[环境win32、mingw、codelite 1、下载mysql Microsoft Windows 32. (ZIP format) http://downloads.mysql.com/archives.php 获得mysql-noinstall-5.1.45-win32.zip，解压缩。 2、用 reimp.exe将libmysql.lib转换为libmysql.a 获取reimp.exe 从http://www.qtcn.org/download/mingw-utils-0.3.tar.gz解压缩 拷贝D:\mysql-5.1.45-win32\lib\opt\libmysql.lib到 reimp目录下。在cmd进入目录并执行 reimp libmysql.lib 执行完后产生liblibmysql.a和LIBMYSQL.def 将liblibmysql.a改名为libmysql.a,并拷贝回D:\mysql-5.1.45-win32\lib\opt\目录下 3、Complier&#8211;&#62;Additional Search Path设置为 .;D:\mysql-5.1.45-win32\include;D:\MinGW\include\c++\3.4.5;D:\MinGW\include\c++\3.4.5\mingw32;D:\MinGW\include\c++\3.4.5\backward;D:\MinGW\include; 4、Linker&#8211;&#62;Libray Path设置为 D:\MinGW\lib;D:\mysql-5.1.45-win32\lib\opt Linker&#8211;&#62;Libraries设置为 libmysql;libwsock32; 5、编写程序 将D:\mysql-5.1.45-win32\lib\opt\libmysql.dll拷贝到C:\WINDOWS\system32目录下 main.cpp #include “MySqlTestClass.h” int main(int argc, char* argv[]){ MySqlTestClass* myClass = new MySqlTestClass(“127.0.0.1&#8243;,”3306&#8243;,”root”,”root”,”test1&#8243;); myClass-&#62;testMysql(); return 0; } MySqlTestClass.h class MySqlTestClass { protected: char* dbAddress; char* [...]]]></description>
			<content:encoded><![CDATA[<p>环境win32、mingw、codelite<br />
1、下载mysql Microsoft Windows 32. (ZIP format)</p>
<p>http://downloads.mysql.com/archives.php</p>
<p>获得mysql-noinstall-5.1.45-win32.zip，解压缩。<br />
2、用 reimp.exe将libmysql.lib转换为libmysql.a<br />
获取reimp.exe 从http://www.qtcn.org/download/mingw-utils-0.3.tar.gz解压缩<br />
拷贝D:\mysql-5.1.45-win32\lib\opt\libmysql.lib到 reimp目录下。在cmd进入目录并执行<br />
reimp libmysql.lib<br />
执行完后产生liblibmysql.a和LIBMYSQL.def<br />
将liblibmysql.a改名为libmysql.a,并拷贝回D:\mysql-5.1.45-win32\lib\opt\目录下<br />
3、Complier&#8211;&gt;Additional Search Path设置为<br />
.;D:\mysql-5.1.45-win32\include;D:\MinGW\include\c++\3.4.5;D:\MinGW\include\c++\3.4.5\mingw32;D:\MinGW\include\c++\3.4.5\backward;D:\MinGW\include;<br />
4、Linker&#8211;&gt;Libray Path设置为<br />
D:\MinGW\lib;D:\mysql-5.1.45-win32\lib\opt<br />
Linker&#8211;&gt;Libraries设置为<br />
libmysql;libwsock32;<br />
5、编写程序<br />
将D:\mysql-5.1.45-win32\lib\opt\libmysql.dll拷贝到C:\WINDOWS\system32目录下<br />
main.cpp<br />
#include “MySqlTestClass.h”<br />
int main(int argc, char* argv[]){<br />
MySqlTestClass* myClass = new MySqlTestClass(“127.0.0.1&#8243;,”3306&#8243;,”root”,”root”,”test1&#8243;);<br />
myClass-&gt;testMysql();<br />
return 0;<br />
}</p>
<p>MySqlTestClass.h<br />
class MySqlTestClass<br />
{<br />
protected:<br />
char* dbAddress;<br />
char* dbPort;<br />
char* dbUser;<br />
char* dbPassword;<br />
char* dbName;</p>
<p>public:<br />
MySqlTestClass();<br />
MySqlTestClass(char* dbAddress,char* dbPort,char* dbUser,char* dbPassword,char* dbName);<br />
void testMysql();<br />
};</p>
<p>MySqlTestClass.cpp<br />
#include &lt;MySqlTestClass.h&gt;<br />
#include &lt;stdio.h&gt;<br />
#include &lt;stdlib.h&gt;<br />
#include &lt;string.h&gt;<br />
#include &lt;windows.h&gt;<br />
#include &lt;winsock.h&gt;<br />
#include &lt;mysql.h&gt;</p>
<p>MySqlTestClass::MySqlTestClass()<br />
{</p>
<p>}</p>
<p>MySqlTestClass::MySqlTestClass(char* dbAddress,char* dbPort,char* dbUser,char* dbPassword,char* dbName)<br />
{<br />
this-&gt;dbAddress=dbAddress;<br />
this-&gt;dbPassword=dbPort;<br />
this-&gt;dbUser=dbUser;<br />
this-&gt;dbPassword=dbPassword;<br />
this-&gt;dbName=dbName;<br />
}</p>
<p>void MySqlTestClass::testMysql(){</p>
<p>MYSQL mysql;<br />
MYSQL_RES *res;<br />
MYSQL_ROW row;<br />
char *query;<br />
int t,r;<br />
mysql_init(&amp;mysql);<br />
if (!mysql_real_connect(&amp;mysql,this-&gt;dbAddress,this-&gt;dbUser, this-&gt;dbPassword, this-&gt;dbName,0,NULL,CLIENT_MULTI_STATEMENTS))<br />
{<br />
printf( “Error connecting to database: %s\n”,mysql_error(&amp;mysql));<br />
}<br />
else printf(“Connected&#8230;\n”);<br />
query = “select * from user”;</p>
<p>t = mysql_real_query(&amp;mysql,query,(unsigned int) strlen(query));<br />
if (t)<br />
{<br />
printf(“Error making query: %s\n”,<br />
mysql_error(&amp;mysql));<br />
}else {<br />
printf(“[%s] made&#8230;\n”, query);<br />
}<br />
res = mysql_store_result(&amp;mysql);<br />
while(row = mysql_fetch_row(res))<br />
{<br />
for(t=0;t&lt;mysql_num_fields(res);t++)<br />
{<br />
printf(“%s “,row[t]);<br />
}<br />
printf(“\n”);<br />
}</p>
<p>printf(“mysql_free_result&#8230;\n”);<br />
mysql_free_result(res);</p>
<p>}</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.baimusenlin.com/801.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在使用JBoss AS5中遇到的问题记录</title>
		<link>http://blog.baimusenlin.com/799.html</link>
		<comments>http://blog.baimusenlin.com/799.html#comments</comments>
		<pubDate>Thu, 24 Jun 2010 09:31:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javaee]]></category>
		<category><![CDATA[spring]]></category>
		<category><![CDATA[jboss]]></category>
		<category><![CDATA[jboss5]]></category>

		<guid isPermaLink="false">http://blog.baimusenlin.com/?p=799</guid>
		<description><![CDATA[1、web容器改默认端口为自定义端口 在D:\jboss-5.1.0.GA\server\default\deploy\jbossweb.sar\server.xml 找到 &#60;Connector protocol=”HTTP/1.1&#8243; port=”8080&#8243; address=”${jboss.bind.address}” connectionTimeout=”20000&#8243; redirectPort=”8443&#8243; /&#62; port=”8080&#8243;改为自定义端口 2、让非本机的局域网地址访问web容器 默认ip绑定的只能通过127.0.0.1:8080/来访问。 修改D:\jboss-5.1.0.GA\bin\run.bat 找到-Djava.endorsed.dirs=”%JBOSS_ENDORSED_DIRS%” ^ 在上边加一行 -Djboss.bind.address=0.0.0.0 ^ 变为如下 :RESTART “%JAVA%” %JAVA_OPTS% ^ -Djboss.bind.address=0.0.0.0 ^ -Djava.endorsed.dirs=”%JBOSS_ENDORSED_DIRS%” ^ -classpath “%JBOSS_CLASSPATH%” ^ org.jboss.Main %* 3、包隔离发布 在xxx.war\WEB-INF\目录下新增jboss-web.xml 内容如下 &#60;!DOCTYPE jboss-web PUBLIC “-//JBoss//DTD Web Application 5.0//EN” “http://www.jboss.org/j2ee/dtd/jboss-web_5_0.dtd”&#62; &#60;jboss-web&#62; &#60;class-loading java2ClassLoadingCompliance=&#8217;true&#8217;&#62; &#60;loader-repository&#62;com.footmarktech:archive=helloworld-0.0.1 &#60;loader-repository-config&#62;java2ParentDelegaton=true&#60;/loader-repository-config&#62; &#60;/loader-repository&#62; &#60;/class-loading&#62; &#60;context-root&#62;helloworld&#60;/context-root&#62; &#60;/jboss-web&#62; 4、中文乱码 在D:\jboss-5.1.0.GA\server\default\deploy\jbossweb.sar\server.xml [...]]]></description>
			<content:encoded><![CDATA[<p>1、web容器改默认端口为自定义端口<br />
在D:\jboss-5.1.0.GA\server\default\deploy\jbossweb.sar\server.xml<br />
找到<br />
&lt;Connector protocol=”HTTP/1.1&#8243; port=”8080&#8243; address=”${jboss.bind.address}” connectionTimeout=”20000&#8243; redirectPort=”8443&#8243; /&gt;<br />
port=”8080&#8243;改为自定义端口<br />
2、让非本机的局域网地址访问web容器<br />
默认ip绑定的只能通过127.0.0.1:8080/来访问。<br />
修改D:\jboss-5.1.0.GA\bin\run.bat<br />
找到-Djava.endorsed.dirs=”%JBOSS_ENDORSED_DIRS%” ^<br />
在上边加一行<br />
-Djboss.bind.address=0.0.0.0 ^<br />
变为如下<br />
:RESTART<br />
“%JAVA%” %JAVA_OPTS% ^<br />
-Djboss.bind.address=0.0.0.0 ^<br />
-Djava.endorsed.dirs=”%JBOSS_ENDORSED_DIRS%” ^<br />
-classpath “%JBOSS_CLASSPATH%” ^<br />
org.jboss.Main %*</p>
<p>3、包隔离发布<br />
在xxx.war\WEB-INF\目录下新增jboss-web.xml<br />
内容如下<br />
&lt;!DOCTYPE jboss-web PUBLIC “-//JBoss//DTD Web Application 5.0//EN”<br />
“http://www.jboss.org/j2ee/dtd/jboss-web_5_0.dtd”&gt;<br />
&lt;jboss-web&gt;</p>
<p>&lt;class-loading java2ClassLoadingCompliance=&#8217;true&#8217;&gt;<br />
&lt;loader-repository&gt;com.footmarktech:archive=helloworld-0.0.1<br />
&lt;loader-repository-config&gt;java2ParentDelegaton=true&lt;/loader-repository-config&gt;<br />
&lt;/loader-repository&gt;<br />
&lt;/class-loading&gt;</p>
<p>&lt;context-root&gt;helloworld&lt;/context-root&gt;<br />
&lt;/jboss-web&gt;<br />
4、中文乱码<br />
在D:\jboss-5.1.0.GA\server\default\deploy\jbossweb.sar\server.xml<br />
找到<br />
&lt;Connector protocol=”HTTP/1.1&#8243; port=”8080&#8243; address=”${jboss.bind.address}” connectionTimeout=”20000&#8243; redirectPort=”8443&#8243; /&gt;<br />
增加attribute URIEncoding=&#8217;UTF-8&#8242;<br />
变成&lt;Connector protocol=”HTTP/1.1&#8243; port=”8080&#8243; address=”${jboss.bind.address}” connectionTimeout=”20000&#8243; redirectPort=”8443&#8243; attribute URIEncoding=&#8217;UTF-8&#8242;/&gt;<br />
5、jboss5部署数据源<br />
1)把mysql的jdbc驱动包mysql-connector-java-5.1.7-bin.jar放进D:\jboss-5.1.0.GA\server\default\lib\中<br />
2)D:\jboss-5.1.0.GA\server\default\deploy中新增一个文件名为mysql-ds.xml<br />
内容如下<br />
&lt;?xml version=”1.0&#8243; encoding=”UTF-8&#8243;?&gt;<br />
&lt;datasources&gt;<br />
&lt;local-tx-datasource&gt;<br />
&lt;jndi-name&gt;MySqlDS&lt;/jndi-name&gt;<br />
&lt;connection-url&gt;jdbc:mysql://127.0.0.1:3306/mytest?user=root&amp;amp;password=root&amp;amp;useUnicode=true&amp;amp;characterEncoding=UTF-8&amp;amp;characterSetResults=UTF-8&lt;/connection-url&gt;<br />
&lt;driver-class&gt;com.mysql.jdbc.Driver&lt;/driver-class&gt;<br />
&lt;user-name&gt;root&lt;/user-name&gt;<br />
&lt;password&gt;root&lt;/password&gt;<br />
&lt;exception-sorter-class-name&gt;org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter&lt;/exception-sorter-class-name&gt;<br />
&lt;!&#8211; should only be used on drivers after 3.22.1 with “ping” support<br />
&lt;valid-connection-checker-class-name&gt;org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker&lt;/valid-connection-checker-class-name&gt;<br />
&#8211;&gt;<br />
&lt;!&#8211; sql to call when connection is created<br />
&lt;new-connection-sql&gt;some arbitrary sql&lt;/new-connection-sql&gt;<br />
&#8211;&gt;<br />
&lt;!&#8211; sql to call on an existing pooled connection when it is obtained from pool &#8211; MySQLValidConnectionChecker is preferred for newer drivers<br />
&lt;check-valid-connection-sql&gt;some arbitrary sql&lt;/check-valid-connection-sql&gt;<br />
&#8211;&gt;</p>
<p>&lt;!&#8211; corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) &#8211;&gt;<br />
&lt;!&#8211;<br />
&lt;metadata&gt;<br />
&lt;type-mapping&gt;mySQL&lt;/type-mapping&gt;<br />
&lt;/metadata&gt;&#8211;&gt;<br />
&lt;/local-tx-datasource&gt;<br />
&lt;/datasources&gt;<br />
3)使用spring获取数据源</p>
<p>&lt;bean id=”dataSource”&gt;<br />
&lt;property name=”jndiName”&gt;&lt;value&gt;java:/MySqlDS&lt;/value&gt;&lt;/property&gt;<br />
&lt;property name=”resourceRef”&gt;&lt;value&gt;false&lt;/value&gt;&lt;/property&gt;<br />
&lt;property name=”jndiEnvironment”&gt;<br />
&lt;props&gt;<br />
&lt;prop key=”java.naming.provider.url”&gt;jnp://localhost:1099&lt;/prop&gt;<br />
&lt;prop key=”java.naming.factory.initial”&gt;org.jnp.interfaces.NamingContextFactory&lt;/prop&gt;<br />
&lt;/props&gt;<br />
&lt;/property&gt;<br />
&lt;/bean&gt;<br />
4)错误<br />
错误1<br />
2010-06-21 06:46:16,934 WARN  [org.jboss.resource.connectionmanager.JBossManagedConnectionPool] (main) Throwable while attempting to get a new connection: null<br />
org.jboss.resource.JBossResourceException: Could not create connection; &#8211; nested throwable: (org.jboss.resource.JBossResourceException: Apparently wrong driver class specified for URL: class: com.mysql.jdbc.Driver, url: jdbc:mysql://127.0.0.1:3306/mytest?user=root&amp;password=root&amp;useUnicode=true&amp;characterEncoding=UTF-8&amp;characterSetResults=UTF-8)<br />
at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:225)<br />
at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:195)</p>
<p>由于mysqljdbc驱动包没有被提前加载，将mysqljdbc驱动放到server/default/lib下即可</p>
<p>错误2<br />
Caused by: javax.xml.bind.UnmarshalException<br />
- with linked exception:<br />
[org.xml.sax.SAXParseException: The reference to entity "password" must end with the ';' delimiter.]<br />
at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(AbstractUnmarshallerImpl.java:315)<br />
at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalException(UnmarshallerImpl.java:514)<br />
at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:215)<br />
at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:190)<br />
at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:238)<br />
at org.jboss.resource.deployers.ManagedConnectionFactoryParserDeployer.parse(ManagedConnectionFactoryParserDeployer.java:123)<br />
at org.jboss.resource.deployers.ManagedConnectionFactoryParserDeployer.parse(ManagedConnectionFactoryParserDeployer.java:63)<br />
at org.jboss.deployers.vfs.spi.deployer.AbstractVFSParsingDeployer.parseAndInit(AbstractVFSParsingDeployer.java:256)<br />
at org.jboss.deployers.vfs.spi.deployer.AbstractVFSParsingDeployer.parse(AbstractVFSParsingDeployer.java:239)<br />
at org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.createMetaData(AbstractParsingDeployerWithOutput.java:355)<br />
&#8230; 33 more<br />
Caused by: org.xml.sax.SAXParseException: The reference to entity “password” must end with the &#8216;;&#8217; delimiter.</p>
<p>jdbc驱动链接书写不正确<br />
jdbc:mysql://127.0.0.1:3306/mytest?user=root&amp;password=root&amp;useUnicode=true&amp;characterEncoding=UTF-8&amp;characterSetResults=UTF-8<br />
jdbc:mysql://127.0.0.1:3306/mytest?user=root&amp;amp;password=root&amp;amp;useUnicode=true&amp;amp;characterEncoding=UTF-8&amp;amp;characterSetResults=UTF-8</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.baimusenlin.com/799.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>javascript验证日期正确性</title>
		<link>http://blog.baimusenlin.com/797.html</link>
		<comments>http://blog.baimusenlin.com/797.html#comments</comments>
		<pubDate>Thu, 24 Jun 2010 09:30:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javaee]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[date]]></category>
		<category><![CDATA[js]]></category>

		<guid isPermaLink="false">http://blog.baimusenlin.com/?p=797</guid>
		<description><![CDATA[&#60;script&#62; function checkDate(dateString){//输入必须为20100101格式 var pattern  = /^(\d{4})(\d{2})(\d{2})$/; var patternResult = pattern.test(dateString); if(!patternResult){ return false; } var _year =dateString.substr(0,4); var _month =dateString.substr(4,2); var _day =dateString.substr(6,2); var mmInt  = parseInt(_month,10); var ddInt  = parseInt(_day,10); if(mmInt&#62;12){return false;} if(mmInt==2){//如果是2月份 if((_year%4==0 &#38;&#38; _year%100!=0)&#124;&#124;_year%400==0){//判断是否为闰年 if(ddInt&#62;29){return false;} }else{ if(ddInt&#62;28){return false;} } } var mm=new Array(1,3,5,7,8,10,12); //判断每月中的最大天数 var maxDay =30; for(i=0;i&#60; mm.length;i++){ if [...]]]></description>
			<content:encoded><![CDATA[<p>&lt;script&gt;</p>
<p>function checkDate(dateString){//输入必须为20100101格式</p>
<p>var pattern 		= /^(\d{4})(\d{2})(\d{2})$/;</p>
<p>var patternResult	= pattern.test(dateString);</p>
<p>if(!patternResult){</p>
<p>return false;</p>
<p>}</p>
<p>var _year	=dateString.substr(0,4);</p>
<p>var _month	=dateString.substr(4,2);</p>
<p>var _day	=dateString.substr(6,2);</p>
<p>var mmInt 	= parseInt(_month,10);</p>
<p>var ddInt 	= parseInt(_day,10);</p>
<p>if(mmInt&gt;12){return false;}</p>
<p>if(mmInt==2){//如果是2月份</p>
<p>if((_year%4==0 &amp;&amp; _year%100!=0)||_year%400==0){//判断是否为闰年</p>
<p>if(ddInt&gt;29){return false;}</p>
<p>}else{</p>
<p>if(ddInt&gt;28){return false;}</p>
<p>}</p>
<p>}</p>
<p>var mm=new Array(1,3,5,7,8,10,12); //判断每月中的最大天数</p>
<p>var maxDay =30;</p>
<p>for(i=0;i&lt; mm.length;i++){</p>
<p>if (mmInt == mm[i]){</p>
<p>maxDay =31;</p>
<p>break;</p>
<p>}else{continue;}</p>
<p>}</p>
<p>if(ddInt&gt;maxDay){return false;}</p>
<p>return true;</p>
<p>}</p>
<p>&lt;/script&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.baimusenlin.com/797.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>pgsql数据库jdbc驱动</title>
		<link>http://blog.baimusenlin.com/795.html</link>
		<comments>http://blog.baimusenlin.com/795.html#comments</comments>
		<pubDate>Thu, 24 Jun 2010 09:29:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javaee]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[jdbc]]></category>
		<category><![CDATA[jdbcdriver]]></category>
		<category><![CDATA[pgsql]]></category>

		<guid isPermaLink="false">http://blog.baimusenlin.com/?p=795</guid>
		<description><![CDATA[1)http://jdbc.postgresql.org/ 2) CREATE TABLE tl_test ( id character varying NOT NULL, “name” character varying, CONSTRAINT tl_test_pkey PRIMARY KEY (id) ) WITH ( OIDS=FALSE ); ALTER TABLE tl_test OWNER TO “admin”; 3) import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class Test { public static void main(String[] args) { try { Class.forName(“org.postgresql.Driver”).newInstance(); Connection con = [...]]]></description>
			<content:encoded><![CDATA[<p>1)http://jdbc.postgresql.org/</p>
<p>2)</p>
<p>CREATE TABLE tl_test</p>
<p>(</p>
<p>id character varying NOT NULL,</p>
<p>“name” character varying,</p>
<p>CONSTRAINT tl_test_pkey PRIMARY KEY (id)</p>
<p>)</p>
<p>WITH (</p>
<p>OIDS=FALSE</p>
<p>);</p>
<p>ALTER TABLE tl_test OWNER TO “admin”;</p>
<p>3)</p>
<p>import java.sql.Connection;</p>
<p>import java.sql.DriverManager;</p>
<p>import java.sql.ResultSet;</p>
<p>import java.sql.Statement;</p>
<p>public class Test {</p>
<p>public static void main(String[] args) {</p>
<p>try {</p>
<p>Class.forName(“org.postgresql.Driver”).newInstance();</p>
<p>Connection con = DriverManager.getConnection(“jdbc:postgresql://127.0.0.1:5432/test”, “admin”, “admin”);</p>
<p>Statement st = con.createStatement();</p>
<p>ResultSet rs = st.executeQuery(“select * from tl_test limit 2 offset 1&#8243;);</p>
<p>while (rs.next()) {</p>
<p>System.out.println(rs.getString(2));</p>
<p>}</p>
<p>st.close();</p>
<p>con.close();</p>
<p>} catch (Exception e) {</p>
<p>e.printStackTrace();</p>
<p>}</p>
<p>}</p>
<p>}</p>
<p>4)pgsql用户手册中文翻译</p>
<p>http://www.phpx.com/man/Pgsql/index.html</p>
<p>5)pgsql导出导入数据</p>
<p>备份:pg_dump dbname &gt; outfile</p>
<p>恢复:psql dbname &lt; infile</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.baimusenlin.com/795.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>resin-3.1.9创建mysql数据源</title>
		<link>http://blog.baimusenlin.com/793.html</link>
		<comments>http://blog.baimusenlin.com/793.html#comments</comments>
		<pubDate>Thu, 24 Jun 2010 09:28:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javaee]]></category>
		<category><![CDATA[spring]]></category>
		<category><![CDATA[jdbc]]></category>
		<category><![CDATA[jdbcdriver]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[resin]]></category>

		<guid isPermaLink="false">http://blog.baimusenlin.com/?p=793</guid>
		<description><![CDATA[1)将mysql数据库jdbc驱动mysql-connector-java-5.1.7-bin.jar放置于D:\resin-3.1.9\ext-lib目录下 2)D:\resin-3.1.9\conf\resin.conf增加 &#60;database&#62; &#60;jndi-name&#62;jdbc/mysql&#60;/jndi-name&#62; &#60;driver type=”com.mysql.jdbc.Driver”&#62; &#60;url&#62;jdbc:mysql://localhost:3306/fare?user=root&#38;amp;password=root&#38;amp;useUnicode=true&#38;amp;characterEncoding=UTF-8&#38;amp;characterSetResults=UTF-8&#60;/url&#62; &#60;user&#62;root&#60;/user&#62; &#60;password&#62;root&#60;/password&#62; &#60;/driver&#62; &#60;prepared-statement-cache-size&#62;8&#60;/prepared-statement-cache-size&#62; &#60;max-connections&#62;20&#60;/max-connections&#62; &#60;max-idle-time&#62;30s&#60;/max-idle-time&#62; &#60;/database&#62; 3)spring中通过jndi获取数据源 &#60;bean id=”dataSource”&#62; &#60;property name=”jndiName”&#62;&#60;value&#62;java:comp/env/jdbc/mysql&#60;/value&#62;&#60;/property&#62; &#60;/bean&#62;]]></description>
			<content:encoded><![CDATA[<p>1)将mysql数据库jdbc驱动mysql-connector-java-5.1.7-bin.jar放置于D:\resin-3.1.9\ext-lib目录下</p>
<p>2)D:\resin-3.1.9\conf\resin.conf增加</p>
<p>&lt;database&gt;</p>
<p>&lt;jndi-name&gt;jdbc/mysql&lt;/jndi-name&gt;</p>
<p>&lt;driver type=”com.mysql.jdbc.Driver”&gt;</p>
<p>&lt;url&gt;jdbc:mysql://localhost:3306/fare?user=root&amp;amp;password=root&amp;amp;useUnicode=true&amp;amp;characterEncoding=UTF-8&amp;amp;characterSetResults=UTF-8&lt;/url&gt;</p>
<p>&lt;user&gt;root&lt;/user&gt;</p>
<p>&lt;password&gt;root&lt;/password&gt;</p>
<p>&lt;/driver&gt;</p>
<p>&lt;prepared-statement-cache-size&gt;8&lt;/prepared-statement-cache-size&gt;</p>
<p>&lt;max-connections&gt;20&lt;/max-connections&gt;</p>
<p>&lt;max-idle-time&gt;30s&lt;/max-idle-time&gt;</p>
<p>&lt;/database&gt;</p>
<p>3)spring中通过jndi获取数据源</p>
<p>&lt;bean id=”dataSource”&gt;</p>
<p>&lt;property name=”jndiName”&gt;&lt;value&gt;java:comp/env/jdbc/mysql&lt;/value&gt;&lt;/property&gt;</p>
<p>&lt;/bean&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.baimusenlin.com/793.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>freemarker认识一</title>
		<link>http://blog.baimusenlin.com/786.html</link>
		<comments>http://blog.baimusenlin.com/786.html#comments</comments>
		<pubDate>Mon, 12 Apr 2010 12:58:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javaee]]></category>
		<category><![CDATA[freemarker]]></category>
		<category><![CDATA[jee]]></category>
		<category><![CDATA[struts2]]></category>
		<category><![CDATA[tpl]]></category>

		<guid isPermaLink="false">http://localhost/baimusenlin/wordpress/?p=786</guid>
		<description><![CDATA[1、freemarker分离模板和数据 2、freemarker通过插值和调用指令来完成数据和模板的合并 插值通过${xxx} 通过标签tag &#60;#调用预定义指令,如&#60;#include “header.tpl”/&#62; 或者&#60;@调用用户自定义指令,如&#60;@myTag  /&#62; 3、freemarker对象缺失值(null)的挑剔特性 freemarker对null值尤其挑剔,出现null后马上会终止后续的模板解释,官方解释是说为了避免程序员出现马虎大意的问题。 插值使用!给初始值,或使用&#60;#if指令进行判断 如 ${xxx!}、${xxx!”"}、&#60;#if xxx?exists &#38;&#38; xxx!=null &#62;&#60;#else&#62;&#60;/#if&#62;、&#60;#if xxx!=null&#62;&#60;/#if&#62; !号对key值是否存在和空值都有判断 4、s2中使用freemarker实现表现层模板 1)尽量保持原型,模板所见即所得原则。 2)不用s2标签。 3)少用freemarker的标签指令 4)将ccs,js,image等网站静态资源和jee web应用分离,在webapp中使用绝对路径的引入。 5)页面传参尽量使用String,传到后台自己格式化。 6)模板尽量不使用&#60;#assign指令,保持模板的被动特性。将数据封装到java中去。 5、s2中使用自定义模板方法 可使用自定义函数进行插值打印或使用自定义指令 UrlMethod.java package app.web.struts2.views.freemarker; import java.util.List; import freemarker.template.TemplateMethodModel; import freemarker.template.TemplateModelException; public class UrlMethod implements TemplateMethodModel { @SuppressWarnings(“unchecked”) public Object exec(List arg0) throws TemplateModelException { if(arg0==null) return null; [...]]]></description>
			<content:encoded><![CDATA[<div>
<p>1、freemarker分离模板和数据</p>
<p>2、freemarker通过插值和调用指令来完成数据和模板的合并</p>
<p>插值通过${xxx}</p>
<p>通过标签tag &lt;#调用预定义指令,如&lt;#include “header.tpl”/&gt;</p>
<p>或者&lt;@调用用户自定义指令,如&lt;@myTag  /&gt;</p>
<p>3、freemarker对象缺失值(null)的挑剔特性</p>
<p>freemarker对null值尤其挑剔,出现null后马上会终止后续的模板解释,官方解释是说为了避免程序员出现马虎大意的问题。</p>
<p>插值使用!给初始值,或使用&lt;#if指令进行判断</p>
<p>如 ${xxx!}、${xxx!”"}、&lt;#if xxx?exists &amp;&amp; xxx!=null &gt;&lt;#else&gt;&lt;/#if&gt;、&lt;#if xxx!=null&gt;&lt;/#if&gt;</p>
<p>!号对key值是否存在和空值都有判断</p>
<p>4、s2中使用freemarker实现表现层模板</p>
<p>1)尽量保持原型,模板所见即所得原则。</p>
<p>2)不用s2标签。</p>
<p>3)少用freemarker的标签指令</p>
<p>4)将ccs,js,image等网站静态资源和jee web应用分离,在webapp中使用绝对路径的引入。</p>
<p>5)页面传参尽量使用String,传到后台自己格式化。</p>
<p>6)模板尽量不使用&lt;#assign指令,保持模板的被动特性。将数据封装到java中去。</p>
<p>5、s2中使用自定义模板方法</p>
<p>可使用自定义函数进行插值打印或使用自定义指令</p>
<p>UrlMethod.java</p>
<p>package app.web.struts2.views.freemarker;</p>
<p>import java.util.List;</p>
<p>import freemarker.template.TemplateMethodModel;</p>
<p>import freemarker.template.TemplateModelException;</p>
<p>public class UrlMethod implements TemplateMethodModel {</p>
<p>@SuppressWarnings(“unchecked”)</p>
<p>public Object exec(List arg0) throws TemplateModelException {</p>
<p>if(arg0==null) return null;</p>
<p>if(arg0.size()==0) return null;</p>
<p>if(arg0.size()&gt;=1){</p>
<p>String l = arg0.get(0).toString()+”.do”;</p>
<p>if(arg0.size()&gt;=2){</p>
<p>l= l+”?”+arg0.get(1);</p>
<p>}</p>
<p>return l;</p>
<p>}</p>
<p>return null;</p>
<p>}</p>
<p>}</p>
<p>FreemarkerManagerEx.java</p>
<p>package app.web.struts2.views.freemarker;</p>
<p>import javax.servlet.ServletContext;</p>
<p>import org.apache.struts2.views.freemarker.FreemarkerManager;</p>
<p>import freemarker.template.Configuration;</p>
<p>import freemarker.template.TemplateException;</p>
<p>public class FreemarkerManagerEx extends FreemarkerManager {</p>
<p>@Override</p>
<p>protected Configuration createConfiguration(ServletContext servletContext) throws TemplateException {</p>
<p>Configuration configuration = super.createConfiguration(servletContext);</p>
<p>configuration.setSharedVariable(“url”,new UrlMethod());</p>
<p>return configuration;</p>
<p>}</p>
<p>}</p>
<p>struts.properties</p>
<p>struts.freemarker.manager.classname=app.web.struts2.views.freemarker.FreemarkerManagerEx</p>
<p>demo.ftl</p>
<p>&lt;a href=”${url(base+&#8217;/Home&#8217;)}”&gt;Home&lt;/a&gt;</p>
<p>产出html&lt;a href=”/Home.do”&gt;Home&lt;/a&gt;</p>
<p>&lt;a href=”${url(base+&#8217;/Home&#8217;,'action=doIndex&amp;pageNo=1&#8242;)}”&gt;Home&lt;/a&gt;</p>
<p>产出html&lt;a href=”/Home.do?action=doIndex&amp;pageNo=1&#8243;&gt;Home&lt;/a&gt;</p>
<p>5、s2中使用自定义指令</p>
<p>package app.web.struts2.views.freemarker;</p>
<p>import java.io.IOException;</p>
<p>import java.io.Writer;</p>
<p>import java.util.Map;</p>
<p>import freemarker.core.Environment;</p>
<p>import freemarker.template.TemplateDirectiveBody;</p>
<p>import freemarker.template.TemplateDirectiveModel;</p>
<p>import freemarker.template.TemplateException;</p>
<p>import freemarker.template.TemplateModel;</p>
<p>public class UrlDirectiveModel implements  TemplateDirectiveModel{</p>
<p>public void execute(Environment env, Map arg1, TemplateModel[] arg2,TemplateDirectiveBody arg3) throws TemplateException, IOException {</p>
<p>freemarker.template.SimpleScalar urlx = (freemarker.template.SimpleScalar)arg1.get(“action”);</p>
<p>String pa=null;</p>
<p>if(arg1.containsKey(“parameters”)){</p>
<p>freemarker.template.SimpleScalar parameters = (freemarker.template.SimpleScalar)arg1.get(“parameters”);</p>
<p>pa = parameters.getAsString();</p>
<p>}</p>
<p>        String url = urlx.getAsString();;</p>
<p>        Writer writer = env.getOut();</p>
<p>        writer.write(“&lt;a href=\”"+url+”.do”+(pa!=null?”?”+pa:”" )+”\”&gt;”);</p>
<p>        if(arg3!=null){</p>
<p>        arg3.render(writer);</p>
<p>        }</p>
<p>        writer.write(“&lt;/a&gt;”);</p>
<p>writer.flush();</p>
<p>}</p>
<p>}</p>
<p>FreemarkerManagerEx.java</p>
<p>package app.web.struts2.views.freemarker;</p>
<p>import javax.servlet.ServletContext;</p>
<p>import org.apache.struts2.views.freemarker.FreemarkerManager;</p>
<p>import freemarker.template.Configuration;</p>
<p>import freemarker.template.TemplateException;</p>
<p>public class FreemarkerManagerEx extends FreemarkerManager {</p>
<p>@Override</p>
<p>protected Configuration createConfiguration(ServletContext servletContext) throws TemplateException {</p>
<p>Configuration configuration = super.createConfiguration(servletContext);</p>
<p>configuration.setSharedVariable(“urlTag”,new UrlDirectiveModel());</p>
<p>return configuration;</p>
<p>}</p>
<p>}</p>
<p>demo.ftl</p>
<p>&lt;@urlTag action=”${base+&#8217;/Home&#8217;}” parameters=”action=doIndex”&gt;Home&lt;/@urlTag&gt;</p>
<p>产出html&lt;a href=”/Home.do?action=doIndex”&gt;Home&lt;/a&gt;</p>
<p>6、宏macro的使用</p>
<p>macro可以在模板中预定义模板,感觉跟自定义指令类似</p>
<p>如</p>
<p>demo.tpl</p>
<p>&lt;#macro myTag arg0 arg1&gt;</p>
<p>helloworld ${arg0!}</p>
<p>&lt;#nested&gt;</p>
<p>&lt;/#macro&gt;</p>
<p>&lt;@myTag arg0=”xxx” arg1=”"&gt;</p>
<p>ok,bye~</p>
<p>&lt;/@myTag&gt;</p>
<p>7、&lt;#include和&lt;#import</p>
<p>&lt;#import 可以以别名的形式引入宏库</p>
<p>&lt;#import “/libs/mylib.ftl” as my&gt;</p>
<p>&lt;@my.copyright date=”1999-2002&#8243;/&gt;</p>
<p>include插入另外一个模板</p>
<p>&lt;#include “/common/navbar.html” parse=false encoding=”UTF-8&#8243;&gt;</p>
<p>8、Expecting a string, date or number here, Expression xxxBean.yyyBean.initialPageSize is instead a freemarker.ext.beans.SimpleMethodModel</p>
<p>在tpl中 ${xxxBean.yyyBean.initialPageSize}</p>
<p>可以确认xxxBean.yyyBean.initialPageSize不等于空，就是无法显示。几经调试终于发现问题，yyyBean中的initialPageSize属性不能和方法名重复，即</p>
<p>yyyBean{</p>
<p>private String initialPageSize; //(1)</p>
<p>public void setInitialPageSize(String s){this.initialPageSize=s;}</p>
<p>public String getInitialPageSize(){return this.initialPageSize;}</p>
<p>public void initialPageSize(String xxx){}//(2)此方法不能存在,方法名和类成员(1)重复了。</p>
<p>}</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.baimusenlin.com/786.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>将struts2的Action变成二级分发控制器以减少对strus2标签的依赖</title>
		<link>http://blog.baimusenlin.com/784.html</link>
		<comments>http://blog.baimusenlin.com/784.html#comments</comments>
		<pubDate>Mon, 12 Apr 2010 12:56:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javaee]]></category>
		<category><![CDATA[dispatcher]]></category>
		<category><![CDATA[struts2]]></category>

		<guid isPermaLink="false">http://localhost/baimusenlin/wordpress/?p=784</guid>
		<description><![CDATA[struts2是MVC框架,其中org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter过滤器是前端控制器 使用Action类模拟二级分发控制器来实现减少对s2标签的依赖,这样的话对模板原型的破坏会比较小,实现方式如下 public class _Base extends ActionSupport{ private String action =”"; private String message =”"; public void setAction(String action){this.action=action;} public String getAction(){return this.action;} public void setMessage(String message){this.message=message;} public String getMessage(return this.message); public String dispatcher(){ String _action = this.getAction(); String _invokeAction =”doIndex”; if(StringUtils.isBlank(_action)){ }else{ _invokeAction = _action; } String _result = SUCCESS; try{ Object obj = [...]]]></description>
			<content:encoded><![CDATA[<div>
<p>struts2是MVC框架,其中org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter过滤器是前端控制器</p>
<p>使用Action类模拟二级分发控制器来实现减少对s2标签的依赖,这样的话对模板原型的破坏会比较小,实现方式如下</p>
<p>public class _Base extends ActionSupport{</p>
<p>private String action =”";</p>
<p>private String message =”";</p>
<p>public void setAction(String action){this.action=action;}</p>
<p>public String getAction(){return this.action;}</p>
<p>public void setMessage(String message){this.message=message;}</p>
<p>public String getMessage(return this.message);</p>
<p>public String dispatcher(){</p>
<p>String _action = this.getAction();</p>
<p>String _invokeAction =”doIndex”;</p>
<p>if(StringUtils.isBlank(_action)){</p>
<p>}else{</p>
<p>_invokeAction = _action;</p>
<p>}</p>
<p>String _result = SUCCESS;</p>
<p>try{</p>
<p>Object obj = org.apache.commons.beanutils.MethodUtils.invokeMethod(this, _action, new Object[]{});</p>
<p>if(obj!=null){</p>
<p>_result = obj.toString();</p>
<p>}</p>
<p>}catch(Exception e){</p>
<p>this.setMessage(e.getMessage());</p>
<p>}</p>
<p>return _result;</p>
<p>}</p>
<p>public String doIndex(){</p>
<p>return SUCCESS;</p>
<p>}</p>
<p>}</p>
<p>public class Login extends _Base{</p>
<p>private String username=”";</p>
<p>private String password=”";</p>
<p>public void setUsername(String username){this.username=username;}</p>
<p>public String getUsername(){return this.username;}</p>
<p>public void setPassword(String password){this.password=password;}</p>
<p>public String getPassword(){return this.password;}</p>
<p>public String doLogin(){</p>
<p> try{</p>
<p>  //invoke service</p>
<p>  return “home”;</p>
<p> }catch(Exception e){</p>
<p> }</p>
<p>retrun INPUT;</p>
<p>}</p>
<p>public String doLogout(){</p>
<p> //clear session</p>
<p>return SUCCESS;</p>
<p>}</p>
<p>}</p>
<p>struts.xml</p>
<p>&lt;action name=”Login” method=”dispatcher”&gt;</p>
<p>&lt;result name=”success” type=”freemarker”&gt;/WEB-INF/content/Login.ftl&lt;/result&gt;</p>
<p>&lt;result name=”input” type=”freemarker”&gt;/WEB-INF/content/Login.ftl&lt;/result&gt;</p>
<p>&lt;result name=”home” type=”redirectAction”&gt;Home&lt;/result&gt;</p>
<p>&lt;/action&gt;</p>
<p>Login.ftl</p>
<p>&lt;html&gt;&lt;head&gt;&lt;title&gt;&lt;/title&gt;&lt;/head&gt;&lt;body&gt;</p>
<p>&lt;form&gt;</p>
<p>&lt;input type=”hidden” name=”action” value=”doLogin”/&gt;&lt;!&#8211;此隐藏域作为分发器的分发标志&#8211;&gt;</p>
<p>&lt;input type=”text” name=”username” value=”${username}”/&gt;</p>
<p>&lt;input type=”text” name=”password” value=”${password}”/&gt;</p>
<p>&lt;input type=”submit” value=”登陆”/&gt;</p>
<p>&lt;/form&gt;</p>
<p>&lt;/body&gt;&lt;/html&gt;</p>
<p>登出的链接则产生 Login.do?action=doLogout</p>
<p>此思想来源于php的mvc实现,在php中实现MVC的框架一般都是有一个前端控制器如</p>
<p>index.php,通过传参调用不同的控制器和action,如</p>
<p>index.php?ctrl=Login&amp;action=defaultView</p>
<p>index.php?ctrl=Login&amp;action=doLogin</p>
<p>index.php?ctrl=Login&amp;action=doLogout</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.baimusenlin.com/784.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在Weblogic10部署的sybase数据源SQLState: 01ZZZ、010DP警告</title>
		<link>http://blog.baimusenlin.com/428.html</link>
		<comments>http://blog.baimusenlin.com/428.html#comments</comments>
		<pubDate>Fri, 19 Mar 2010 15:08:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javaee]]></category>
		<category><![CDATA[weblogic]]></category>
		<category><![CDATA[sybase]]></category>

		<guid isPermaLink="false">http://blog.baimusenlin.com/?p=428</guid>
		<description><![CDATA[环境 weblogic10 sybase15 WARN: SQL Warning: 4016, SQLState: 01ZZZ 19.3.2010 10:26:25 org.hibernate.util.JDBCExceptionReporter logWarnings WARN: Language name in login record &#8216;chinese&#8217; is not an official name on this ASE. Using default &#8216;us_english&#8217; from syslogins instead. 19.3.2010 10:26:25 org.hibernate.util.JDBCExceptionReporter logWarnings WARN: SQL Warning: 0, SQLState: 010DP 19.3.2010 10:26:25 org.hibernate.util.JDBCExceptionReporter logWarnings WARN: 010DP: 忽略了重复连接属性 charset。 解析 SQLState: 01ZZZ [...]]]></description>
			<content:encoded><![CDATA[<p>环境<br />
weblogic10<br />
sybase15</p>
<p>WARN: SQL Warning: 4016, SQLState: 01ZZZ<br />
19.3.2010 10:26:25 org.hibernate.util.JDBCExceptionReporter logWarnings<br />
WARN: Language name in login record &#8216;chinese&#8217; is not an official name on this ASE. Using default &#8216;us_english&#8217; from syslogins instead.</p>
<p>19.3.2010 10:26:25 org.hibernate.util.JDBCExceptionReporter logWarnings<br />
WARN: SQL Warning: 0, SQLState: 010DP<br />
19.3.2010 10:26:25 org.hibernate.util.JDBCExceptionReporter logWarnings<br />
WARN: 010DP: 忽略了重复连接属性 charset。</p>
<p>解析<br />
SQLState: 01ZZZ<br />
在jdbc驱动属性中加上language=us_english</p>
<p>LANGUAGE<br />
设置从服务器返回的错误消息和 jConnect 消息的语言。该设置必须是 syslanguages 中的一种语言。</p>
<p>SQLState: 010DP是由于在配置weblobic10数据源时,在url和properties属性中都配置了charset属性<br />
丢弃一个就可以了。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.baimusenlin.com/428.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>com.sybase.jdbc3.jdbc.SybSQLException: Couldn&#039;t find an available partition descriptor. Raise the value of the configuration parameter &#039;number of open partitions&#039; for more partition descriptors.</title>
		<link>http://blog.baimusenlin.com/423.html</link>
		<comments>http://blog.baimusenlin.com/423.html#comments</comments>
		<pubDate>Fri, 19 Mar 2010 02:53:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javaee]]></category>
		<category><![CDATA[jdbc]]></category>
		<category><![CDATA[sp_configure]]></category>
		<category><![CDATA[sybase]]></category>

		<guid isPermaLink="false">http://blog.baimusenlin.com/?p=423</guid>
		<description><![CDATA[com.sybase.jdbc3.jdbc.SybSQLException: Couldn&#8217;t find an available partition descriptor. Raise the value of the configuration parameter &#8216;number of open partitions&#8217; for more partition descriptors. org.springframework.jdbc.UncategorizedSQLException: Hibernate operation: Could not execute query; uncategorized SQLException for SQL []; SQL state [ZZZZZ]; error code [14126]; Couldn&#8217;t find an available partition descriptor. Raise the value of the configuration parameter &#8216;number of [...]]]></description>
			<content:encoded><![CDATA[<p>com.sybase.jdbc3.jdbc.SybSQLException: Couldn&#8217;t find an available partition descriptor. Raise the value of the configuration parameter &#8216;number of open partitions&#8217; for more partition descriptors.</p>
<p>org.springframework.jdbc.UncategorizedSQLException:<br />
Hibernate operation: Could not execute query;<br />
uncategorized SQLException for SQL []; SQL state [ZZZZZ]; error code [14126]; Couldn&#8217;t find an available partition descriptor. Raise the value of the configuration parameter &#8216;number of open partitions&#8217; for more partition descriptors.;<br />
nested exception is com.sybase.jdbc3.jdbc.SybSQLException: Couldn&#8217;t find an available partition descriptor. Raise the value of the configuration parameter &#8216;number of open partitions&#8217; for more partition descriptors.</p>
<p>从报错来看是Sybase15数据库的参数配置问题</p>
<p>摘自</p>
<p>http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.dc00729_1500/html/errMessageAdvRes/CHDGEGGC.htm</p>
<p>Error 14126<br />
Severity</p>
<p>17</p>
<p>Message text</p>
<p>Couldn&#8217;t find an available partition descriptor. Raise the value of the configuration parameter &#8216;number of open partitions&#8217; for more partition descriptors.</p>
<p>Explanation</p>
<p>In Adaptive Server Enterprise version 15.0 and later, all tables have at least one partition, whether or not a partition was explicitly defined on the table. When you upgrade a database to Adaptive Server Enterprise 15.x, all existing tables in the database are modified to have one partition. When data is accessed from a table, necessary partitions are kept open; however, a DBA can limit the number of open partitions at any given point of time. This error indicates that there is not enough room to open a new partition.<br />
Action</p>
<p>Use sp_configure to set the number of open partitions value appropriately for your server. See “Setting Configuration Parameters” in the System Administration Guide: Volume 1 for details on setting this parameter.<br />
Versions in which this error is raised</p>
<p>Version 15.0 and later</p>
<p>sybase,jdbc,sp_configure</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.baimusenlin.com/423.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HMGR0024W: 查找核心组成员的主机名的 IP 地址时发生错误。主机名为 xxxServer，异常为 java.net.UnknownHostException: xxxServer: xxxServer</title>
		<link>http://blog.baimusenlin.com/417.html</link>
		<comments>http://blog.baimusenlin.com/417.html#comments</comments>
		<pubDate>Fri, 12 Feb 2010 01:56:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javaee]]></category>
		<category><![CDATA[websphere]]></category>
		<category><![CDATA[DM]]></category>
		<category><![CDATA[hosts]]></category>
		<category><![CDATA[nodeagent]]></category>
		<category><![CDATA[was]]></category>
		<category><![CDATA[was61]]></category>

		<guid isPermaLink="false">http://blog.baimusenlin.com/?p=417</guid>
		<description><![CDATA[环境描述 Windows平台 IBMWAS6.1.0.29 使用DM控制网络节点,DM由于无法获得受控节点的主机名导致DM无法启动 报错信息如下 [10-2-12 9:48:44:812 CST] 0000000a HostNameMap   E   HMGR0024W: 查找核心组成员的主机名的 IP 地址时发生错误。主机名为 xxxServer，异常为 java.net.UnknownHostException: xxxServer: xxxServer at java.net.InetAddress.getAllByName0(InetAddress.java:1247) at java.net.InetAddress.getAllByName(InetAddress.java:1174) at java.net.InetAddress.getAllByName(InetAddress.java:1097) at com.ibm.ws.hamanager.coordinator.dcs.HostNameMap.getInetAddresses(HostNameMap.java:182) at com.ibm.ws.hamanager.coordinator.dcs.HostNameMap.&#60;init&#62;(HostNameMap.java:62) at com.ibm.ws.hamanager.coordinator.dcs.HostNameMapManager.getHostNameMap(HostNameMapManager.java:87) [10-2-12 9:48:49:953 CST] 0000000a AppProfileCom I   ACIN0009I: 正在停止 Application Profiling 服务。 [10-2-12 9:48:49:953 CST] 0000000a ActivitySessi I   WACS0049I: ActivitySession Service 正在停止。 [10-2-12 9:48:50:031 CST] [...]]]></description>
			<content:encoded><![CDATA[<p>环境描述<br />
Windows平台<br />
IBMWAS6.1.0.29<br />
使用DM控制网络节点,DM由于无法获得受控节点的主机名导致DM无法启动</p>
<p>报错信息如下</p>
<p>[10-2-12 9:48:44:812 CST] 0000000a HostNameMap   E   HMGR0024W: 查找核心组成员的主机名的 IP 地址时发生错误。主机名为 xxxServer，异常为 java.net.UnknownHostException: xxxServer: xxxServer<br />
at java.net.InetAddress.getAllByName0(InetAddress.java:1247)<br />
at java.net.InetAddress.getAllByName(InetAddress.java:1174)<br />
at java.net.InetAddress.getAllByName(InetAddress.java:1097)<br />
at com.ibm.ws.hamanager.coordinator.dcs.HostNameMap.getInetAddresses(HostNameMap.java:182)<br />
at com.ibm.ws.hamanager.coordinator.dcs.HostNameMap.&lt;init&gt;(HostNameMap.java:62)<br />
at com.ibm.ws.hamanager.coordinator.dcs.HostNameMapManager.getHostNameMap(HostNameMapManager.java:87)</p>
<p>[10-2-12 9:48:49:953 CST] 0000000a AppProfileCom I   ACIN0009I: 正在停止 Application Profiling 服务。<br />
[10-2-12 9:48:49:953 CST] 0000000a ActivitySessi I   WACS0049I: ActivitySession Service 正在停止。<br />
[10-2-12 9:48:50:031 CST] 0000000a CGBridgeServi I   CWRCB0103I: 核心组网桥服务已停止。<br />
[10-2-12 9:48:50:078 CST] 0000000a WsServerImpl  E   WSVR0009E: 启动期间发生错误<br />
META-INF/ws-server-components.xml<br />
[10-2-12 9:48:50:078 CST] 0000000a WsServerImpl  E   WSVR0009E: 启动期间发生错误<br />
com.ibm.ws.exception.RuntimeError: com.ibm.ws.exception.RuntimeError: Unable to start the CoordinatorComponentImpl<br />
at com.ibm.ws.runtime.WsServerImpl.bootServerContainer(WsServerImpl.java:199)<br />
at com.ibm.ws.runtime.WsServerImpl.start(WsServerImpl.java:140)<br />
at com.ibm.ws.runtime.WsServerImpl.main(WsServerImpl.java:461)<br />
at com.ibm.ws.runtime.WsServer.main(WsServer.java:59)<br />
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<br />
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)<br />
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<br />
at java.lang.reflect.Method.invoke(Method.java:618)<br />
at com.ibm.wsspi.bootstrap.WSLauncher.launchMain(WSLauncher.java:183)<br />
at com.ibm.wsspi.bootstrap.WSLauncher.main(WSLauncher.java:90)<br />
at com.ibm.wsspi.bootstrap.WSLauncher.run(WSLauncher.java:72)<br />
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)<br />
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)<br />
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)<br />
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)<br />
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)<br />
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<br />
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)<br />
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<br />
at java.lang.reflect.Method.invoke(Method.java:618)<br />
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:340)<br />
at org.eclipse.core.launcher.Main.basicRun(Main.java:282)<br />
at org.eclipse.core.launcher.Main.run(Main.java:981)<br />
at com.ibm.wsspi.bootstrap.WSPreLauncher.launchEclipse(WSPreLauncher.java:339)<br />
at com.ibm.wsspi.bootstrap.WSPreLauncher.main(WSPreLauncher.java:94)<br />
Caused by: com.ibm.ws.exception.RuntimeError: Unable to start the CoordinatorComponentImpl<br />
at com.ibm.ws.hamanager.runtime.CoordinatorComponentImpl.start(CoordinatorComponentImpl.java:302)<br />
at com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.java:977)<br />
at com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:673)<br />
at com.ibm.ws.runtime.component.ServerImpl.start(ServerImpl.java:526)<br />
at com.ibm.ws.runtime.WsServerImpl.bootServerContainer(WsServerImpl.java:192)<br />
&#8230; 24 more<br />
Caused by: com.ibm.wsspi.hamanager.HAInternalStateException: failure creating the Coordinator<br />
at com.ibm.ws.hamanager.coordinator.impl.CoordinatorImpl.&lt;init&gt;(CoordinatorImpl.java:336)<br />
at com.ibm.ws.hamanager.coordinator.corestack.CoreStackFactoryImpl.createDefaultCoreStack(CoreStackFactoryImpl.java:88)<br />
at com.ibm.ws.hamanager.runtime.CoordinatorComponentImpl.start(CoordinatorComponentImpl.java:272)<br />
&#8230; 28 more<br />
Caused by: com.ibm.wsspi.hamanager.datastack.DataStackException: Failure creating core stack<br />
at com.ibm.ws.hamanager.coordinator.impl.DCSPluginImpl.&lt;init&gt;(DCSPluginImpl.java:252)<br />
at com.ibm.ws.hamanager.coordinator.impl.CoordinatorImpl.&lt;init&gt;(CoordinatorImpl.java:329)<br />
&#8230; 30 more<br />
Caused by: com.ibm.wsspi.hamanager.HAException: Host name xxxServer is not registered in DNS<br />
at com.ibm.ws.hamanager.coordinator.dcs.HostNameMap.&lt;init&gt;(HostNameMap.java:68)<br />
at com.ibm.ws.hamanager.coordinator.dcs.HostNameMapManager.getHostNameMap(HostNameMapManager.java:87)<br />
at com.ibm.ws.hamanager.coordinator.dcs.CoreStackMembershipManager.createMemberMapping(CoreStackMembershipManager.java:473)<br />
at com.ibm.ws.hamanager.coordinator.dcs.CoreStackMembershipManager.&lt;init&gt;(CoreStackMembershipManager.java:120)<br />
at com.ibm.ws.hamanager.coordinator.impl.DCSPluginImpl.&lt;init&gt;(DCSPluginImpl.java:220)<br />
&#8230; 31 more<br />
Caused by: java.net.UnknownHostException: xxxServer: xxxServer<br />
at java.net.InetAddress.getAllByName0(InetAddress.java:1247)<br />
at java.net.InetAddress.getAllByName(InetAddress.java:1174)<br />
at java.net.InetAddress.getAllByName(InetAddress.java:1097)<br />
at com.ibm.ws.hamanager.coordinator.dcs.HostNameMap.getInetAddresses(HostNameMap.java:182)<br />
at com.ibm.ws.hamanager.coordinator.dcs.HostNameMap.&lt;init&gt;(HostNameMap.java:62)<br />
&#8230; 35 more</p>
<p>解决办法<br />
在C:\WINDOWS\system32\drivers\etc\hosts文件中直接增加改主机名和ip的对应关系，启动DM即可。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.baimusenlin.com/417.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

