svn commit: r1129864 - in /struts/struts2/trunk/plugins/json/src/test: java/org/apache/struts2/json/ resources/org/apache/struts2/json/

2011-05-31 Thread jafl
Author: jafl
Date: Tue May 31 19:24:27 2011
New Revision: 1129864

URL: http://svn.apache.org/viewvc?rev=1129864&view=rev
Log:
WW-3638 additional unit test for multi-level array in includeProperties

Added:

struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt
  - copied, changed from r1129833, 
struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-10.txt
Modified:

struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java

struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java

struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-3.txt

struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json.txt

Modified: 
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java?rev=1129864&r1=1129863&r2=1129864&view=diff
==
--- 
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java
 (original)
+++ 
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java
 Tue May 31 19:24:27 2011
@@ -28,8 +28,10 @@ import java.util.Calendar;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.regex.Pattern;
 
 import javax.servlet.http.HttpServletResponse;
@@ -530,6 +532,47 @@ public class JSONResultTest extends Stru
 assertEquals("application/json;charset=ISO-8859-1", 
response.getContentType());
 }
 
+public void testIncludePropertiesWithSetList() throws Exception {
+JSONResult result = new JSONResult();
+
result.setIncludeProperties("^set\\[\\d+\\]\\.list\\[\\d+\\]\\.booleanField");
+TestAction action = new TestAction();
+stack.push(action);
+
+Set set = new LinkedHashSet();
+
+TestAction a1 = new TestAction();
+
+List list = new ArrayList();
+
+list.add(new Bean());
+list.add(new Bean());
+list.add(new Bean());
+
+a1.setList(list);
+set.add(a1);
+
+TestAction a2 = new TestAction();
+
+list = new ArrayList();
+
+list.add(new Bean());
+list.add(new Bean());
+
+a2.setList(list);
+set.add(a2);
+
+action.setSet(set);
+
+this.invocation.setAction(action);
+result.execute(this.invocation);
+
+String json = response.getContentAsString();
+String normalizedActual = TestUtils.normalize(json, true);
+String normalizedExpected = 
TestUtils.normalize(JSONResultTest.class.getResource("json-11.txt"));
+assertEquals(normalizedExpected, normalizedActual);
+assertEquals("application/json;charset=ISO-8859-1", 
response.getContentType());
+}
+
 @Override
 protected void setUp() throws Exception {
 super.setUp();

Modified: 
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java?rev=1129864&r1=1129863&r2=1129864&view=diff
==
--- 
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java
 (original)
+++ 
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java
 Tue May 31 19:24:27 2011
@@ -23,6 +23,7 @@ package org.apache.struts2.json;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 
 import org.apache.struts2.json.annotations.JSON;
 
@@ -37,6 +38,7 @@ public class TestAction extends ActionSu
 private List collection;
 private List collection2;
 private Map map;
+private Set set;
 private String foo;
 private String result;
 private String[] array;
@@ -82,6 +84,14 @@ public class TestAction extends ActionSu
 this.map = map;
 }
 
+public Set getSet() {
+return this.set;
+}
+
+public void setSet(Set set) {
+this.set = set;
+}
+
 public String getFoo() {
 return this.foo;
 }

Copied: 
struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt
 (from r1129833, 
struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-10.txt)
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt?p2=struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt&p1=struts/struts2/trunk/plugins/json/src/test/re

svn commit: r1129873 - in /struts/struts2/trunk/plugins/json/src: main/java/org/apache/struts2/json/JSONInterceptor.java main/java/org/apache/struts2/json/JSONUtil.java test/java/org/apache/struts2/js

2011-05-31 Thread jafl
Author: jafl
Date: Tue May 31 19:36:53 2011
New Revision: 1129873

URL: http://svn.apache.org/viewvc?rev=1129873&view=rev
Log:
WW-3635 return application/json instead of application/json-rpc

Modified:

struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java

struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java

struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONInterceptorTest.java

Modified: 
struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java?rev=1129873&r1=1129872&r2=1129873&view=diff
==
--- 
struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java
 (original)
+++ 
struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONInterceptor.java
 Tue May 31 19:36:53 2011
@@ -159,7 +159,7 @@ public class JSONInterceptor extends Abs
 json = addCallbackIfApplicable(request, json);
 boolean writeGzip = enableGZIP && 
JSONUtil.isGzipInRequest(request);
 JSONUtil.writeJSONToResponse(new SerializationParams(response, 
this.defaultEncoding,
-this.wrapWithComments, json, true, writeGzip, noCache, -1, 
-1, prefix, contentType));
+this.wrapWithComments, json, true, writeGzip, noCache, -1, 
-1, prefix, "application/json"));
 
 return Action.NONE;
 } else {

Modified: 
struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java?rev=1129873&r1=1129872&r2=1129873&view=diff
==
--- 
struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java
 (original)
+++ 
struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONUtil.java
 Tue May 31 19:36:53 2011
@@ -56,7 +56,7 @@ public class JSONUtil {
 
 /**
  * Serializes an object into JSON.
- * 
+ *
  * @param object
  *to be serialized
  * @return JSON string
@@ -71,7 +71,7 @@ public class JSONUtil {
 /**
  * Serializes an object into JSON, excluding any properties matching any of
  * the regular expressions in the given collection.
- * 
+ *
  * @param object
  *to be serialized
  * @param excludeProperties
@@ -93,7 +93,7 @@ public class JSONUtil {
 /**
  * Serializes an object into JSON, excluding any properties matching any of
  * the regular expressions in the given collection.
- * 
+ *
  * @param object
  *to be serialized
  * @param excludeProperties
@@ -117,7 +117,7 @@ public class JSONUtil {
 
 /**
  * Serializes an object into JSON to the given writer.
- * 
+ *
  * @param writer
  *Writer to serialize the object to
  * @param object
@@ -133,7 +133,7 @@ public class JSONUtil {
  * Serializes an object into JSON to the given writer, excluding any
  * properties matching any of the regular expressions in the given
  * collection.
- * 
+ *
  * @param writer
  *Writer to serialize the object to
  * @param object
@@ -151,7 +151,7 @@ public class JSONUtil {
 
 /**
  * Deserializes a object from JSON
- * 
+ *
  * @param json
  *string in JSON
  * @return desrialized object
@@ -164,7 +164,7 @@ public class JSONUtil {
 
 /**
  * Deserializes a object from JSON
- * 
+ *
  * @param reader
  *Reader to read a JSON string from
  * @return deserialized object
@@ -219,11 +219,8 @@ public class JSONUtil {
 response.sendError(serializationParams.getErrorCode());
 
 // content type
-if (serializationParams.isSmd())
-response.setContentType("application/json-rpc;charset=" + 
serializationParams.getEncoding());
-else
-response.setContentType(serializationParams.getContentType() + 
";charset="
-+ serializationParams.getEncoding());
+response.setContentType(serializationParams.getContentType() + 
";charset="
++ serializationParams.getEncoding());
 
 if (serializationParams.isNoCache()) {
 response.setHeader("Cache-Control", "no-cache");
@@ -267,9 +264,9 @@ public class JSONUtil {
 
 /**
  * List visible methods carrying the
- * 
+ *
  * @SMDMethod annotation
- * 
+ *
  * @param ignoreInterfaces
  *if true, only the methods of the class are examined. If 
false,
  *annotati

svn commit: r1129976 - in /struts/struts2/trunk/plugins/json/src: main/java/org/apache/struts2/json/JSONWriter.java test/java/org/apache/struts2/json/JSONWriterTest.java test/resources/org/apache/stru

2011-05-31 Thread jafl
Author: jafl
Date: Wed Jun  1 00:06:22 2011
New Revision: 1129976

URL: http://svn.apache.org/viewvc?rev=1129976&view=rev
Log:
WW-3489 if excludeNullProperties, ignore nulls in maps

Added:

struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/jsonwriter-write-bean-03.txt
  - copied, changed from r1129833, 
struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/jsonwriter-write-bean-01.txt
Modified:

struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java

struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONWriterTest.java

Modified: 
struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java?rev=1129976&r1=1129975&r2=1129976&view=diff
==
--- 
struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java
 (original)
+++ 
struts/struts2/trunk/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.java
 Wed Jun  1 00:06:22 2011
@@ -342,18 +342,18 @@ class JSONWriter {
  * Add name/value pair to buffer
  */
 private boolean add(String name, Object value, Method method, boolean 
hasData) throws JSONException {
-if (!excludeNullProperties || (value != null)) {
-if (hasData) {
-this.add(',');
-}
-this.add('"');
-this.add(name);
-this.add("\":");
-this.value(value, method);
-return true;
+if (excludeNullProperties && value == null) {
+return false;
 }
 
-return false;
+if (hasData) {
+this.add(',');
+}
+this.add('"');
+this.add(name);
+this.add("\":");
+this.value(value, method);
+return true;
 }
 
 /**
@@ -368,6 +368,10 @@ class JSONWriter {
 boolean hasData = false;
 while (it.hasNext()) {
 Map.Entry entry = (Map.Entry) it.next();
+if (excludeNullProperties && entry.getValue() == null) {
+continue;
+}
+
 Object key = entry.getKey();
 String expr = null;
 if (this.buildExpr) {

Modified: 
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONWriterTest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONWriterTest.java?rev=1129976&r1=1129975&r2=1129976&view=diff
==
--- 
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONWriterTest.java
 (original)
+++ 
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONWriterTest.java
 Wed Jun  1 00:06:22 2011
@@ -5,6 +5,8 @@ import org.apache.struts2.json.annotatio
 import org.apache.struts2.json.bridge.StringBridge;
 import org.junit.Test;
 
+import java.util.Map;
+import java.util.LinkedHashMap;
 import java.net.URL;
 
 public class JSONWriterTest extends StrutsTestCase{
@@ -28,6 +30,44 @@ public class JSONWriterTest extends Stru
 }
 
 @Test
+public void testWriteExcludeNull() throws Exception {
+BeanWithMap bean1=new BeanWithMap();
+bean1.setStringField("str");
+bean1.setBooleanField(true);
+bean1.setCharField('s');
+bean1.setDoubleField(10.1);
+bean1.setFloatField(1.5f);
+bean1.setIntField(10);
+bean1.setLongField(100);
+bean1.setEnumField(AnEnum.ValueA);
+bean1.setEnumBean(AnEnumBean.Two);
+
+Map m = new LinkedHashMap();
+m.put("a", "x");
+m.put("b", null);
+m.put("c", "z");
+bean1.setMap(m);
+
+JSONWriter jsonWriter = new JSONWriter();
+jsonWriter.setEnumAsBean(false);
+jsonWriter.setIgnoreHierarchy(false);
+String json = jsonWriter.write(bean1, null, null, true);
+
TestUtils.assertEquals(JSONWriter.class.getResource("jsonwriter-write-bean-03.txt"),
 json);
+}
+
+private class BeanWithMap extends Bean{
+private Map map;
+
+public Map getMap() {
+return map;
+}
+
+public void setMap(Map map) {
+this.map = map;
+}
+}
+
+@Test
 public void testWriteAnnotatedBean() throws Exception {
 AnnotatedBean bean1=new AnnotatedBean();
 bean1.setStringField("str");

Copied: 
struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/jsonwriter-write-bean-03.txt
 (from r1129833, 
struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/jsonwriter-write-bean-01.txt)
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json

svn commit: r1129979 - in /struts/struts2/trunk/xwork-core/src: main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java test/java/com/opensymphony/xwork2/interceptor/ParametersInterce

2011-05-31 Thread jafl
Author: jafl
Date: Wed Jun  1 00:30:25 2011
New Revision: 1129979

URL: http://svn.apache.org/viewvc?rev=1129979&view=rev
Log:
XW-386 allow x['y'] as well as x.y

Modified:

struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java

struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/interceptor/ParametersInterceptorTest.java

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java?rev=1129979&r1=1129978&r2=1129979&view=diff
==
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java
 Wed Jun  1 00:30:25 2011
@@ -1,12 +1,12 @@
 /*
  * Copyright 2002-2007,2009 The Apache Software Foundation.
- * 
+ *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
+ *
  *  http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -160,18 +160,22 @@ public class ParametersInterceptor exten
 }
 }
 
+static private int countOGNLCharacters(String s) {
+int count = 0;
+for (int i = s.length() - 1; i >= 0; i--) {
+char c = s.charAt(i);
+if (c == '.' || c == '[') count++;
+}
+return count;
+}
+
 /**
- * Compares based on number of '.' characters (fewer is higher)
+ * Compares based on number of '.' and '[' characters (fewer is higher)
  */
 static final Comparator rbCollator = new Comparator() {
 public int compare(String s1, String s2) {
-int l1 = 0, l2 = 0;
-for (int i = s1.length() - 1; i >= 0; i--) {
-if (s1.charAt(i) == '.') l1++;
-}
-for (int i = s2.length() - 1; i >= 0; i--) {
-if (s2.charAt(i) == '.') l2++;
-}
+int l1 = countOGNLCharacters(s1),
+l2 = countOGNLCharacters(s2);
 return l1 < l2 ? -1 : (l2 < l1 ? 1 : s1.compareTo(s2));
 }
 
@@ -328,7 +332,7 @@ public class ParametersInterceptor exten
 if (entry.getValue() instanceof Object[]) {
 Object[] valueArray = (Object[]) entry.getValue();
 logEntry.append("[ ");
-   if (valueArray.length > 0 ) {
+if (valueArray.length > 0 ) {
 for (int indexA = 0; indexA < (valueArray.length - 1); 
indexA++) {
 Object valueAtIndex = valueArray[indexA];
 logEntry.append(String.valueOf(valueAtIndex));

Modified: 
struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/interceptor/ParametersInterceptorTest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/interceptor/ParametersInterceptorTest.java?rev=1129979&r1=1129978&r2=1129979&view=diff
==
--- 
struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/interceptor/ParametersInterceptorTest.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/interceptor/ParametersInterceptorTest.java
 Wed Jun  1 00:30:25 2011
@@ -394,20 +394,23 @@ public class ParametersInterceptorTest e
 
 Map parameters = new HashMap();
 parameters.put("user.address.city", "London");
+parameters.put("user.address['postal']", "QJR387");
 parameters.put("user.name", "Superman");
 
 Action action = new SimpleAction();
 pi.setParameters(action, stack, parameters);
 
 assertEquals(true, pi.isOrdered());
-assertEquals(2, actual.size());
+assertEquals(3, actual.size());
 assertEquals("London", actual.get("user.address.city"));
+assertEquals("QJR387", actual.get("user.address['postal']"));
 assertEquals("Superman", actual.get("user.name"));
 
 // should be ordered so user.name should be first
 List values = new ArrayList(actual.values());
 assertEquals("Superman", values.get(0));
 assertEquals("London", values.get(1));
+assertEquals("QJR387", values.get(2));
 }
 
 public void testSetOrdered() throws Exception {




[CONF] Confluence Changes in the last 24 hours

2011-05-31 Thread confluence
This is a daily summary of all recent changes in Confluence.

-
Updated Spaces:
-


Apache Abdera (https://cwiki.apache.org/confluence/display/ABDERA)

Pages
-
Building Abdera edited by  ck  (04:38 PM)
https://cwiki.apache.org/confluence/display/ABDERA/Building+Abdera



Apache Camel (https://cwiki.apache.org/confluence/display/CAMEL)

Pages
-
Camel 2.8.0 Release edited by  davsclaus  (11:31 AM)
https://cwiki.apache.org/confluence/display/CAMEL/Camel+2.8.0+Release

Loop edited by  davsclaus  (11:29 AM)
https://cwiki.apache.org/confluence/display/CAMEL/Loop



Apache Cayenne Documentation v3.0 
(https://cwiki.apache.org/confluence/display/CAYDOC30)

Pages
-
Modeling Embeddables edited by  blacknext  (09:49 AM)
https://cwiki.apache.org/confluence/display/CAYDOC30/Modeling+Embeddables



Apache Chemistry (https://cwiki.apache.org/confluence/display/CMIS)

Pages
-
OpenCMIS how-to-build edited by  pmonks  (03:45 PM)
https://cwiki.apache.org/confluence/display/CMIS/OpenCMIS+how-to-build



Apache Directory client API (https://cwiki.apache.org/confluence/display/DIRAPI)

Pages
-
Downloads edited by  elecharny  (06:53 AM)
https://cwiki.apache.org/confluence/display/DIRAPI/Downloads

Navigation edited by  elecharny  (06:50 AM)
https://cwiki.apache.org/confluence/display/DIRAPI/Navigation



Apache Directory Website (https://cwiki.apache.org/confluence/display/DIRxSITE)

Pages
-
Apache LDAP API version 1.0.0-M4 released created by elecharny (11:49 AM)
https://cwiki.apache.org/confluence/display/DIRxSITE/2011/05/31/Apache+LDAP+API+version+1.0.0-M4+released

Navigation edited by  elecharny  (06:58 AM)
https://cwiki.apache.org/confluence/display/DIRxSITE/Navigation



Apache Etch (https://cwiki.apache.org/confluence/display/ETCH)

Comments
https://cwiki.apache.org/confluence/display/ETCH/Java+Binding+Users+Guide (1)

Apache MyFaces Extensions CDI 
(https://cwiki.apache.org/confluence/display/EXTCDI)

Pages
-
Core Usage edited by  bkummel  (03:01 AM)
https://cwiki.apache.org/confluence/display/EXTCDI/Core+Usage



Apache Felix (https://cwiki.apache.org/confluence/display/FELIX)

Pages
-
Apache Felix Service Component Runtime edited by  fmeschbe  (03:50 AM)
https://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Service+Component+Runtime



Apache Geronimo v3.0 (https://cwiki.apache.org/confluence/display/GMOxDOC30)

Pages
-
New features and enhancements edited by  chirun...@gmail.com  (10:43 PM)
https://cwiki.apache.org/confluence/display/GMOxDOC30/New+features+and+enhancements



Apache Mahout (https://cwiki.apache.org/confluence/display/MAHOUT)

Pages
-
Powered By Mahout edited by  danithaca  (03:21 PM)
https://cwiki.apache.org/confluence/display/MAHOUT/Powered+By+Mahout

Dimensional Reduction edited by  danbri  (02:18 AM)
https://cwiki.apache.org/confluence/display/MAHOUT/Dimensional+Reduction

SVD - Singular Value Decomposition edited by  danbri  (02:10 AM)
https://cwiki.apache.org/confluence/display/MAHOUT/SVD+-+Singular+Value+Decomposition



Apache ActiveMQ NMS (https://cwiki.apache.org/confluence/display/NMS)

Pages
-
Apache.NMS.ActiveMQ v1.5.1 created by tabish121 (10:01 AM)
https://cwiki.apache.org/confluence/display/NMS/Apache.NMS.ActiveMQ+v1.5.1

ActiveMQ Downloads edited by  tabish121  (10:58 AM)
https://cwiki.apache.org/confluence/display/NMS/ActiveMQ+Downloads

Download edited by  tabish121  (10:58 AM)
https://cwiki.apache.org/confluence/display/NMS/Download



Apache OpenNLP (https://cwiki.apache.org/confluence/display/OPENNLP)

Pages
-
TestPlan1.5.2 created by joern (10:34 AM)
https://cwiki.apache.org/confluence/display/OPENNLP/TestPlan1.5.2

Test Plans edited by  joern  (10:31 AM)
https://cwiki.apache.org/confluence/display/OPENNLP/Test+Plans



Apache Qpid (https://cwiki.apache.org/confluence/display/qpid)

Pages
-
Qpid Release Page edited by  justi9  (04:54 PM)
https://cwiki.apache.org/confluence/display/qpid/Qpid+Release+Page



Traffic Server (https://cwiki.apache.org/confluence/display/TS)