diff --git a/examples/tiny-webapp/Hello/src/java/wombat/HelloServlet.java b/examples/tiny-webapp/Hello/src/java/wombat/HelloServlet.java
index 675d5e2076..5061973a8c 100644
--- a/examples/tiny-webapp/Hello/src/java/wombat/HelloServlet.java
+++ b/examples/tiny-webapp/Hello/src/java/wombat/HelloServlet.java
@@ -21,13 +21,16 @@ public void doPost(HttpServletRequest request, HttpServletResponse response)
String name = request.getParameter("name");
response.setContentType("text/html");
- PrintWriter out = response.getWriter();
-
- logger.info("About to say hello to "+name);
-
- out.println("
");
- out.println(" Hello there " + name + ". How are you today?
");
- out.println("");
- out.close();
+ try{
+ PrintWriter out = response.getWriter();
+
+ logger.info("About to say hello to "+name);
+
+ out.println("");
+ out.println(" Hello there " + name + ". How are you today?
");
+ out.println("");
+ }finally{
+ out.close();
+ }
}
}
diff --git a/examples/tiny-webapp/Tata/src/java/wombat/TataServlet.java b/examples/tiny-webapp/Tata/src/java/wombat/TataServlet.java
index 0bda18d66a..52edd463b7 100644
--- a/examples/tiny-webapp/Tata/src/java/wombat/TataServlet.java
+++ b/examples/tiny-webapp/Tata/src/java/wombat/TataServlet.java
@@ -21,13 +21,16 @@ public void doPost(HttpServletRequest request, HttpServletResponse response)
String name = request.getParameter("name");
response.setContentType("text/html");
- PrintWriter out = response.getWriter();
-
- logger.info("About to say Tata to "+name);
+ try{
+ PrintWriter out = response.getWriter();
+
+ logger.info("About to say Tata to "+name);
- out.println("");
- out.println("Many tata's to you " + name + ". How are you today?
");
- out.println("");
- out.close();
+ out.println("");
+ out.println("Many tata's to you " + name + ". How are you today?
");
+ out.println("");
+ }finally{
+ out.close();
+ }
}
}
diff --git a/src/main/java/org/apache/log4j/helpers/SyslogWriter.java b/src/main/java/org/apache/log4j/helpers/SyslogWriter.java
index bfbbcb8a6e..74c881bacf 100644
--- a/src/main/java/org/apache/log4j/helpers/SyslogWriter.java
+++ b/src/main/java/org/apache/log4j/helpers/SyslogWriter.java
@@ -138,8 +138,9 @@ public void close() {
flush();
} catch (IOException e) {
// should throw it ... can't change method sig. though
+ }finally{
+ ds.close();
}
- ds.close();
}
}
diff --git a/src/main/java/org/apache/log4j/joran/action/PropertyAction.java b/src/main/java/org/apache/log4j/joran/action/PropertyAction.java
index 473dc1f76a..22ecabe2ed 100644
--- a/src/main/java/org/apache/log4j/joran/action/PropertyAction.java
+++ b/src/main/java/org/apache/log4j/joran/action/PropertyAction.java
@@ -61,8 +61,7 @@ public void begin(
try {
FileInputStream istream = new FileInputStream(fileName);
- props.load(istream);
- istream.close();
+ props.load(istream);
setProperties(ec, props);
} catch (IOException e) {
String errMsg = "Could not read properties file [" + fileName + "].";
@@ -70,7 +69,9 @@ public void begin(
ec.addError(new ErrorItem(INVALID_ATTRIBUTES, e));
getLogger().error("Ignoring configuration file [" + fileName + "].");
- }
+ }finally{
+ istream.close();
+ }
} else if (
!(Option.isEmpty(name) || Option.isEmpty(value))
&& Option.isEmpty(fileName)) {
diff --git a/src/main/java/org/apache/log4j/net/JMSReceiver.java b/src/main/java/org/apache/log4j/net/JMSReceiver.java
index b26541a651..9073144d40 100644
--- a/src/main/java/org/apache/log4j/net/JMSReceiver.java
+++ b/src/main/java/org/apache/log4j/net/JMSReceiver.java
@@ -203,10 +203,13 @@ public void activateOptions() {
if (jndiPath == null || jndiPath.equals("")) {
ctx = new InitialContext();
} else {
- FileInputStream is = new FileInputStream(jndiPath);
- Properties p = new Properties();
- p.load(is);
- is.close();
+ try{
+ FileInputStream is = new FileInputStream(jndiPath);
+ Properties p = new Properties();
+ p.load(is);
+ }finally{
+ is.close();
+ }
ctx = new InitialContext(p);
}
diff --git a/src/main/java/org/apache/log4j/rolling/helper/GZCompressAction.java b/src/main/java/org/apache/log4j/rolling/helper/GZCompressAction.java
index d5015c4c75..a88ff9e2b0 100644
--- a/src/main/java/org/apache/log4j/rolling/helper/GZCompressAction.java
+++ b/src/main/java/org/apache/log4j/rolling/helper/GZCompressAction.java
@@ -108,14 +108,14 @@ public static boolean execute(
GZIPOutputStream gzos = new GZIPOutputStream(fos);
byte[] inbuf = new byte[8102];
int n;
-
- while ((n = fis.read(inbuf)) != -1) {
- gzos.write(inbuf, 0, n);
+ try{
+ while ((n = fis.read(inbuf)) != -1) {
+ gzos.write(inbuf, 0, n);
+ }
+ }finally{
+ gzos.close();
+ fis.close();
}
-
- gzos.close();
- fis.close();
-
if (deleteSource) {
if (!source.delete() && (logger != null)) {
logger.info("Unable to delete {}.", source.toString());
diff --git a/src/main/java/org/apache/log4j/rolling/helper/ZipCompressAction.java b/src/main/java/org/apache/log4j/rolling/helper/ZipCompressAction.java
index 48611a8831..b9978e0b65 100644
--- a/src/main/java/org/apache/log4j/rolling/helper/ZipCompressAction.java
+++ b/src/main/java/org/apache/log4j/rolling/helper/ZipCompressAction.java
@@ -109,18 +109,19 @@ public static boolean execute(
ZipOutputStream zos = new ZipOutputStream(fos);
ZipEntry zipEntry = new ZipEntry(source.getName());
- zos.putNextEntry(zipEntry);
-
- byte[] inbuf = new byte[8102];
- int n;
-
- while ((n = fis.read(inbuf)) != -1) {
- zos.write(inbuf, 0, n);
+ try{
+ zos.putNextEntry(zipEntry);
+
+ byte[] inbuf = new byte[8102];
+ int n;
+
+ while ((n = fis.read(inbuf)) != -1) {
+ zos.write(inbuf, 0, n);
+ }
+ }finally{
+ zos.close();
+ fis.close();
}
-
- zos.close();
- fis.close();
-
if (deleteSource) {
if (!source.delete() && (logger != null)) {
logger.info("Unable to delete {}.", source.toString());
diff --git a/tests/src/java/org/apache/log4j/AbstractAppenderTest.java b/tests/src/java/org/apache/log4j/AbstractAppenderTest.java
index d973864368..0f20354f42 100644
--- a/tests/src/java/org/apache/log4j/AbstractAppenderTest.java
+++ b/tests/src/java/org/apache/log4j/AbstractAppenderTest.java
@@ -47,21 +47,26 @@ public void activateOptions() {}
public void testNewAppender() {
// new appenders whould be inactive
- AppenderSkeleton appender = getAppender();
- assertFalse( appender.isActive());
- assertFalse(appender.isClosed());
-
- appender.close();
+ try{
+ AppenderSkeleton appender = getAppender();
+ assertFalse( appender.isActive());
+ assertFalse(appender.isClosed());
+ }finally{
+ appender.close();
+ }
assertTrue(appender.isClosed());
}
public void testConfiguredAppender() {
- AppenderSkeleton appender = getConfiguredAppender();
- appender.activateOptions();
- assertTrue(appender.isActive());
- assertFalse(appender.isClosed());
-
- appender.close();
+ try{
+ AppenderSkeleton appender = getConfiguredAppender();
+ appender.activateOptions();
+ assertTrue(appender.isActive());
+ assertFalse(appender.isClosed());
+ }finally{
+ appender.close();
+ }
+
assertTrue(appender.isClosed());
}
diff --git a/tests/src/java/org/apache/log4j/PatternLayoutTestCase.java b/tests/src/java/org/apache/log4j/PatternLayoutTestCase.java
index e7b1a14a54..5ec42d0c93 100644
--- a/tests/src/java/org/apache/log4j/PatternLayoutTestCase.java
+++ b/tests/src/java/org/apache/log4j/PatternLayoutTestCase.java
@@ -356,10 +356,13 @@ public void test16() throws Exception {
PropertyConfigurator.configure("input/pattern/patternLayout16.properties");
common();
final long end = new Date().getTime();
- FileReader reader = new FileReader("output/patternLayout16.log");
- char chars[] = new char[50];
- reader.read(chars, 0, chars.length);
- reader.close();
+ try{
+ FileReader reader = new FileReader("output/patternLayout16.log");
+ char chars[] = new char[50];
+ reader.read(chars, 0, chars.length);
+ }finally{
+ reader.close();
+ }
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
format.setTimeZone(TimeZone.getTimeZone("GMT+0"));
String utcStr = new String(chars, 0, 19);
diff --git a/tests/src/java/org/apache/log4j/PropertyConfiguratorTest.java b/tests/src/java/org/apache/log4j/PropertyConfiguratorTest.java
index 23c4b573e8..82c7fa81ee 100644
--- a/tests/src/java/org/apache/log4j/PropertyConfiguratorTest.java
+++ b/tests/src/java/org/apache/log4j/PropertyConfiguratorTest.java
@@ -37,9 +37,12 @@ public PropertyConfiguratorTest(final String testName) {
*/
public void testBadUnicodeEscape() throws IOException {
String fileName = "output/badescape.properties";
- FileWriter writer = new FileWriter(fileName);
- writer.write("log4j.rootLogger=\\uXX41");
- writer.close();
+ try{
+ FileWriter writer = new FileWriter(fileName);
+ writer.write("log4j.rootLogger=\\uXX41");
+ }finally{
+ writer.close();
+ }
PropertyConfigurator.configure(fileName);
File file = new File(fileName);
assertTrue(file.delete()) ;
@@ -53,9 +56,12 @@ public void testBadUnicodeEscape() throws IOException {
*/
public void testURL() throws IOException {
File file = new File("output/unclosed.properties");
- FileWriter writer = new FileWriter(file);
- writer.write("log4j.rootLogger=debug");
- writer.close();
+ try{
+ FileWriter writer = new FileWriter(file);
+ writer.write("log4j.rootLogger=debug");
+ }finally{
+ writer.close();
+ }
URL url = file.toURL();
PropertyConfigurator.configure(url);
assertTrue(file.delete());
@@ -70,9 +76,12 @@ public void testURL() throws IOException {
*/
public void testURLBadEscape() throws IOException {
File file = new File("output/urlbadescape.properties");
- FileWriter writer = new FileWriter(file);
- writer.write("log4j.rootLogger=\\uXX41");
- writer.close();
+ try{
+ FileWriter writer = new FileWriter(file);
+ writer.write("log4j.rootLogger=\\uXX41");
+ }finally{
+ writer.close();
+ }
URL url = file.toURL();
PropertyConfigurator.configure(url);
assertTrue(file.delete());
diff --git a/tests/src/java/org/apache/log4j/concurrent/FileAppenderTest.java b/tests/src/java/org/apache/log4j/concurrent/FileAppenderTest.java
index 317906c085..e5ace4cf3b 100644
--- a/tests/src/java/org/apache/log4j/concurrent/FileAppenderTest.java
+++ b/tests/src/java/org/apache/log4j/concurrent/FileAppenderTest.java
@@ -73,9 +73,12 @@ public void testBasic() throws Exception {
}
private void readHI() throws Exception {
- BufferedReader r = new BufferedReader(new FileReader(f1));
- assertEquals("DEBUG - HI", r.readLine());
- r.close();
+ try{
+ BufferedReader r = new BufferedReader(new FileReader(f1));
+ assertEquals("DEBUG - HI", r.readLine());
+ }finally{
+ r.close();
+ }
}
/**
diff --git a/tests/src/java/org/apache/log4j/html/Loop.java b/tests/src/java/org/apache/log4j/html/Loop.java
index 5935af33b6..3458602430 100644
--- a/tests/src/java/org/apache/log4j/html/Loop.java
+++ b/tests/src/java/org/apache/log4j/html/Loop.java
@@ -36,16 +36,19 @@ public static void main(String[] args) {
HTMLLayout htmlLayout = new HTMLLayout("%sn%date%thread%level%logger%m");
//htmlLayout.setInternalCSS(true);
//EnhancedHTMLLayout htmlLayout = new EnhancedHTMLLayout("%relative%thread%level%logger%m");
- FileAppender appender = new FileAppender();
- appender.setFile("toto.html");
- appender.setAppend(false);
- appender.setLayout(htmlLayout);
- appender.activateOptions();
- Logger root = Logger.getRootLogger();
- root.addAppender(appender);
+ try{
+ FileAppender appender = new FileAppender();
+ appender.setFile("toto.html");
+ appender.setAppend(false);
+ appender.setLayout(htmlLayout);
+ appender.activateOptions();
+ Logger root = Logger.getRootLogger();
+ root.addAppender(appender);
- loop(200);
- appender.close();
+ loop(200);
+ }finally{
+ appender.close();
+ }
}
static void loop(int len) {
diff --git a/tests/src/java/org/apache/log4j/net/TelnetAppenderTest.java b/tests/src/java/org/apache/log4j/net/TelnetAppenderTest.java
index 0896d5d84f..8009287cb5 100644
--- a/tests/src/java/org/apache/log4j/net/TelnetAppenderTest.java
+++ b/tests/src/java/org/apache/log4j/net/TelnetAppenderTest.java
@@ -25,28 +25,32 @@ public void run() {
if (c == -1)
break;
bo.write(c);
- }
- s.close();
+ }
} catch (IOException e) {
e.printStackTrace();
+ }finally{
+ s.close();
}
}
}
public void testIt() throws Exception {
int oldActive = Thread.activeCount();
- TelnetAppender ta = new TelnetAppender();
- ta.setName("ta");
- ta.setPort(port);
- ta.setLayout(new PatternLayout("%p - %m"));
- ta.activateOptions();
- Logger l = Logger.getLogger("x");
- l.addAppender(ta);
- Thread t = new ReadThread();
- t.start();
- Thread.sleep(200);
- l.info("hi");
- ta.close();
+ try{
+ TelnetAppender ta = new TelnetAppender();
+ ta.setName("ta");
+ ta.setPort(port);
+ ta.setLayout(new PatternLayout("%p - %m"));
+ ta.activateOptions();
+ Logger l = Logger.getLogger("x");
+ l.addAppender(ta);
+ Thread t = new ReadThread();
+ t.start();
+ Thread.sleep(200);
+ l.info("hi");
+ }finally{
+ ta.close();
+ }
Thread.sleep(200);
t.interrupt();
t.join();
diff --git a/tests/src/java/org/apache/log4j/rolling/FileOpener.java b/tests/src/java/org/apache/log4j/rolling/FileOpener.java
index aad8b9f846..0862d2ce69 100644
--- a/tests/src/java/org/apache/log4j/rolling/FileOpener.java
+++ b/tests/src/java/org/apache/log4j/rolling/FileOpener.java
@@ -28,10 +28,13 @@
*/
public class FileOpener {
public static void main(String[] args) throws Exception {
- InputStream is = new FileInputStream("output/test.log");
- is.read();
- Thread.sleep(10000);
- is.close();
+ try{
+ InputStream is = new FileInputStream("output/test.log");
+ is.read();
+ Thread.sleep(10000);
+ }finally{
+ is.close();
+ }
System.out.println("Exiting FileOpener");
}
}
diff --git a/tests/src/java/org/apache/log4j/rolling/TimeBasedRollingTest.java b/tests/src/java/org/apache/log4j/rolling/TimeBasedRollingTest.java
index 7144c572cd..2b8b669b16 100644
--- a/tests/src/java/org/apache/log4j/rolling/TimeBasedRollingTest.java
+++ b/tests/src/java/org/apache/log4j/rolling/TimeBasedRollingTest.java
@@ -121,58 +121,62 @@ public void test1() throws Exception {
*/
public void test2() throws Exception {
String datePattern = "yyyy-MM-dd_HH_mm_ss";
-
- PatternLayout layout1 = new PatternLayout("%c{1} - %m%n");
- RollingFileAppender rfa1 = new RollingFileAppender();
- rfa1.setLayout(layout1);
-
- TimeBasedRollingPolicy tbrp1 = new TimeBasedRollingPolicy();
- tbrp1.setFileNamePattern("output/test2-%d{" + datePattern + "}");
- tbrp1.activateOptions();
- rfa1.setRollingPolicy(tbrp1);
- rfa1.activateOptions();
- logger.addAppender(rfa1);
-
- SimpleDateFormat sdf = new SimpleDateFormat(datePattern);
- String[] filenames = new String[4];
-
- Calendar cal = Calendar.getInstance();
-
- for (int i = 0; i < 4; i++) {
- filenames[i] = "output/test2-" + sdf.format(cal.getTime());
- cal.add(Calendar.SECOND, 1);
- }
-
- System.out.println("Waiting until next second and 100 millis.");
- delayUntilNextSecond(100);
- System.out.println("Done waiting.");
-
- for (int i = 0; i <= 2; i++) {
- logger.debug("Hello---" + i);
- Thread.sleep(500);
+ try{
+ PatternLayout layout1 = new PatternLayout("%c{1} - %m%n");
+ RollingFileAppender rfa1 = new RollingFileAppender();
+ rfa1.setLayout(layout1);
+
+ TimeBasedRollingPolicy tbrp1 = new TimeBasedRollingPolicy();
+ tbrp1.setFileNamePattern("output/test2-%d{" + datePattern + "}");
+ tbrp1.activateOptions();
+ rfa1.setRollingPolicy(tbrp1);
+ rfa1.activateOptions();
+ logger.addAppender(rfa1);
+
+ SimpleDateFormat sdf = new SimpleDateFormat(datePattern);
+ String[] filenames = new String[4];
+
+ Calendar cal = Calendar.getInstance();
+
+ for (int i = 0; i < 4; i++) {
+ filenames[i] = "output/test2-" + sdf.format(cal.getTime());
+ cal.add(Calendar.SECOND, 1);
+ }
+
+ System.out.println("Waiting until next second and 100 millis.");
+ delayUntilNextSecond(100);
+ System.out.println("Done waiting.");
+
+ for (int i = 0; i <= 2; i++) {
+ logger.debug("Hello---" + i);
+ Thread.sleep(500);
+ }
+
+ logger.removeAppender(rfa1);
+ }finally{
+ rfa1.close();
}
-
- logger.removeAppender(rfa1);
- rfa1.close();
-
- PatternLayout layout2 = new PatternLayout("%c{1} - %m%n");
- RollingFileAppender rfa2 = new RollingFileAppender();
- rfa2.setLayout(layout2);
-
- TimeBasedRollingPolicy tbrp2 = new TimeBasedRollingPolicy();
- tbrp2.setFileNamePattern("output/test2-%d{" + datePattern + "}");
- tbrp2.activateOptions();
- rfa2.setRollingPolicy(tbrp2);
- rfa2.activateOptions();
- logger.addAppender(rfa2);
-
- for (int i = 3; i <= 4; i++) {
- logger.debug("Hello---" + i);
- Thread.sleep(500);
+ try{
+ PatternLayout layout2 = new PatternLayout("%c{1} - %m%n");
+ RollingFileAppender rfa2 = new RollingFileAppender();
+ rfa2.setLayout(layout2);
+
+ TimeBasedRollingPolicy tbrp2 = new TimeBasedRollingPolicy();
+ tbrp2.setFileNamePattern("output/test2-%d{" + datePattern + "}");
+ tbrp2.activateOptions();
+ rfa2.setRollingPolicy(tbrp2);
+ rfa2.activateOptions();
+ logger.addAppender(rfa2);
+
+ for (int i = 3; i <= 4; i++) {
+ logger.debug("Hello---" + i);
+ Thread.sleep(500);
+ }
+
+ }finally{
+ rfa2.close();
}
- rfa2.close();
-
for (int i = 0; i < 4; i++) {
assertTrue(Compare.compare(filenames[i], "witness/rolling/tbr-test2." + i));
}
diff --git a/tests/src/java/org/apache/log4j/util/Compare.java b/tests/src/java/org/apache/log4j/util/Compare.java
index b97edefba6..aaf7e44aac 100644
--- a/tests/src/java/org/apache/log4j/util/Compare.java
+++ b/tests/src/java/org/apache/log4j/util/Compare.java
@@ -85,30 +85,34 @@ public static boolean compare(String file1, String file2, BufferedReader in1, Bu
*/
private static void outputFile(String file)
throws FileNotFoundException, IOException {
- BufferedReader in1 = new BufferedReader(new FileReader(file));
-
- String s1;
- int lineCounter = 0;
- System.out.println("--------------------------------");
- System.out.println("Contents of " + file + ":");
-
- while ((s1 = in1.readLine()) != null) {
- lineCounter++;
- System.out.print(lineCounter);
-
- if (lineCounter < 10) {
- System.out.print(" : ");
- } else if (lineCounter < 100) {
- System.out.print(" : ");
- } else if (lineCounter < 1000) {
- System.out.print(" : ");
- } else {
- System.out.print(": ");
- }
-
- System.out.println(s1);
- }
- in1.close();
+ try{
+ BufferedReader in1 = new BufferedReader(new FileReader(file));
+
+ String s1;
+ int lineCounter = 0;
+ System.out.println("--------------------------------");
+ System.out.println("Contents of " + file + ":");
+
+ while ((s1 = in1.readLine()) != null) {
+ lineCounter++;
+ System.out.print(lineCounter);
+
+ if (lineCounter < 10) {
+ System.out.print(" : ");
+ } else if (lineCounter < 100) {
+ System.out.print(" : ");
+ } else if (lineCounter < 1000) {
+ System.out.print(" : ");
+ } else {
+ System.out.print(": ");
+ }
+
+ System.out.println(s1);
+ }
+ }finally{
+ in1.close();
+ }
+
}
public static boolean gzCompare(String file1, String file2)
diff --git a/tests/src/java/org/apache/log4j/util/SerializationTestHelper.java b/tests/src/java/org/apache/log4j/util/SerializationTestHelper.java
index 264c175e93..6c982c4ce0 100644
--- a/tests/src/java/org/apache/log4j/util/SerializationTestHelper.java
+++ b/tests/src/java/org/apache/log4j/util/SerializationTestHelper.java
@@ -111,11 +111,14 @@ public static void assertStreamEquals(
File witnessFile = new File(witness);
if (witnessFile.exists()) {
- int skipIndex = 0;
- byte[] expected = new byte[actual.length];
- FileInputStream is = new FileInputStream(witnessFile);
- int bytesRead = is.read(expected);
- is.close();
+ int skipIndex = 0;
+ byte[] expected = new byte[actual.length];
+ try{
+ FileInputStream is = new FileInputStream(witnessFile);
+ int bytesRead = is.read(expected);
+ }finally{
+ is.close();
+ }
TestCase.assertEquals(bytesRead, actual.length);
int endScan = actual.length;
@@ -135,13 +138,16 @@ public static void assertStreamEquals(
}
}
} else {
- //
- // if the file doesn't exist then
- // assume that we are setting up and need to write it
- FileOutputStream os = new FileOutputStream(witnessFile);
- os.write(actual);
- os.close();
- TestCase.fail("Writing witness file " + witness);
+ //
+ // if the file doesn't exist then
+ // assume that we are setting up and need to write it
+ try{
+ FileOutputStream os = new FileOutputStream(witnessFile);
+ os.write(actual);
+ }finally{
+ os.close();
+ }
+ TestCase.fail("Writing witness file " + witness);
}
}
}
diff --git a/tests/src/java/org/apache/log4j/varia/ERFATestCase.java b/tests/src/java/org/apache/log4j/varia/ERFATestCase.java
index 291cf36f48..eb1c057eee 100644
--- a/tests/src/java/org/apache/log4j/varia/ERFATestCase.java
+++ b/tests/src/java/org/apache/log4j/varia/ERFATestCase.java
@@ -69,15 +69,18 @@ public void testConstructor() {
* @deprecated since class under test is deprecated.
*/
void sendMessage(int port, final String msg, final String expectedResponse) throws IOException {
- Socket socket = new Socket((String) null, port);
- DataInputStream reader = new DataInputStream(socket.getInputStream());
- DataOutputStream writer = new DataOutputStream(socket.getOutputStream());
- writer.writeUTF(msg);
- String response = reader.readUTF();
- assertEquals(expectedResponse, response);
- reader.close();
- writer.close();
- socket.close();
+ try{
+ Socket socket = new Socket((String) null, port);
+ DataInputStream reader = new DataInputStream(socket.getInputStream());
+ DataOutputStream writer = new DataOutputStream(socket.getOutputStream());
+ writer.writeUTF(msg);
+ String response = reader.readUTF();
+ assertEquals(expectedResponse, response);
+ }finally{
+ reader.close();
+ writer.close();
+ socket.close();
+ }
}
/**
diff --git a/tests/webapps/Tata/src/java/wombat/XServlet.java b/tests/webapps/Tata/src/java/wombat/XServlet.java
index 10e7d69aa6..d32d1f583d 100644
--- a/tests/webapps/Tata/src/java/wombat/XServlet.java
+++ b/tests/webapps/Tata/src/java/wombat/XServlet.java
@@ -19,11 +19,14 @@ public void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
- PrintWriter out = response.getWriter();
-
- String result = Util.foo(MY_ENTRY);
-
- out.println(result);
- out.close();
+ try{
+ PrintWriter out = response.getWriter();
+
+ String result = Util.foo(MY_ENTRY);
+
+ out.println(result);
+ }finally{
+ out.close();
+ }
}
}
diff --git a/tests/webapps/Titi/src/java/wombat/XServlet.java b/tests/webapps/Titi/src/java/wombat/XServlet.java
index 10e7d69aa6..1453429afd 100644
--- a/tests/webapps/Titi/src/java/wombat/XServlet.java
+++ b/tests/webapps/Titi/src/java/wombat/XServlet.java
@@ -19,11 +19,14 @@ public void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
- PrintWriter out = response.getWriter();
-
- String result = Util.foo(MY_ENTRY);
-
- out.println(result);
- out.close();
+ try{
+ PrintWriter out = response.getWriter();
+
+ String result = Util.foo(MY_ENTRY);
+
+ out.println(result);
+ }finally{
+ out.close();
+ }
}
}