網頁

2014年2月23日 星期日

Exception starting filter struts2 Unable to load configuration. - bean

原本在 WebSphere 跑得好好的程式,怎麼換到 Tomcat 又出問題了?
2014/2/23 下午 09:30:16 org.apache.catalina.core.StandardContext filterStart 嚴重的: Exception starting filter struts2 Unable to load configuration. - bean - jar:file:/D:/WebServer/tomcat-7.0.33/webapps/1qrcardadm/WEB-INF/lib/struts2-core-2.3.15.1.jar!/struts-default.xml:53:178 at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:502) at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:74) ... 19 more Caused by: Unable to load configuration. - bean - jar:file:/D:/WebServer/tomcat-7.0.33/webapps/1qrcardadm/WEB-INF/lib/struts2-core-2.3.15.1.jar!/struts-default.xml:53:178 at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:70) at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:446) at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:490) ... 20 more Caused by: Unable to load bean: type:org.apache.struts2.dispatcher.multipart.MultiPartRequest class:org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest - bean - jar:file:/D:/WebServer/tomcat-7.0.33/webapps/1qrcardadm/WEB-INF/lib/struts2-core-2.3.15.1.jar!/struts-default.xml:53:178 at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:245) at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:102) at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:226) at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:67) ... 22 more Caused by: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileUploadBase$SizeLimitExceededException at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389) at java.lang.Class.getDeclaredConstructors(Class.java:1836) at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:235) ... 25 more Caused by: java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileUploadBase$SizeLimitExceededException at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559) ... 29 more


最後從 Caused by: java.lang.NoClassDefFoundError: org/apache/commons/fileupload 看出個大概,將 commons-fileupload-1.3.jar 丟到 lib 去,問題解決。
閱讀全文...

Connect to MySQL with JDBC driver

目錄
1. Connection to database with Java
2. MySQL JDBC Driver
3. Java JDBC connection example

1. Connect to database with java
在 java 要連接到資料最簡單就是使用各資料庫提供的驅動程式,透過 JDBC 提供的接口來使用和操作資料庫。

2. MySQL JDBC Driver
從 Java 要連接到 MySQL ,你必須使用 MySQL JDBC 驅動程式。最新版的驅動程式可以從 MySQL 官網 下載,要下載此驅動程式需要有 Oracle Web 的帳號(沒有,可以註冊一個新的)。
NOTE: 安裝過程完全沒顯示會裝在哪,直接會裝在系統槽,如C:,目錄則為 C:\Program Files\MySQL\MySQL Connector J ,目錄中一拖車的東西,其實所需要的只有 mysql-connector-java-版號-bin.jar 這個檔案。

3. Java JDBC connection example
NOTE:請記得將驅動程式的 jar 加到 classpath 中。
import java.sql.DriverManager; import java.sql.Connection; import java.sql.SQLException; public class MySQLJDBC { public static void main(String[] argv) { System.out.println("========== MySQL JDBC Connection Testing =========="); try { Class.forName("com.mysql.jdbc.Driver"); System.out.println("MySQL JDBC Driver Registered!"); Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/YourDB","UserAcct", "UserPwd"); System.out.println("Database connected!"); } catch (ClassNotFoundException e) { System.out.println("Where is your MySQL JDBC Driver?"); e.printStackTrace(); } catch (SQLException se) { System.out.println("Connection Failed! " + se.getMessage()); se.printStackTrace(); } } }

閱讀全文...

[紙模]烈火武者鋼彈

歷經的十個月,有空時就抓緊時間一個零件一個零件的完成,我最想做的紙模終於整個完成了,現在擺在家裡的櫃子裡。
這兩天老爸從金門來台灣,看了看,說這支很不錯,做大隻一點更好。













閱讀全文...

[紙模]烈火武者鋼彈-武器

原本的武器有兩把,做得太順手,沒拍過程,成品也只拍了一支,最後一把長刀,要先把完成品的圖傳給設計者就會拿到。



閱讀全文...

[紙模]烈火武者鋼彈-手部

手部的小零件更多了,每根手指頭,一個一個黏。


製作過程:











組合:

閱讀全文...

[紙模]烈火武者鋼彈-腳部

腳的小零件比較多,真的是折磨人。

製作過程:







組合:

閱讀全文...

2014年2月21日 星期五

How to get the HttpServletRequest in Struts 2

Struts 2 可透過 org.apache.struts2.ServletActionContext 來取得 HttpServletRequest
HttpServletRequest request = ServletActionContext.getRequest();
閱讀全文...

How to get ip address in java servlet

一般都是用下列的方式來取得客戶端的 ip 位址
String ipAddress = request.getRemoteAddr();
可是當客戶端是經過 proxy server 或是 load balancer server 來連接,這樣就取不到原始的 ip 位址,此時要透過 http request Header 中的 X-FORWARDED-FOR 來取得 ip 位址
String ipAddress = request.getHeader("X-FORWARDED-FOR"); if (ipAddress == null || "".equals(ipAddress)) { ipAddress = request.getRemoteAddr(); }

閱讀全文...

2014年2月19日 星期三

[紙模]烈火武者鋼彈-腰部

看似簡單,但是零件其實也不少,腰帶完成。

製作過程:


組合:

閱讀全文...

2014年2月18日 星期二

[紙模]烈火武者鋼彈-胸部

花了八個晚上,每個晚上四到五個鐘頭,完成了頭部,這次的進度-胸部,又會花多少時間??
完成圖:


總共花了五個晚上,這次的零件比較大,工比較少點。
底下是製作過程:

組合:

閱讀全文...