Seitenhistorie
Hier mal ein paar Problemchen, die mir bisher beim Rumspielen am Quellcode aufgefallen sind.
- Keine einheitliche Kodierung der Quellen, deswegen sind an mehreren Stellen die Umlaute usw. verhunzt.
- Vorschlag: UTF-8 als Standardkodierung
- JDBC-URLs fest an mehreren Stellen im Quellcode, dann mal ein properties-File
- Vorschlag: Definition einer DataSource, z.B. in webroot/META-INF/context.xml oder in $TOMCAT_HOME/conf/Catalina/$HOSTNAME/wadoku.xml oder server.xml
Referenzierung recht schmerzfrei mitCodeblock xml xml <Context path="/wadoku" docBase=".../wadoku/webroot" debug="0" reloadable="true"> <Resource name="jdbc/WadokuDS" auth="Container" type="javax.sql.DataSource" username="username" password="password" driverClassName="com.mysql.jdbc.Driver" maxActive="20" maxIdle="10" url="jdbc:mysql://localhost/wadoku2?autoReconnect=true&useUnicode=true&characterEncoding=UTF8"/> </Context>
Codeblock Context envCtx = (Context) new InitialContext().lookup("java:comp/env"); DataSource ds = (DataSource) envCtx.lookup("jdbc/WadokuDS"); // oder // DataSource ds = (DataSource) new InitialContext().lookup("java:comp/env/jdbc/WadokuDS"); Connection con = ds.getConnection();
- Vorschlag: Definition einer DataSource, z.B. in webroot/META-INF/context.xml oder in $TOMCAT_HOME/conf/Catalina/$HOSTNAME/wadoku.xml oder server.xml
- insgesamt weg von statischen Pfadangaben im Quelltext
- Vorschlag: properties-File oder <Resource...>-Angabe ähnlich oben
- mangelhafte Kodierung der URLs
- Vorschlag: immer explizite Angabe der Kodierung mittels URLEncoder.encode( shlp, "UTF-8" )
Überblick
Inhalte