2009年5月6日
#
一,錯誤:java.lang.ClassCastException: oracle.sql.BLOB
一般在存儲blob數據時首先要將java.sql.Blob類型轉為oracle.sql.BLOB再進行寫入操作,在強制轉換時就會丟
java.lang.ClassCastException: oracle.sql.BLOB轉型錯誤,形如:
SerializableBlob sb = (SerializableBlob) instance.getBlobData();
BLOB wrapblob = (BLOB) sb.getWrappedBlob();//此行丟出
主要原因少此行:session.refresh(instance, LockMode.UPGRADE);加鎖查詢出,這樣instance中存放的Blob數據就
是oracle.sql.BLOB類型的。
二,錯誤:SQL Error: 1002, SQLState: 72000,ORA-01002: 提取違反順序 出現這樣的錯誤一定是事務沒有控制好,用ssh
框架請檢查調用此功能的method是否在事務控制中,直接用hibernate操作是否有開事務。正確配置好事務就不會有
問題了。
2008年4月10日
#
struts2中使用二級聯動標簽<s:doubleselect/>時總是丟:XML descendants internal method called on incompatible HTMLDocument 錯誤,檢查標簽格式,取值以及listKey,listValue,doubleName,boubleList,doubleListKey,doubleListValue.......所有可能出錯的地方,但就是一直丟這個錯誤,后來檢查標簽<s:doubleselect/>外面有一個<s:form action="" type="post">....</s:form>,問題就出在這里,將action屬性賦值,eg:action="xxxxAction.action"就好了,或者干脆將action屬性砍掉!一切正常!!
2008年4月2日
#
spring2+struts2+hibernate3架構下,在spring中配置quartz(1.6版本)一運行就丟:java.lang.NoSuchMethodError: org.apache.commons.collections.SetUtils.orderedSet(Ljava/util/Set;)Ljava/util/Set.......這樣的錯誤,在網上找了很久都提到更換commons-collections.jar到3.0以上的版本,自己試了多次,3.2的也拉下來試了,但是終沒有解決,仍然出那個錯誤,最后將commons-collections.jar刪除掉再運行,發現還是報這個錯誤,所以就懷疑classpath下面肯定還有commons-collection.jar,仔細檢查,原來我自己將tomcat下的lib也導入進來了,里面有一個commons-collection.jar(2.0版本),暈啊!馬上砍掉,導入commons-collection.jar 3.0版本,一切OK,郁悶了一個晚上!!!!
2008年3月18日
#
tomcat控制臺會打出如下警告:
WARN - No configuration found for the specified action: 'xxxxx'in namespace: '/'. Form action defaulting to 'action' attribute's literal value.
主要由于在寫struts2表單時有給action指定全名,如:<s:form action="xxxAction.do"...>,直接寫成<s:form action="xxxAction"...>即可,因為
在struts.xml中struts.action.extension屬性有指定啦。
struts2.0.11版本不支持el,因而以前在低版本下寫和程式將不能正常運行:
下面是一段分頁所用的循環:
<c:forEach var="i" begin="1" end="${requestScope.page.afterPage}" step="1">
<c:if
test="${requestScope.page.indexPage<requestScope.page.totalPage && requestScope.page.indexPage+i<requestScope.page.totalPage}">
<s:url id="afterUrl" value="/photoItemsList.html">
<s:param name="indexPage" value="${requestScope.page.indexPage+i}" /><!-- struts2.0.11中已不支持el,因而<s:url>將取不到相關值-->
</s:url>
<s:a theme="ajax" href="%{afterUrl}" indicator="indicator" showLoadingText="false" targets="pageItems">
<c:out value="${requestScope.page.indexPage+i}" /> </s:a>
</c:if>
</c:forEach>
修改成如下:
<c:forEach var="i" begin="1" end="${requestScope.page.afterPage}" step="1">
<c:set value="${i}" var="var"/>
<c:if test="${requestScope.page.indexPage<requestScope.page.totalPage && requestScope.page.indexPage+i<requestScope.page.totalPage}">
<s:url id="afterUrl" value="/photoItemsList.html">
<s:param name="indexPage" value="#request.page.indexPage+#attr.var" />
</s:url>
<s:a theme="ajax" href="%{afterUrl}" indicator="indicator" showLoadingText="false" targets="pageItems">
<c:out value="${requestScope.page.indexPage+i}" /> </s:a>
</c:if>
</c:forEach>