You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2011/09/10 02:11:15 UTC
svn commit: r1167411 - in /incubator/isis/trunk/framework/viewer/json:
json-applib/src/main/java/org/apache/isis/viewer/json/applib/
json-applib/src/main/java/org/apache/isis/viewer/json/applib/util/
json-applib/src/test/java/org/apache/isis/viewer/jso...
Author: danhaywood
Date: Sat Sep 10 00:11:14 2011
New Revision: 1167411
URL: http://svn.apache.org/viewvc?rev=1167411&view=rev
Log:
ISIS-109: more on exception handling (406, 4xx)
Added:
incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_invokeAction.java
Modified:
incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/HttpStatusCode.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/JsonRepresentation.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/RestfulRequest.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/RestfulResponse.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/util/JsonMapper.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/HttpStatusCodeTest.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_arrayIterator.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_arraySize_elementAt_setElementAt.java
incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_newArray.java
incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/AnyResourceTest_exceptionHandling.java
incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainObjectResourceTest.java
incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_service_serviceId.java
incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_services.java
incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/HomePageResourceTest.java
incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/RepresentationMatchers.java
incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/UserResourceTest.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/JsonApplicationException.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/JsonApplicationExceptionMapper.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/ResourceAbstract.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainObjectResourceServerside.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainservices/DomainServiceListRepBuilder.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainservices/DomainServiceResourceServerside.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domaintypes/TypeActionRepBuilder.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/home/HomePageResourceServerside.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/user/UserResourceServerside.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/test/java/org/apache/isis/viewer/json/viewer/resources/JsonExceptionMapperTest.java
incubator/isis/trunk/framework/viewer/json/json-viewer/src/test/java/org/apache/isis/viewer/json/viewer/resources/RepresentationTypeTest.java
Modified: incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/JsonRepresentation.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/JsonRepresentation.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/JsonRepresentation.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/JsonRepresentation.java Sat Sep 10 00:11:14 2011
@@ -35,7 +35,6 @@ import org.jdom.output.XMLOutputter;
import org.jdom.xpath.XPath;
import com.google.common.base.Function;
-import com.google.common.collect.Iterables;
import com.google.common.collect.Iterators;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
@@ -578,7 +577,7 @@ public class JsonRepresentation {
return (Function<JsonNode, T>) transformer;
}
- public JsonRepresentation arrayElementAt(int i) {
+ public JsonRepresentation arrayGet(int i) {
ensureIsAnArrayAtLeastAsLargeAs(i);
return new JsonRepresentation(jsonNode.get(i));
}
Modified: incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/RestfulRequest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/RestfulRequest.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/RestfulRequest.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/RestfulRequest.java Sat Sep 10 00:11:14 2011
@@ -4,7 +4,6 @@ import java.util.Date;
import javax.ws.rs.core.Response;
-import org.jboss.resteasy.client.ClientExecutor;
import org.jboss.resteasy.client.ClientRequest;
public final class RestfulRequest {
Modified: incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/RestfulResponse.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/RestfulResponse.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/RestfulResponse.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/RestfulResponse.java Sat Sep 10 00:11:14 2011
@@ -2,18 +2,221 @@ package org.apache.isis.viewer.json.appl
import java.io.IOException;
import java.util.Date;
+import java.util.Map;
import javax.ws.rs.core.CacheControl;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MultivaluedMap;
import javax.ws.rs.core.Response;
+import javax.ws.rs.core.Response.Status;
+import javax.ws.rs.core.Response.Status.Family;
+import javax.ws.rs.core.Response.StatusType;
import org.apache.isis.viewer.json.applib.util.JsonMapper;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
+import com.google.common.collect.Maps;
+
public class RestfulResponse<T> {
+ public final static class HttpStatusCode {
+
+ private final static Map<Status, HttpStatusCode> statii = Maps.newHashMap();
+ private final static Map<Integer, HttpStatusCode> statusCodes = Maps.newHashMap();
+
+ private static class StatusTypeImpl implements StatusType {
+
+ private int statusCode;
+ private Family family;
+ private String reasonPhrase;
+
+ private StatusTypeImpl(final int statusCode, final Family family,
+ final String reasonPhrase) {
+ this.statusCode = statusCode;
+ this.family = family;
+ this.reasonPhrase = reasonPhrase;
+ }
+
+ @Override
+ public int getStatusCode() {
+ return statusCode;
+ }
+
+ @Override
+ public Family getFamily() {
+ return family;
+ }
+
+ @Override
+ public String getReasonPhrase() {
+ return reasonPhrase;
+ }
+ }
+
+ public static HttpStatusCode lookup(int status) {
+ return statusCodes.get(status);
+ }
+
+ public static Family lookupFamily(int statusCode) {
+ switch (statusCode / 100)
+ {
+ case 1:
+ return Family.INFORMATIONAL;
+ case 2:
+ return Family.SUCCESSFUL;
+ case 3:
+ return Family.REDIRECTION;
+ case 4:
+ return Family.CLIENT_ERROR;
+ case 5:
+ return Family.SERVER_ERROR;
+ default:
+ return Family.OTHER;
+ }
+ }
+
+ //public static final int SC_CONTINUE = 100;
+ //public static final int SC_SWITCHING_PROTOCOLS = 101;
+ //public static final int SC_PROCESSING = 102;
+
+ public final static HttpStatusCode OK = new HttpStatusCode(200, Status.OK);
+ public final static HttpStatusCode CREATED = new HttpStatusCode(201, Status.CREATED);
+
+ //public static final int SC_ACCEPTED = 202;
+ //public static final int SC_NON_AUTHORITATIVE_INFORMATION = 203;
+
+ public static final HttpStatusCode NO_CONTENT = new HttpStatusCode(204, Status.NO_CONTENT);
+
+ //public static final int SC_RESET_CONTENT = 205;
+ //public static final int SC_PARTIAL_CONTENT = 206;
+ //public static final int SC_MULTI_STATUS = 207;
+ //public static final int SC_MULTIPLE_CHOICES = 300;
+ //public static final int SC_MOVED_PERMANENTLY = 301;
+ //public static final int SC_MOVED_TEMPORARILY = 302;
+ //public static final int SC_SEE_OTHER = 303;
+ public final static HttpStatusCode NOT_MODIFIED = new HttpStatusCode(304, Status.BAD_REQUEST);
+
+ //public static final int SC_NOT_MODIFIED = 304;
+ //public static final int SC_USE_PROXY = 305;
+ //public static final int SC_TEMPORARY_REDIRECT = 307;
+
+ public final static HttpStatusCode BAD_REQUEST = new HttpStatusCode(400, Status.BAD_REQUEST);
+ public final static HttpStatusCode UNAUTHORIZED = new HttpStatusCode(401, Status.UNAUTHORIZED);
+
+ //public static final int SC_PAYMENT_REQUIRED = 402;
+ //public static final int SC_FORBIDDEN = 403;
+
+ public final static HttpStatusCode NOT_FOUND = new HttpStatusCode(404, Status.NOT_FOUND);
+ public final static HttpStatusCode METHOD_NOT_ALLOWED = new HttpStatusCode(405, new StatusTypeImpl(405, Family.CLIENT_ERROR, "Method not allowed"));
+ public final static HttpStatusCode NOT_ACCEPTABLE = new HttpStatusCode(406, Status.NOT_ACCEPTABLE);
+
+ //public static final int SC_PROXY_AUTHENTICATION_REQUIRED = 407;
+ //public static final int SC_REQUEST_TIMEOUT = 408;
+
+ public final static HttpStatusCode CONFLICT = new HttpStatusCode(409, Status.CONFLICT);
+
+ //public static final int SC_GONE = 410;
+ //public static final int SC_LENGTH_REQUIRED = 411;
+ //public static final int SC_PRECONDITION_FAILED = 412;
+ //public static final int SC_REQUEST_TOO_LONG = 413;
+ //public static final int SC_REQUEST_URI_TOO_LONG = 414;
+ //public static final int SC_UNSUPPORTED_MEDIA_TYPE = 415;
+
+ public final static HttpStatusCode UNSUPPORTED_MEDIA_TYPE = new HttpStatusCode(415, Status.UNSUPPORTED_MEDIA_TYPE);
+
+ //public static final int SC_REQUESTED_RANGE_NOT_SATISFIABLE = 416;
+ //public static final int SC_EXPECTATION_FAILED = 417;
+ //public static final int SC_INSUFFICIENT_SPACE_ON_RESOURCE = 419;
+
+ public final static HttpStatusCode METHOD_FAILURE = new HttpStatusCode(420, new StatusTypeImpl(420, Family.CLIENT_ERROR, "Method failure"));
+
+ //public static final int SC_UNPROCESSABLE_ENTITY = 422;
+ //public static final int SC_LOCKED = 423;
+ //public static final int SC_FAILED_DEPENDENCY = 424;
+
+ public final static HttpStatusCode INTERNAL_SERVER_ERROR = new HttpStatusCode(500, Status.INTERNAL_SERVER_ERROR);
+ public final static HttpStatusCode NOT_IMPLEMENTED = new HttpStatusCode(501, new StatusTypeImpl(501, Family.SERVER_ERROR, "Not implemented"));
+
+ //public static final int SC_BAD_GATEWAY = 502;
+ //public static final int SC_SERVICE_UNAVAILABLE = 503;
+ //public static final int SC_GATEWAY_TIMEOUT = 504;
+ //public static final int SC_HTTP_VERSION_NOT_SUPPORTED = 505;
+ //public static final int SC_INSUFFICIENT_STORAGE = 507;
+
+ public final static HttpStatusCode statusFor(int statusCode) {
+ HttpStatusCode httpStatusCode = statusCodes.get(statusCode);
+ if(httpStatusCode != null) {
+ return httpStatusCode;
+ }
+ return syncStatusFor(statusCode);
+ }
+
+ public final static HttpStatusCode statusFor(Status status) {
+ return statii.get(status);
+ }
+
+ private final static synchronized HttpStatusCode syncStatusFor(int statusCode) {
+ HttpStatusCode httpStatusCode = statusCodes.get(statusCode);
+ if(httpStatusCode == null) {
+ httpStatusCode = new HttpStatusCode(statusCode, null);
+ statusCodes.put(statusCode, httpStatusCode);
+ }
+ return httpStatusCode;
+ }
+
+
+ private final int statusCode;
+ private final Family family;
+ private final StatusType jaxrsStatusType;
+
+ private HttpStatusCode(int statusCode, StatusType status) {
+ this.statusCode = statusCode;
+ this.jaxrsStatusType = status;
+ family = lookupFamily(statusCode);
+ statusCodes.put(statusCode, this);
+ }
+
+ public int getStatusCode() {
+ return statusCode;
+ }
+
+ public StatusType getJaxrsStatusType() {
+ return jaxrsStatusType;
+ }
+
+ public Family getFamily() {
+ return family;
+ }
+
+
+ @Override
+ public int hashCode() {
+ return statusCode;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ HttpStatusCode other = (HttpStatusCode) obj;
+ if (statusCode != other.statusCode)
+ return false;
+ return true;
+ }
+
+ @Override
+ public String toString() {
+ return "HttpStatusCode " + statusCode + ", " + family;
+ }
+
+ }
+
+
public static class Header<X> {
public final static Header<String> WARNING = new Header<String>("Warning", Parser.forStrings());
Modified: incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/util/JsonMapper.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/util/JsonMapper.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/util/JsonMapper.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/main/java/org/apache/isis/viewer/json/applib/util/JsonMapper.java Sat Sep 10 00:11:14 2011
@@ -7,9 +7,7 @@ import java.util.List;
import java.util.Map;
import javax.ws.rs.core.Response;
-import javax.ws.rs.core.Response.Status.Family;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.JsonRepresentation;
import org.codehaus.jackson.JsonGenerationException;
import org.codehaus.jackson.JsonGenerator;
Modified: incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/HttpStatusCodeTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/HttpStatusCodeTest.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/HttpStatusCodeTest.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/HttpStatusCodeTest.java Sat Sep 10 00:11:14 2011
@@ -5,6 +5,7 @@ import static org.junit.Assert.assertTha
import javax.ws.rs.core.Response.Status.Family;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.junit.Test;
public class HttpStatusCodeTest {
Modified: incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_arrayIterator.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_arrayIterator.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_arrayIterator.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_arrayIterator.java Sat Sep 10 00:11:14 2011
@@ -20,8 +20,6 @@ package org.apache.isis.viewer.json.appl
import static org.apache.isis.viewer.json.applib.JsonUtils.readJson;
import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.CoreMatchers.not;
-import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
import java.io.IOException;
@@ -29,7 +27,6 @@ import java.util.Iterator;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
-import org.junit.Before;
import org.junit.Test;
public class JsonRepresentationTest_arrayIterator {
Modified: incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_arraySize_elementAt_setElementAt.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_arraySize_elementAt_setElementAt.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_arraySize_elementAt_setElementAt.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_arraySize_elementAt_setElementAt.java Sat Sep 10 00:11:14 2011
@@ -52,7 +52,7 @@ public class JsonRepresentationTest_arra
@Test(expected=IndexOutOfBoundsException.class)
public void elementAt_outOfBounds() throws JsonParseException, JsonMappingException, IOException {
jsonRepresentation = new JsonRepresentation(readJson("emptyList.json"));
- jsonRepresentation.arrayElementAt(0);
+ jsonRepresentation.arrayGet(0);
}
@Test(expected=IndexOutOfBoundsException.class)
@@ -70,7 +70,7 @@ public class JsonRepresentationTest_arra
@Test
public void elementAt_forNonEmptyList() throws JsonParseException, JsonMappingException, IOException {
jsonRepresentation = new JsonRepresentation(readJson("list.json"));
- assertThat(jsonRepresentation.arrayElementAt(0), is(not(nullValue())));
+ assertThat(jsonRepresentation.arrayGet(0), is(not(nullValue())));
}
@Test
@@ -94,7 +94,7 @@ public class JsonRepresentationTest_arra
@Test(expected=IllegalStateException.class)
public void elementAt_forMap() throws JsonParseException, JsonMappingException, IOException {
jsonRepresentation = new JsonRepresentation(readJson("emptyMap.json"));
- jsonRepresentation.arrayElementAt(0);
+ jsonRepresentation.arrayGet(0);
}
@Test(expected=IllegalStateException.class)
@@ -108,7 +108,7 @@ public class JsonRepresentationTest_arra
public void elementAt_forValue() throws JsonParseException, JsonMappingException, IOException {
jsonRepresentation = new JsonRepresentation(readJson("map.json"));
JsonRepresentation valueRepresentation = jsonRepresentation.getRepresentation("anInt");
- valueRepresentation.arrayElementAt(0);
+ valueRepresentation.arrayGet(0);
}
}
Modified: incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_newArray.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_newArray.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_newArray.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-applib/src/test/java/org/apache/isis/viewer/json/applib/JsonRepresentationTest_newArray.java Sat Sep 10 00:11:14 2011
@@ -36,8 +36,8 @@ public class JsonRepresentationTest_newA
public void newArrayInitialSize() throws Exception {
JsonRepresentation jsonRepresentation = JsonRepresentation.newArray(2);
assertThat(jsonRepresentation.arraySize(), is(2));
- assertThat(jsonRepresentation.arrayElementAt(0).isNull(), is(true));
- assertThat(jsonRepresentation.arrayElementAt(1).isNull(), is(true));
+ assertThat(jsonRepresentation.arrayGet(0).isNull(), is(true));
+ assertThat(jsonRepresentation.arrayGet(1).isNull(), is(true));
}
}
Modified: incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/AnyResourceTest_exceptionHandling.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/AnyResourceTest_exceptionHandling.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/AnyResourceTest_exceptionHandling.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/AnyResourceTest_exceptionHandling.java Sat Sep 10 00:11:14 2011
@@ -7,17 +7,16 @@ import javax.ws.rs.core.MediaType;
import org.apache.isis.runtimes.dflt.webserver.WebServer;
import org.apache.isis.viewer.json.applib.HttpMethod;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.RepresentationType;
import org.apache.isis.viewer.json.applib.RestfulClient;
import org.apache.isis.viewer.json.applib.RestfulRequest;
import org.apache.isis.viewer.json.applib.RestfulResponse;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.homepage.HomePageRepresentation;
import org.jboss.resteasy.client.ClientRequest;
import org.jboss.resteasy.client.ClientResponse;
import org.jboss.resteasy.util.HttpHeaderNames;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Rule;
import org.junit.Test;
Modified: incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainObjectResourceTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainObjectResourceTest.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainObjectResourceTest.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainObjectResourceTest.java Sat Sep 10 00:11:14 2011
@@ -14,15 +14,14 @@ import javax.ws.rs.core.Response.Status.
import org.apache.isis.runtimes.dflt.webserver.WebServer;
import org.apache.isis.tck.dom.scalars.ApplibValuedEntity;
-import org.apache.isis.tck.objstore.dflt.scalars.ApplibValuedEntityRepositoryDefault;
import org.apache.isis.viewer.json.applib.JsonRepresentation;
import org.apache.isis.viewer.json.applib.RestfulClient;
import org.apache.isis.viewer.json.applib.RestfulResponse;
import org.apache.isis.viewer.json.applib.blocks.Link;
import org.apache.isis.viewer.json.applib.blocks.Method;
-import org.apache.isis.viewer.json.applib.domainobjects.ObjectActionRepresentation;
import org.apache.isis.viewer.json.applib.domainobjects.DomainObjectRepresentation;
import org.apache.isis.viewer.json.applib.domainobjects.DomainObjectResource;
+import org.apache.isis.viewer.json.applib.domainobjects.ObjectActionRepresentation;
import org.apache.isis.viewer.json.applib.domainobjects.ObjectPropertyRepresentation;
import org.apache.isis.viewer.json.applib.domainobjects.ScalarValueRepresentation;
import org.junit.Before;
@@ -45,7 +44,7 @@ public class DomainObjectResourceTest {
}
- @Ignore("to get working again")
+ @Ignore
@Test
public void returnsDomainObjectRepresentation() throws Exception {
@@ -53,7 +52,7 @@ public class DomainObjectResourceTest {
DomainObjectResource domainObjectResource = client.getDomainObjectResource();
// when
- Response domainObjectResp = domainObjectResource.object("OID:1");
+ Response domainObjectResp = domainObjectResource.object("OID:6");
RestfulResponse<DomainObjectRepresentation> domainObjectJsonResp = RestfulResponse.of(domainObjectResp, DomainObjectRepresentation.class);
assertThat(domainObjectJsonResp.getStatus().getFamily(), is(Family.SUCCESSFUL));
@@ -239,7 +238,7 @@ public class DomainObjectResourceTest {
assertThat(actionInvokeRepr.isArray(), is(true));
assertThat(actionInvokeRepr.arraySize(), is(5));
- JsonRepresentation domainObjectRefRepr = actionInvokeRepr.arrayElementAt(0);
+ JsonRepresentation domainObjectRefRepr = actionInvokeRepr.arrayGet(0);
assertThat(domainObjectRefRepr, is(not(nullValue())));
assertThat(domainObjectRefRepr.getString("title"), is("Untitled Applib Values Entity")); // TODO
Added: incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_invokeAction.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_invokeAction.java?rev=1167411&view=auto
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_invokeAction.java (added)
+++ incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_invokeAction.java Sat Sep 10 00:11:14 2011
@@ -0,0 +1,50 @@
+package org.apache.isis.viewer.json.tck;
+
+import java.io.IOException;
+
+import org.apache.isis.runtimes.dflt.webserver.WebServer;
+import org.apache.isis.viewer.json.applib.RestfulClient;
+import org.apache.isis.viewer.json.applib.domainobjects.DomainObjectRepresentation;
+import org.apache.isis.viewer.json.applib.domainobjects.DomainServiceResource;
+import org.codehaus.jackson.JsonParseException;
+import org.codehaus.jackson.map.JsonMappingException;
+import org.junit.Before;
+import org.junit.Ignore;
+import org.junit.Rule;
+import org.junit.Test;
+
+
+public class DomainServiceResourceTest_invokeAction {
+
+ @Rule
+ public IsisWebServerRule webServerRule = new IsisWebServerRule();
+
+ private RestfulClient client;
+ private DomainServiceResource resource;
+
+ @Before
+ public void setUp() throws Exception {
+ WebServer webServer = webServerRule.getWebServer();
+ client = new RestfulClient(webServer.getBase());
+
+ resource = client.getDomainServiceResource();
+ }
+
+
+ // adding this just to be able to locate a domain object directly.
+ @Ignore
+ @Test
+ public void happyCase() throws Exception {
+ DomainObjectRepresentation simplesService = givenRepresentation("simples");
+
+
+ }
+
+
+ private DomainObjectRepresentation givenRepresentation(String serviceId) throws JsonParseException, JsonMappingException, IOException {
+ return RepresentationMatchers.entityOf(resource.service(serviceId), DomainObjectRepresentation.class);
+ }
+
+
+}
+
\ No newline at end of file
Modified: incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_service_serviceId.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_service_serviceId.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_service_serviceId.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_service_serviceId.java Sat Sep 10 00:11:14 2011
@@ -1,38 +1,35 @@
package org.apache.isis.viewer.json.tck;
+import static org.apache.isis.core.commons.matchers.IsisMatchers.matches;
import static org.apache.isis.viewer.json.tck.RepresentationMatchers.assertThat;
import static org.apache.isis.viewer.json.tck.RepresentationMatchers.isArray;
import static org.apache.isis.viewer.json.tck.RepresentationMatchers.isFollowableLinkToSelf;
import static org.apache.isis.viewer.json.tck.RepresentationMatchers.isLink;
import static org.apache.isis.viewer.json.tck.RepresentationMatchers.isMap;
-import static org.apache.isis.core.commons.matchers.IsisMatchers.*;
-
-import static org.hamcrest.CoreMatchers.*;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.not;
+import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
import java.io.IOException;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
-import javax.ws.rs.core.Response.Status.Family;
import org.apache.isis.runtimes.dflt.webserver.WebServer;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.JsonRepresentation;
import org.apache.isis.viewer.json.applib.RepresentationType;
import org.apache.isis.viewer.json.applib.RestfulClient;
import org.apache.isis.viewer.json.applib.RestfulResponse;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.blocks.Link;
import org.apache.isis.viewer.json.applib.blocks.Method;
import org.apache.isis.viewer.json.applib.domainobjects.DomainObjectRepresentation;
import org.apache.isis.viewer.json.applib.domainobjects.DomainServiceResource;
-import org.apache.isis.viewer.json.applib.domainobjects.DomainServicesRepresentation;
import org.apache.isis.viewer.json.applib.domainobjects.ObjectActionRepresentation;
import org.apache.isis.viewer.json.viewer.resources.domainobjects.MemberType;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
-import org.hamcrest.CoreMatchers;
-import org.hamcrest.Matchers;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Rule;
@@ -111,10 +108,18 @@ public class DomainServiceResourceTest_s
assertThat(memberRepr.getDisabledReason(), is(nullValue()));
}
- JsonRepresentation listAction = repr.xpath("/members/e[memberType='objectAction' and actionId='list']").getRepresentation("e");
- for (JsonRepresentation memberRepr : actions.arrayIterable()) {
-
- }
+ JsonRepresentation listActionRepr = repr.xpath("/members/e[memberType='objectAction' and actionId='list']").getRepresentation("e");
+ Link listActionDetailsLink = listActionRepr.getLink("actionDetails");
+
+ // when
+ Response listActionDetailsResp = client.follow(listActionDetailsLink);
+
+ // then
+ RestfulResponse<ObjectActionRepresentation> listActionDetailsJsonResp = RestfulResponse.of(listActionDetailsResp, ObjectActionRepresentation.class);
+ assertThat(listActionDetailsJsonResp.getStatus(), is(HttpStatusCode.OK));
+
+ ObjectActionRepresentation listActionDetailsRepr = listActionDetailsJsonResp.getEntity();
+
}
@Ignore("TODO - need to add fixture data")
Modified: incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_services.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_services.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_services.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/DomainServiceResourceTest_services.java Sat Sep 10 00:11:14 2011
@@ -15,11 +15,11 @@ import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status.Family;
import org.apache.isis.runtimes.dflt.webserver.WebServer;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.JsonRepresentation;
import org.apache.isis.viewer.json.applib.RepresentationType;
import org.apache.isis.viewer.json.applib.RestfulClient;
import org.apache.isis.viewer.json.applib.RestfulResponse;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.blocks.Link;
import org.apache.isis.viewer.json.applib.blocks.Method;
import org.apache.isis.viewer.json.applib.domainobjects.DomainServiceResource;
Modified: incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/HomePageResourceTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/HomePageResourceTest.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/HomePageResourceTest.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/HomePageResourceTest.java Sat Sep 10 00:11:14 2011
@@ -2,9 +2,9 @@ package org.apache.isis.viewer.json.tck;
import static org.apache.isis.viewer.json.tck.RepresentationMatchers.assertThat;
import static org.apache.isis.viewer.json.tck.RepresentationMatchers.entityOf;
+import static org.apache.isis.viewer.json.tck.RepresentationMatchers.isArray;
import static org.apache.isis.viewer.json.tck.RepresentationMatchers.isFollowableLinkToSelf;
import static org.apache.isis.viewer.json.tck.RepresentationMatchers.isLink;
-import static org.apache.isis.viewer.json.tck.RepresentationMatchers.isArray;
import static org.apache.isis.viewer.json.tck.RepresentationMatchers.isMap;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.not;
@@ -18,10 +18,10 @@ import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status.Family;
import org.apache.isis.runtimes.dflt.webserver.WebServer;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.RepresentationType;
import org.apache.isis.viewer.json.applib.RestfulClient;
import org.apache.isis.viewer.json.applib.RestfulResponse;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.blocks.Method;
import org.apache.isis.viewer.json.applib.homepage.HomePageRepresentation;
import org.apache.isis.viewer.json.applib.homepage.HomePageResource;
Modified: incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/RepresentationMatchers.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/RepresentationMatchers.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/RepresentationMatchers.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/RepresentationMatchers.java Sat Sep 10 00:11:14 2011
@@ -4,11 +4,11 @@ import java.io.IOException;
import javax.ws.rs.core.Response;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.JsonRepresentation;
import org.apache.isis.viewer.json.applib.JsonRepresentation.LinksToSelf;
import org.apache.isis.viewer.json.applib.RestfulClient;
import org.apache.isis.viewer.json.applib.RestfulResponse;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.blocks.Link;
import org.apache.isis.viewer.json.applib.blocks.Method;
import org.codehaus.jackson.JsonParseException;
Modified: incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/UserResourceTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/UserResourceTest.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/UserResourceTest.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-tck/src/test/java/org/apache/isis/viewer/json/tck/UserResourceTest.java Sat Sep 10 00:11:14 2011
@@ -18,13 +18,11 @@ import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status.Family;
import org.apache.isis.runtimes.dflt.webserver.WebServer;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.RepresentationType;
import org.apache.isis.viewer.json.applib.RestfulClient;
import org.apache.isis.viewer.json.applib.RestfulResponse;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.blocks.Method;
-import org.apache.isis.viewer.json.applib.homepage.HomePageRepresentation;
-import org.apache.isis.viewer.json.applib.homepage.HomePageResource;
import org.apache.isis.viewer.json.applib.user.UserRepresentation;
import org.apache.isis.viewer.json.applib.user.UserResource;
import org.codehaus.jackson.JsonParseException;
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/JsonApplicationException.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/JsonApplicationException.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/JsonApplicationException.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/JsonApplicationException.java Sat Sep 10 00:11:14 2011
@@ -2,42 +2,36 @@ package org.apache.isis.viewer.json.view
import javax.ws.rs.WebApplicationException;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
-public class JsonApplicationException extends WebApplicationException {
+public class JsonApplicationException extends RuntimeException {
public static final JsonApplicationException create(HttpStatusCode httpStatusCode) {
- return new JsonApplicationException(httpStatusCode, null, null);
+ return create(httpStatusCode, null);
}
- public static JsonApplicationException create(HttpStatusCode httpStatusCode, String message, Object... args) {
- return create(httpStatusCode, String.format(message, args));
+ public static JsonApplicationException create(HttpStatusCode httpStatusCode, String message, Object... args) {
+ return create(httpStatusCode, null, message, args);
}
public static JsonApplicationException create(HttpStatusCode httpStatusCode, Exception cause) {
- return create(httpStatusCode, null, cause);
+ return create(httpStatusCode, cause, null);
}
- public static JsonApplicationException create(HttpStatusCode httpStatusCode, String message, Exception cause) {
- return new JsonApplicationException(httpStatusCode, message, cause);
+ public static JsonApplicationException create(HttpStatusCode httpStatusCode, Exception cause, String message, Object... args) {
+ return new JsonApplicationException(httpStatusCode, formatString(message, args), cause);
+ }
+
+ private static String formatString(String formatStr, Object... args) {
+ return formatStr != null? String.format(formatStr, args): null;
}
private static final long serialVersionUID = 1L;
private HttpStatusCode httpStatusCode;
- private final String message;
private JsonApplicationException(HttpStatusCode httpStatusCode, String message, Throwable ex) {
- super(ex, httpStatusCode.getStatusCode());
+ super(message, ex);
this.httpStatusCode = httpStatusCode;
- this.message = message;
- }
-
- /**
- * Overridden since cannot pass up to constructor.
- */
- @Override
- public String getMessage() {
- return message;
}
public HttpStatusCode getHttpStatusCode() {
@@ -45,5 +39,4 @@ public class JsonApplicationException ex
}
-
}
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/JsonApplicationExceptionMapper.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/JsonApplicationExceptionMapper.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/JsonApplicationExceptionMapper.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/JsonApplicationExceptionMapper.java Sat Sep 10 00:11:14 2011
@@ -5,17 +5,16 @@ import java.util.List;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.ResponseBuilder;
-import javax.ws.rs.core.Response.Status;
import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;
import org.apache.commons.lang.exception.ExceptionUtils;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.RestfulResponse;
import org.apache.isis.viewer.json.applib.util.JsonMapper;
import com.google.common.collect.Lists;
+@Provider
public class JsonApplicationExceptionMapper implements ExceptionMapper<JsonApplicationException> {
@Override
@@ -24,17 +23,14 @@ public class JsonApplicationExceptionMap
Response.status(ex.getHttpStatusCode().getJaxrsStatusType())
.type(MediaType.APPLICATION_JSON_TYPE)
.entity(jsonFor(ex));
- withWarningIfAny(ex, builder);
- return builder.build();
- }
-
- private static void withWarningIfAny(JsonApplicationException ex, ResponseBuilder builder) {
String message = ex.getMessage();
if(message != null) {
builder.header(RestfulResponse.Header.WARNING.getName(), message);
}
+ return builder.build();
}
+
private static class ExceptionPojo {
public static ExceptionPojo create(Exception ex) {
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/ResourceAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/ResourceAbstract.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/ResourceAbstract.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/ResourceAbstract.java Sat Sep 10 00:11:14 2011
@@ -31,12 +31,9 @@ import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Request;
import javax.ws.rs.core.Response;
-import javax.ws.rs.core.Response.ResponseBuilder;
-import javax.ws.rs.core.Response.Status;
import javax.ws.rs.core.SecurityContext;
import javax.ws.rs.core.UriInfo;
-import org.apache.commons.lang.exception.ExceptionUtils;
import org.apache.isis.core.commons.authentication.AuthenticationSession;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.adapter.oid.stringable.OidStringifier;
@@ -49,9 +46,9 @@ import org.apache.isis.runtimes.dflt.run
import org.apache.isis.runtimes.dflt.runtime.system.persistence.AdapterManager;
import org.apache.isis.runtimes.dflt.runtime.system.persistence.OidGenerator;
import org.apache.isis.runtimes.dflt.runtime.system.persistence.PersistenceSession;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.JsonRepresentation;
import org.apache.isis.viewer.json.applib.RestfulResponse;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.util.JsonMapper;
import org.apache.isis.viewer.json.viewer.JsonApplicationException;
import org.apache.isis.viewer.json.viewer.ResourceContext;
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainObjectResourceServerside.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainObjectResourceServerside.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainObjectResourceServerside.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainobjects/DomainObjectResourceServerside.java Sat Sep 10 00:11:14 2011
@@ -47,7 +47,7 @@ import org.apache.isis.core.metamodel.sp
import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.domainobjects.DomainObjectResource;
import org.apache.isis.viewer.json.applib.util.JsonMapper;
import org.apache.isis.viewer.json.viewer.representations.RepresentationBuilder;
@@ -56,7 +56,6 @@ import org.apache.isis.viewer.json.viewe
import org.apache.isis.viewer.json.viewer.util.UrlDecoderUtils;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
-import org.jboss.resteasy.annotations.ClientResponseType;
import com.google.common.base.Charsets;
import com.google.common.collect.Lists;
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainservices/DomainServiceListRepBuilder.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainservices/DomainServiceListRepBuilder.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainservices/DomainServiceListRepBuilder.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainservices/DomainServiceListRepBuilder.java Sat Sep 10 00:11:14 2011
@@ -17,12 +17,9 @@
package org.apache.isis.viewer.json.viewer.resources.domainservices;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.services.ServiceUtil;
import org.apache.isis.viewer.json.applib.JsonRepresentation;
import org.apache.isis.viewer.json.viewer.ResourceContext;
-import org.apache.isis.viewer.json.viewer.representations.LinkBuilder;
import org.apache.isis.viewer.json.viewer.resources.domainobjects.DomainObjectListRepBuilder;
-import org.apache.isis.viewer.json.viewer.resources.domainobjects.DomainObjectRepBuilder;
class DomainServiceListRepBuilder extends DomainObjectListRepBuilder {
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainservices/DomainServiceResourceServerside.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainservices/DomainServiceResourceServerside.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainservices/DomainServiceResourceServerside.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domainservices/DomainServiceResourceServerside.java Sat Sep 10 00:11:14 2011
@@ -29,20 +29,17 @@ import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
-import javax.ws.rs.core.Response.ResponseBuilder;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.services.ServiceUtil;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.RepresentationType;
import org.apache.isis.viewer.json.applib.RestfulResponse;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.domainobjects.DomainServiceResource;
import org.apache.isis.viewer.json.viewer.ResourceContext;
import org.apache.isis.viewer.json.viewer.representations.RepresentationBuilder;
import org.apache.isis.viewer.json.viewer.resources.ResourceAbstract;
import org.apache.isis.viewer.json.viewer.resources.domainobjects.DomainObjectListRepBuilder;
-import org.apache.isis.viewer.json.viewer.resources.domainobjects.DomainObjectRepBuilder;
-import org.jboss.resteasy.annotations.ClientResponseType;
@Path("/services")
public class DomainServiceResourceServerside extends ResourceAbstract implements
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domaintypes/TypeActionRepBuilder.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domaintypes/TypeActionRepBuilder.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domaintypes/TypeActionRepBuilder.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/domaintypes/TypeActionRepBuilder.java Sat Sep 10 00:11:14 2011
@@ -21,10 +21,7 @@ import org.apache.isis.core.metamodel.sp
import org.apache.isis.viewer.json.applib.JsonRepresentation;
import org.apache.isis.viewer.json.viewer.ResourceContext;
import org.apache.isis.viewer.json.viewer.representations.LinkBuilder;
-import org.apache.isis.viewer.json.viewer.representations.RepresentationBuilder;
-import org.apache.isis.viewer.json.viewer.resources.domainobjects.AbstractObjectMemberRepBuilder;
import org.apache.isis.viewer.json.viewer.resources.domainobjects.MemberType;
-import org.apache.isis.viewer.json.viewer.resources.domainobjects.ObjectActionRepBuilder;
public class TypeActionRepBuilder extends AbstractTypeMemberRepBuilder<TypeActionRepBuilder, ObjectAction> {
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/home/HomePageResourceServerside.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/home/HomePageResourceServerside.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/home/HomePageResourceServerside.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/home/HomePageResourceServerside.java Sat Sep 10 00:11:14 2011
@@ -18,19 +18,16 @@
*/
package org.apache.isis.viewer.json.viewer.resources.home;
-import java.util.List;
-
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.JsonRepresentation;
import org.apache.isis.viewer.json.applib.RepresentationType;
-import org.apache.isis.viewer.json.applib.RestfulRequest;
import org.apache.isis.viewer.json.applib.RestfulResponse;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.homepage.HomePageResource;
import org.apache.isis.viewer.json.viewer.JsonApplicationException;
import org.apache.isis.viewer.json.viewer.representations.LinkBuilder;
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/user/UserResourceServerside.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/user/UserResourceServerside.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/user/UserResourceServerside.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/main/java/org/apache/isis/viewer/json/viewer/resources/user/UserResourceServerside.java Sat Sep 10 00:11:14 2011
@@ -22,7 +22,6 @@ import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
-import org.apache.isis.viewer.json.applib.JsonRepresentation;
import org.apache.isis.viewer.json.applib.RepresentationType;
import org.apache.isis.viewer.json.applib.RestfulResponse;
import org.apache.isis.viewer.json.applib.user.UserResource;
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/test/java/org/apache/isis/viewer/json/viewer/resources/JsonExceptionMapperTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/test/java/org/apache/isis/viewer/json/viewer/resources/JsonExceptionMapperTest.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/test/java/org/apache/isis/viewer/json/viewer/resources/JsonExceptionMapperTest.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/test/java/org/apache/isis/viewer/json/viewer/resources/JsonExceptionMapperTest.java Sat Sep 10 00:11:14 2011
@@ -1,6 +1,5 @@
package org.apache.isis.viewer.json.viewer.resources;
-import static org.hamcrest.CoreMatchers.*;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.CoreMatchers.nullValue;
@@ -9,9 +8,8 @@ import static org.junit.Assert.assertTha
import javax.ws.rs.core.Response;
-import org.apache.isis.viewer.json.applib.HttpStatusCode;
import org.apache.isis.viewer.json.applib.JsonRepresentation;
-import org.apache.isis.viewer.json.applib.RestfulResponse;
+import org.apache.isis.viewer.json.applib.RestfulResponse.HttpStatusCode;
import org.apache.isis.viewer.json.applib.util.JsonMapper;
import org.apache.isis.viewer.json.viewer.JsonApplicationException;
import org.apache.isis.viewer.json.viewer.JsonApplicationExceptionMapper;
@@ -78,7 +76,7 @@ public class JsonExceptionMapperTest {
public void entity_withCause() throws Exception {
// given
Exception cause = new Exception("barfoo");
- JsonApplicationException ex = JsonApplicationException.create(HttpStatusCode.BAD_REQUEST, "foobar", cause);
+ JsonApplicationException ex = JsonApplicationException.create(HttpStatusCode.BAD_REQUEST, cause, "foobar");
// when
Response response = exceptionMapper.toResponse(ex);
Modified: incubator/isis/trunk/framework/viewer/json/json-viewer/src/test/java/org/apache/isis/viewer/json/viewer/resources/RepresentationTypeTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/json/json-viewer/src/test/java/org/apache/isis/viewer/json/viewer/resources/RepresentationTypeTest.java?rev=1167411&r1=1167410&r2=1167411&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/json/json-viewer/src/test/java/org/apache/isis/viewer/json/viewer/resources/RepresentationTypeTest.java (original)
+++ incubator/isis/trunk/framework/viewer/json/json-viewer/src/test/java/org/apache/isis/viewer/json/viewer/resources/RepresentationTypeTest.java Sat Sep 10 00:11:14 2011
@@ -2,7 +2,6 @@ package org.apache.isis.viewer.json.view
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
-import org.apache.isis.viewer.json.viewer.resources.RepresentationType;
import org.junit.Test;