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/06/26 13:51:10 UTC

svn commit: r1139763 [1/10] - in /incubator/isis/trunk/viewer: json/ json/applib2/ json/applib2/src/ json/applib2/src/main/ json/applib2/src/main/java/ json/applib2/src/main/java/META-INF/ json/applib2/src/main/java/org/ json/applib2/src/main/java/org/...

Author: danhaywood
Date: Sun Jun 26 11:51:01 2011
New Revision: 1139763

URL: http://svn.apache.org/viewvc?rev=1139763&view=rev
Log:
splitting out 'restful' viewer into two new viewers: xhtml (same as old restful.viewer modules) and 'json' (same as the recently committed restful.viewer2 modules)

Added:
    incubator/isis/trunk/viewer/json/
    incubator/isis/trunk/viewer/json/NOTICE
    incubator/isis/trunk/viewer/json/applib2/
    incubator/isis/trunk/viewer/json/applib2/NOTICE
    incubator/isis/trunk/viewer/json/applib2/pom.xml
    incubator/isis/trunk/viewer/json/applib2/src/
    incubator/isis/trunk/viewer/json/applib2/src/main/
    incubator/isis/trunk/viewer/json/applib2/src/main/java/
    incubator/isis/trunk/viewer/json/applib2/src/main/java/META-INF/
    incubator/isis/trunk/viewer/json/applib2/src/main/java/META-INF/MANIFEST.MF
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/AbstractRestfulClient.java
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/Constants.java
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/RestfulClientException.java
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/StringUtils.java
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/UrlEncodeUtils.java
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/BootstrapResource.java
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/DomainObjectResource.java
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/HomePageResource.java
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/ServicesResource.java
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/SpecsResource.java
    incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/UserResource.java
    incubator/isis/trunk/viewer/json/applib2/src/site/
    incubator/isis/trunk/viewer/json/applib2/src/site/apt/
    incubator/isis/trunk/viewer/json/applib2/src/site/apt/index.apt
    incubator/isis/trunk/viewer/json/applib2/src/site/apt/jottings.apt
    incubator/isis/trunk/viewer/json/applib2/src/site/resources/
    incubator/isis/trunk/viewer/json/applib2/src/site/site.xml
    incubator/isis/trunk/viewer/json/pom.xml
    incubator/isis/trunk/viewer/json/src/
    incubator/isis/trunk/viewer/json/src/docbkx/
    incubator/isis/trunk/viewer/json/src/docbkx/guide/
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/collection-items-resource.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/home-page-resource.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-actions-section.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-collections-section.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-properties-section.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-resource.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-title-section.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claims-resource.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-employee-contributed-actions.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/resource-example.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/server-mode-no-credentials.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/server-mode-with-credentials.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/services-resource.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-member-facet.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-member-resource.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-resource.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/specs-resource.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/images/user-resource.png   (with props)
    incubator/isis/trunk/viewer/json/src/docbkx/guide/isis-restful-viewer.xml
    incubator/isis/trunk/viewer/json/src/site/
    incubator/isis/trunk/viewer/json/src/site/apt/
    incubator/isis/trunk/viewer/json/src/site/apt/index.apt
    incubator/isis/trunk/viewer/json/src/site/apt/jottings.apt
    incubator/isis/trunk/viewer/json/src/site/resources/
    incubator/isis/trunk/viewer/json/src/site/resources/images/
    incubator/isis/trunk/viewer/json/src/site/site.xml
    incubator/isis/trunk/viewer/json/viewer2/
    incubator/isis/trunk/viewer/json/viewer2/NOTICE
    incubator/isis/trunk/viewer/json/viewer2/pom.xml
    incubator/isis/trunk/viewer/json/viewer2/src/
    incubator/isis/trunk/viewer/json/viewer2/src/main/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/AbstractJaxRsApplication.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/Constants.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/RepContext.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/ResourceContext.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/RestfulApplication.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/authentication/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/authentication/AuthenticationSessionLookupStrategyParams.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/authentication/AuthenticationSessionLookupStrategyTrusted.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/embedded/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/embedded/EmbeddedWebViewerRestful.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/embedded/RestfulViewerInstaller.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/representations/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/representations/HttpMethod.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/representations/LinkRepBuilder.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/representations/Representation.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/representations/RepresentationBuilder.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/representations/TypeBuilder.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/ResourceAbstract.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/bootstrap/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/bootstrap/BootstrapResourceImpl.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/home/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/home/HomePageResourceImpl.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/AbstractMemberRepBuilder.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/ActionRepBuilder.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/BodyArgs.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/CollectionRepBuilder.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/DomainObjectRepBuilder.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/DomainObjectResourceImpl.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/MemberRepType.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/MemberSelfRepBuilder.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/MemberType.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/MutatorSpec.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/objects/PropertyRepBuilder.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/services/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/resources/services/ServicesResourceImpl.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/util/
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/util/ActionUtils.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/util/InputStreamUtil.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/util/ListUtils.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/util/OidUtils.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/util/PathUtils.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/util/StringUtil.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/java/org/apache/isis/viewer/restful/viewer2/util/UrlDecoderUtils.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/resources/
    incubator/isis/trunk/viewer/json/viewer2/src/main/resources/index.html
    incubator/isis/trunk/viewer/json/viewer2/src/main/resources/isis-json-support.js
    incubator/isis/trunk/viewer/json/viewer2/src/main/resources/isis-rest-support.js
    incubator/isis/trunk/viewer/json/viewer2/src/main/resources/json-20110223.js
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/net/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/net/sf/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/net/sf/restfulobjects/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/net/sf/restfulobjects/viewer/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/net/sf/restfulobjects/viewer/util/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/net/sf/restfulobjects/viewer/util/StringUtilTest.java
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/org/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/org/nakedobjects/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/org/nakedobjects/nos/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/org/nakedobjects/nos/client/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/org/nakedobjects/nos/client/rest/
    incubator/isis/trunk/viewer/json/viewer2/src/main/test/org/nakedobjects/nos/client/rest/util/
    incubator/isis/trunk/viewer/json/viewer2/src/main/webapp/
    incubator/isis/trunk/viewer/json/viewer2/src/main/webapp/META-INF/
    incubator/isis/trunk/viewer/json/viewer2/src/main/webapp/META-INF/MANIFEST.MF
    incubator/isis/trunk/viewer/json/viewer2/src/main/webapp/WEB-INF/
    incubator/isis/trunk/viewer/json/viewer2/src/main/webapp/WEB-INF/isis.properties
    incubator/isis/trunk/viewer/json/viewer2/src/main/webapp/WEB-INF/lib/
    incubator/isis/trunk/viewer/json/viewer2/src/main/webapp/WEB-INF/web.xml
    incubator/isis/trunk/viewer/json/viewer2/src/site/
    incubator/isis/trunk/viewer/json/viewer2/src/site/apt/
    incubator/isis/trunk/viewer/json/viewer2/src/site/apt/index.apt
    incubator/isis/trunk/viewer/json/viewer2/src/site/apt/jottings.apt
    incubator/isis/trunk/viewer/json/viewer2/src/site/resources/
    incubator/isis/trunk/viewer/json/viewer2/src/site/site.xml
    incubator/isis/trunk/viewer/json/viewer2/src/test/
    incubator/isis/trunk/viewer/json/viewer2/src/test/java/
    incubator/isis/trunk/viewer/json/viewer2/src/test/java/org/
    incubator/isis/trunk/viewer/json/viewer2/src/test/java/org/apache/
    incubator/isis/trunk/viewer/json/viewer2/src/test/java/org/apache/isis/
    incubator/isis/trunk/viewer/json/viewer2/src/test/java/org/apache/isis/viewer/
    incubator/isis/trunk/viewer/json/viewer2/src/test/java/org/apache/isis/viewer/restful/
    incubator/isis/trunk/viewer/json/viewer2/src/test/java/org/apache/isis/viewer/restful/viewer2/
    incubator/isis/trunk/viewer/json/viewer2/src/test/java/org/apache/isis/viewer/restful/viewer2/RepresentationContextTest_relFor.java
    incubator/isis/trunk/viewer/json/viewer2/src/test/resources/
    incubator/isis/trunk/viewer/xhtml/
    incubator/isis/trunk/viewer/xhtml/NOTICE
    incubator/isis/trunk/viewer/xhtml/applib/
    incubator/isis/trunk/viewer/xhtml/applib/NOTICE
    incubator/isis/trunk/viewer/xhtml/applib/pom.xml
    incubator/isis/trunk/viewer/xhtml/applib/src/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/AbstractRestfulClient.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/Constants.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/RestfulClientException.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/StringUtils.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/UrlConnectionUtils.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/UrlEncodeUtils.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/providers/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/providers/StringApplicationXhtmlXmlProvider.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/resources/
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/resources/BootstrapResource.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/resources/HomePageResource.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/resources/ObjectResource.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/resources/ServicesResource.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/resources/SpecsResource.java
    incubator/isis/trunk/viewer/xhtml/applib/src/main/java/org/apache/isis/viewer/restful/applib/resources/UserResource.java
    incubator/isis/trunk/viewer/xhtml/applib/src/site/
    incubator/isis/trunk/viewer/xhtml/applib/src/site/apt/
    incubator/isis/trunk/viewer/xhtml/applib/src/site/apt/index.apt
    incubator/isis/trunk/viewer/xhtml/applib/src/site/apt/jottings.apt
    incubator/isis/trunk/viewer/xhtml/applib/src/site/resources/
    incubator/isis/trunk/viewer/xhtml/applib/src/site/site.xml
    incubator/isis/trunk/viewer/xhtml/pom.xml
    incubator/isis/trunk/viewer/xhtml/src/
    incubator/isis/trunk/viewer/xhtml/src/docbkx/
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/collection-items-resource.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/home-page-resource.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/object-claim-actions-section.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/object-claim-collections-section.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/object-claim-properties-section.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/object-claim-resource.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/object-claim-title-section.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/object-claims-resource.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/object-employee-contributed-actions.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/resource-example.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/server-mode-no-credentials.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/server-mode-with-credentials.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/services-resource.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/spec-member-facet.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/spec-member-resource.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/spec-resource.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/specs-resource.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/images/user-resource.png   (with props)
    incubator/isis/trunk/viewer/xhtml/src/docbkx/guide/isis-restful-viewer.xml
    incubator/isis/trunk/viewer/xhtml/src/site/
    incubator/isis/trunk/viewer/xhtml/src/site/apt/
    incubator/isis/trunk/viewer/xhtml/src/site/apt/index.apt
    incubator/isis/trunk/viewer/xhtml/src/site/apt/jottings.apt
    incubator/isis/trunk/viewer/xhtml/src/site/resources/
    incubator/isis/trunk/viewer/xhtml/src/site/resources/images/
    incubator/isis/trunk/viewer/xhtml/src/site/site.xml
    incubator/isis/trunk/viewer/xhtml/viewer/
    incubator/isis/trunk/viewer/xhtml/viewer/NOTICE
    incubator/isis/trunk/viewer/xhtml/viewer/pom.xml
    incubator/isis/trunk/viewer/xhtml/viewer/src/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/AbstractJaxRsApplication.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/Constants.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/RestfulApplication.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/authentication/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/authentication/AuthenticationSessionLookupStrategyParams.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/authentication/AuthenticationSessionLookupStrategyTrusted.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/embedded/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/embedded/EmbeddedWebViewerRestful.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/embedded/RestfulViewerInstaller.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/facets/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/facets/TableColumnFacet.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/facets/TableColumnFacetDisabling.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/facets/TableColumnFacetFacetType.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/facets/TableColumnFacetHiding.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/facets/TableColumnFacetImplementation.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/facets/TableColumnFacetIsImperative.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/facets/TableColumnFacetValidating.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/html/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/html/HtmlClass.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/html/Xhtml.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/html/XhtmlTemplate.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/HomePageResourceImpl.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/ResourceAbstract.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/ObjectResourceImpl.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/TableColumnNakedObjectAssociation.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/TableColumnNakedObjectAssociationModifyAbstract.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/TableColumnNakedObjectAssociationType.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/TableColumnNakedObjectMember.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/TableColumnNakedObjectMemberDisabled.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/TableColumnNakedObjectMemberDisabledReason.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/TableColumnNakedObjectMemberHidden.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/TableColumnNakedObjectMemberInvalidReason.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/TableColumnNakedObjectMemberName.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/actions/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/actions/TableColumnNakedObjectAction.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/actions/TableColumnNakedObjectActionInvalidReason.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/actions/TableColumnNakedObjectActionInvoke.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/actions/TableColumnNakedObjectActionName.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/actions/TableColumnNakedObjectActionParamCount.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/actions/TableColumnNakedObjectActionRealTarget.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/actions/TableColumnNakedObjectActionReturnType.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/actions/TableColumnNakedObjectActionType.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/collections/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/collections/TableColumnOneToManyAssociationAccess.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/collections/TableColumnOneToManyAssociationAddTo.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/collections/TableColumnOneToManyAssociationInvalidReason.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/collections/TableColumnOneToManyAssociationName.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/collections/TableColumnOneToManyAssociationRemoveFrom.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/properties/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/properties/TableColumnOneToOneAssociationAccess.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/properties/TableColumnOneToOneAssociationClear.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/properties/TableColumnOneToOneAssociationInvalidReason.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/properties/TableColumnOneToOneAssociationModify.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/properties/TableColumnOneToOneAssociationName.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/objects/properties/TableColumnOneToOneAssociationParseable.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/services/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/services/ServicesResourceImpl.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/specs/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/specs/SpecsResourceImpl.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/user/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/resources/user/UserResourceImpl.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/tree/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/tree/Attribute.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/tree/Element.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/util/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/util/ActionUtils.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/util/InputStreamUtil.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/util/ListUtils.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/util/OidUtils.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/util/PathUtils.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/util/StringUtil.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/util/UrlDecoderUtils.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/xom/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/xom/DtDd.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/xom/ElementBuilder.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/xom/ResourceContext.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/xom/TableColumn.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/xom/TableColumnAbstract.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/java/org/apache/isis/viewer/restful/viewer/xom/XhtmlRenderer.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/resources/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/resources/isis-rest-support.js
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/net/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/net/sf/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/net/sf/restfulobjects/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/net/sf/restfulobjects/viewer/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/net/sf/restfulobjects/viewer/util/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/net/sf/restfulobjects/viewer/util/StringUtilTest.java
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/org/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/org/nakedobjects/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/org/nakedobjects/nos/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/org/nakedobjects/nos/client/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/org/nakedobjects/nos/client/rest/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/test/org/nakedobjects/nos/client/rest/util/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/webapp/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/webapp/META-INF/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/webapp/META-INF/MANIFEST.MF
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/webapp/WEB-INF/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/webapp/WEB-INF/isis.properties
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/webapp/WEB-INF/lib/
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/webapp/WEB-INF/lib/jstl.jar   (with props)
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/webapp/WEB-INF/lib/standard.jar   (with props)
    incubator/isis/trunk/viewer/xhtml/viewer/src/main/webapp/WEB-INF/web.xml
    incubator/isis/trunk/viewer/xhtml/viewer/src/site/
    incubator/isis/trunk/viewer/xhtml/viewer/src/site/apt/
    incubator/isis/trunk/viewer/xhtml/viewer/src/site/apt/index.apt
    incubator/isis/trunk/viewer/xhtml/viewer/src/site/apt/jottings.apt
    incubator/isis/trunk/viewer/xhtml/viewer/src/site/resources/
    incubator/isis/trunk/viewer/xhtml/viewer/src/site/site.xml
    incubator/isis/trunk/viewer/xhtml/viewer/src/test/
    incubator/isis/trunk/viewer/xhtml/viewer/src/test/java/
    incubator/isis/trunk/viewer/xhtml/viewer/src/test/resources/

Added: incubator/isis/trunk/viewer/json/NOTICE
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/NOTICE?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/NOTICE (added)
+++ incubator/isis/trunk/viewer/json/NOTICE Sun Jun 26 11:51:01 2011
@@ -0,0 +1,7 @@
+Apache Isis
+Copyright 2010-2011 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+
+

Added: incubator/isis/trunk/viewer/json/applib2/NOTICE
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/NOTICE?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/NOTICE (added)
+++ incubator/isis/trunk/viewer/json/applib2/NOTICE Sun Jun 26 11:51:01 2011
@@ -0,0 +1,7 @@
+Apache Isis
+Copyright 2010-2011 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+
+

Added: incubator/isis/trunk/viewer/json/applib2/pom.xml
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/pom.xml?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/pom.xml (added)
+++ incubator/isis/trunk/viewer/json/applib2/pom.xml Sun Jun 26 11:51:01 2011
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you 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.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>org.apache.isis.viewer</groupId>
+		<artifactId>restful</artifactId>
+		<version>0.1.2-incubating-SNAPSHOT</version>
+	</parent>
+	
+	<artifactId>restful-applib2</artifactId>
+	<name>Restful Viewer AppLib2</name>
+
+	<properties>
+		<siteBaseDir>../../..</siteBaseDir>
+		<relativeUrl>viewer/restful/applib/</relativeUrl>
+	</properties>
+
+    <!-- used in Site generation for relative references. -->
+    <url>http://incubator.apache.org/isis/${relativeUrl}</url>
+
+	<dependencies>
+		<dependency>
+			<groupId>org.jboss.resteasy</groupId>
+			<artifactId>resteasy-jaxrs</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.codehaus.jackson</groupId>
+            <artifactId>jackson-core-asl</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.codehaus.jackson</groupId>
+            <artifactId>jackson-mapper-asl</artifactId>
+        </dependency>
+
+		<dependency>
+			<groupId>log4j</groupId>
+			<artifactId>log4j</artifactId>
+		</dependency>
+	</dependencies>
+
+
+    <repositories>
+        <!-- The artifact in the maven repository has been moved and causes a build failure. Using this setting gets the artifact allowing the build to work.  This fix should hopefully be temporary -->
+        <repository>
+          <id>java.net</id>
+          <url>http://download.java.net/maven/1</url>
+        </repository>
+    </repositories>
+
+</project>

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/META-INF/MANIFEST.MF?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/META-INF/MANIFEST.MF (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/META-INF/MANIFEST.MF Sun Jun 26 11:51:01 2011
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path: 
+

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/AbstractRestfulClient.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/AbstractRestfulClient.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/AbstractRestfulClient.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/AbstractRestfulClient.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,50 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2;
+
+import org.apache.log4j.Logger;
+
+public abstract class AbstractRestfulClient {
+
+    private static Logger LOG = Logger.getLogger(AbstractRestfulClient.class);
+
+    private final String hostUri;
+
+    public String getHostUri() {
+        return hostUri;
+    }
+
+    public AbstractRestfulClient(final String hostUri) {
+        this.hostUri = hostUri;
+    }
+
+
+    // //////////////////////////////////////////////////////////////////////
+    // Helpers: string
+    // //////////////////////////////////////////////////////////////////////
+
+    protected static String combine(final String... pathParts) {
+        final StringBuilder buf = new StringBuilder();
+        for (final String part : pathParts) {
+            buf.append(part);
+        }
+        return buf.toString();
+    }
+
+}

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/Constants.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/Constants.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/Constants.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/Constants.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,28 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2;
+
+public final class Constants {
+
+    public static final String URL_ENCODING_CHAR_SET = "UTF-8";
+
+    private Constants() {
+    }
+
+}

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/RestfulClientException.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/RestfulClientException.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/RestfulClientException.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/RestfulClientException.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,40 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2;
+
+public class RestfulClientException extends RuntimeException {
+
+    private static final long serialVersionUID = 1L;
+
+    public RestfulClientException() {
+    }
+
+    public RestfulClientException(final String message) {
+        super(message);
+    }
+
+    public RestfulClientException(final Throwable cause) {
+        super(cause);
+    }
+
+    public RestfulClientException(final String message, final Throwable cause) {
+        super(message, cause);
+    }
+
+}

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/StringUtils.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/StringUtils.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/StringUtils.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/StringUtils.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,80 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2;
+
+import java.io.IOException;
+import java.io.StringWriter;
+import java.io.Writer;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * Not API, so intentionally not visible outside this package.
+ */
+final class StringUtils {
+
+    private StringUtils() {
+    }
+
+    /**
+     * Converts a list of objects [a, 1, b, 2] into a map {a -> 1; b -> 2}
+     */
+    static Map<String, String> asMap(final String... paramArgs) {
+        final Map<String, String> map = new LinkedHashMap<String, String>();
+        boolean param = true;
+        String paramStr = null;
+        for (final String paramArg : paramArgs) {
+            if (param) {
+                paramStr = paramArg;
+            } else {
+                final String arg = paramArg;
+                map.put(paramStr, arg);
+                paramStr = null;
+            }
+            param = !param;
+        }
+        if (paramStr != null) {
+            throw new IllegalArgumentException("Must have equal number of parameters and arguments");
+        }
+        return map;
+    }
+
+    static void writeMap(final Map<String, String> formArgumentsByParameter, final Writer writer) {
+        try {
+            final Set<Map.Entry<String, String>> parameterArguments = formArgumentsByParameter.entrySet();
+            for (final Map.Entry<String, String> parameterArgument : parameterArguments) {
+                writer.write(parameterArgument.getKey());
+                writer.write("=");
+                writer.write(parameterArgument.getValue());
+                writer.write("\n");
+            }
+            writer.flush();
+        } catch (final IOException e) {
+            throw new RestfulClientException(e);
+        }
+    }
+
+    static String asString(final Map<String, String> formArgumentsByParameter) {
+        final StringWriter sw = new StringWriter();
+        writeMap(formArgumentsByParameter, sw);
+        return sw.toString();
+    }
+
+}

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/UrlEncodeUtils.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/UrlEncodeUtils.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/UrlEncodeUtils.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/UrlEncodeUtils.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,56 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2;
+
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+
+import javax.ws.rs.WebApplicationException;
+
+/**
+ * Not API, so intentionally not visible outside this package.
+ */
+final class UrlEncodeUtils {
+
+    private UrlEncodeUtils() {
+    }
+
+    static String encode(final String value) {
+        try {
+            return URLEncoder.encode(value, Constants.URL_ENCODING_CHAR_SET);
+        } catch (final UnsupportedEncodingException e) {
+            throw new WebApplicationException(e);
+        }
+    }
+
+    static Map<String, String> urlEncode(final Map<String, String> asMap) {
+        final Map<String, String> encodedMap = new HashMap<String, String>();
+        final Set<Entry<String, String>> entrySet = asMap.entrySet();
+        for (final Entry<String, String> entry : entrySet) {
+            final String value = entry.getValue();
+            encodedMap.put(entry.getKey(), encode(value));
+        }
+        return encodedMap;
+    }
+
+}

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/BootstrapResource.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/BootstrapResource.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/BootstrapResource.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/BootstrapResource.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,32 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2.resources;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+
+public interface BootstrapResource {
+
+    @GET
+    @Produces({ MediaType.TEXT_HTML })
+    public String bootstrap();
+
+}
\ No newline at end of file

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/DomainObjectResource.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/DomainObjectResource.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/DomainObjectResource.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/DomainObjectResource.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,112 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2.resources;
+
+import java.io.InputStream;
+import java.util.List;
+
+import javax.ws.rs.DELETE;
+import javax.ws.rs.FormParam;
+import javax.ws.rs.GET;
+import javax.ws.rs.MatrixParam;
+import javax.ws.rs.POST;
+import javax.ws.rs.PUT;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.Produces;
+import javax.ws.rs.QueryParam;
+import javax.ws.rs.core.MediaType;
+
+// under /objects
+public interface DomainObjectResource {
+
+    @GET
+    @Path("/{oid}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String object(@PathParam("oid") final String oidStr);
+
+    @GET
+    @Path("/{oid}/properties{propertyId}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String propertyDetails(
+        @PathParam("oid") final String oidStr,
+        @PathParam("propertyId") final String propertyId);
+
+    @PUT
+    @Path("/{oid}/properties{propertyId}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String modifyProperty(
+        @PathParam("oid") final String oidStr,
+        @PathParam("propertyId") final String propertyId, 
+        @FormParam("proposedValue") final String proposedValue);
+
+    @DELETE
+    @Path("/{oid}/properties/{propertyId}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String clearProperty(
+        @PathParam("oid") final String oidStr, 
+        @PathParam("propertyId") final String propertyId);
+
+    @GET
+    @Path("/{oid}/collections/{collectionId}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String accessCollection(
+        @PathParam("oid") final String oidStr,
+        @PathParam("collectionId") final String collectionId);
+
+    @PUT
+    @Path("/{oid}/collections/{collectionId}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String addToCollection(
+        @PathParam("oid") final String oidStr,
+        @PathParam("collectionId") final String collectionId,
+        @FormParam("proposedValue") final String proposedValueOidStr);
+
+    @DELETE
+    @Path("/{oid}/collections/{collectionId}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String removeFromCollection(
+        @PathParam("oid") final String oidStr,
+        @PathParam("collectionId") final String collectionId,
+        @FormParam("proposedValue") final String proposedValueOidStr);
+
+    @GET
+    @Path("/{oid}/actions/{actionId}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String actionPrompt(
+        @PathParam("oid") final String oidStr, 
+        @PathParam("actionId") final String actionId);
+
+    @POST
+    @Path("/{oid}/actions/{actionId}/invoke")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String invokeAction(
+        @PathParam("oid") final String oidStr, 
+        @PathParam("actionId") final String actionId,
+        final InputStream body);
+
+    @GET
+    @Path("/{oid}/actions/{actionId}/invoke")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String invokeActionIdempotent(
+        @PathParam("oid") final String oidStr, 
+        @PathParam("actionId") final String actionId,
+        @QueryParam("argument") final List<String> arguments);
+
+}
\ No newline at end of file

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/HomePageResource.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/HomePageResource.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/HomePageResource.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/HomePageResource.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,31 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2.resources;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+
+public interface HomePageResource {
+
+    @GET
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String resources();
+
+}
\ No newline at end of file

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/ServicesResource.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/ServicesResource.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/ServicesResource.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/ServicesResource.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,33 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2.resources;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+
+public interface ServicesResource {
+
+    @GET
+    @Produces({ MediaType.APPLICATION_JSON })
+    @Path("/")
+    public String services();
+
+}
\ No newline at end of file

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/SpecsResource.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/SpecsResource.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/SpecsResource.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/SpecsResource.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,81 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2.resources;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+
+public interface SpecsResource {
+
+    @GET
+    @Path("/")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public abstract String specs();
+
+    @GET
+    @Path("/{specFullName}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public abstract String spec(@PathParam("specFullName") final String specFullName);
+
+    @GET
+    @Path("/{specFullName}/facet/{facetType}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public abstract String specFacet(@PathParam("specFullName") final String specFullName,
+        @PathParam("facetType") final String facetTypeName);
+
+    @GET
+    @Path("/{specFullName}/property/{propertyName}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public abstract String specProperty(@PathParam("specFullName") final String specFullName,
+        @PathParam("propertyName") final String propertyName);
+
+    @GET
+    @Path("/{specFullName}/collection/{collectionName}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public abstract String specCollection(@PathParam("specFullName") final String specFullName,
+        @PathParam("collectionName") final String collectionName);
+
+    @GET
+    @Path("/{specFullName}/action/{actionId}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public abstract String specAction(@PathParam("specFullName") final String specFullName,
+        @PathParam("actionId") final String actionId);
+
+    @GET
+    @Path("/{specFullName}/property/{propertyName}/facet/{facetType}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public abstract String specPropertyFacet(@PathParam("specFullName") final String specFullName,
+        @PathParam("propertyName") final String propertyName, @PathParam("facetType") final String facetTypeName);
+
+    @GET
+    @Path("/{specFullName}/collection/{collectionName}/facet/{facetType}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public abstract String specCollectionFacet(@PathParam("specFullName") final String specFullName,
+        @PathParam("collectionName") final String collectionName, @PathParam("facetType") final String facetTypeName);
+
+    @GET
+    @Path("/{specFullName}/action/{actionId}/facet/{facetType}")
+    @Produces({ MediaType.APPLICATION_JSON })
+    public abstract String specActionFacet(@PathParam("specFullName") final String specFullName,
+        @PathParam("actionId") final String actionId, @PathParam("facetType") final String facetTypeName);
+
+}
\ No newline at end of file

Added: incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/UserResource.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/UserResource.java?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/UserResource.java (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/main/java/org/apache/isis/viewer/restful/applib2/resources/UserResource.java Sun Jun 26 11:51:01 2011
@@ -0,0 +1,31 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.viewer.restful.applib2.resources;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+
+public interface UserResource {
+
+    @GET
+    @Produces({ MediaType.APPLICATION_JSON })
+    public String user();
+
+}
\ No newline at end of file

Added: incubator/isis/trunk/viewer/json/applib2/src/site/apt/index.apt
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/site/apt/index.apt?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/site/apt/index.apt (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/site/apt/index.apt Sun Jun 26 11:51:01 2011
@@ -0,0 +1,28 @@
+~~  Licensed to the Apache Software Foundation (ASF) under one
+~~  or more contributor license agreements.  See the NOTICE file
+~~  distributed with this work for additional information
+~~  regarding copyright ownership.  The ASF licenses this file
+~~  to you 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.  See the License for the
+~~  specific language governing permissions and limitations
+~~  under the License.
+
+Restful AppLib
+
+  The restful viewer's <applib> module defines (among other things) the
+  JAX-RS (JSR-311) compliant interfaces which define the URIs exposed by
+  the viewer.  These do allow frameworks (such as JBoss' {{{http://jboss.org/resteasy}RestEasy}}
+  framework) to generate client-side bindings.  
+
+Further Info
+  
+  See this module's {{{./apidocs/index.html}Javadoc}} and the {{{../docbkx/html/guide/isis-restful-viewer.html}user guide}} for more information.
+  
\ No newline at end of file

Added: incubator/isis/trunk/viewer/json/applib2/src/site/apt/jottings.apt
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/site/apt/jottings.apt?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/site/apt/jottings.apt (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/site/apt/jottings.apt Sun Jun 26 11:51:01 2011
@@ -0,0 +1,24 @@
+~~  Licensed to the Apache Software Foundation (ASF) under one
+~~  or more contributor license agreements.  See the NOTICE file
+~~  distributed with this work for additional information
+~~  regarding copyright ownership.  The ASF licenses this file
+~~  to you 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.  See the License for the
+~~  specific language governing permissions and limitations
+~~  under the License.
+
+
+
+Jottings
+ 
+  This page is to capture any random jottings relating to this module prior 
+  to being moved into formal documentation. 
+ 

Added: incubator/isis/trunk/viewer/json/applib2/src/site/site.xml
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/applib2/src/site/site.xml?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/applib2/src/site/site.xml (added)
+++ incubator/isis/trunk/viewer/json/applib2/src/site/site.xml Sun Jun 26 11:51:01 2011
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you 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.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<project name="${project.name}">
+    <version position="right"/>
+
+	<body>
+		<breadcrumbs>
+			<item name="Applib" href="index.html"/>
+		</breadcrumbs>
+
+		<menu name="Restful Applib">
+			<item name="About" href="index.html" />
+            <item name="Jottings" href="jottings.html" />
+		</menu>
+
+        <menu name="Restful Modules">
+            <item name="Applib" href="./applib/index.html" />
+            <item name="Viewer" href="./viewer/index.html" />
+        </menu>
+
+		<menu name="Maven Reports" ref="reports" />
+	</body>
+</project>

Added: incubator/isis/trunk/viewer/json/pom.xml
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/pom.xml?rev=1139763&view=auto
==============================================================================
--- incubator/isis/trunk/viewer/json/pom.xml (added)
+++ incubator/isis/trunk/viewer/json/pom.xml Sun Jun 26 11:51:01 2011
@@ -0,0 +1,126 @@
+e?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you 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.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+	<modelVersion>4.0.0</modelVersion>
+	
+	<parent>
+		<groupId>org.apache.isis</groupId>
+		<artifactId>viewer</artifactId>
+		<version>0.1.2-incubating-SNAPSHOT</version>
+	</parent>
+
+	<groupId>org.apache.isis.viewer</groupId>
+	<artifactId>json</artifactId>
+	<version>0.1.2-incubating-SNAPSHOT</version>
+
+	<name>JSON Viewer</name>
+
+	<packaging>pom</packaging>
+
+    <properties>
+        <siteBaseDir>../..</siteBaseDir>
+		<relativeUrl>viewer/json/</relativeUrl>
+
+        <docbkxGuideTitle>Apache Isis JSON Viewer</docbkxGuideTitle>
+        <docbkxGuideSubTitle>Programming, Configuration and Deployment Guide</docbkxGuideSubTitle>
+        <docbkxGuideName>isis-json-viewer</docbkxGuideName>
+    </properties>
+	
+    <!-- used in Site generation for relative references. -->
+    <url>http://incubator.apache.org/isis/${relativeUrl}</url>
+
+	<repositories>
+		<!-- required for RestEasy -->
+		<repository>
+			<id>jboss</id>
+			<url>http://repository.jboss.org/nexus/content/groups/public-jboss/</url>
+		</repository>
+		<repository>
+			<id>maven2-repository.dev.java.net</id>
+			<name>Java.net Repository for Maven</name>
+			<url>http://download.java.net/maven/2/</url>
+			<layout>default</layout>
+		</repository>
+		<repository>
+			<id>maven-repository.dev.java.net</id>
+			<name>Java.net Maven 1 Repository (legacy)</name>
+			<url>http://download.java.net/maven/1</url>
+		</repository>
+	</repositories>
+
+	<build>
+		<plugins>
+            <plugin>
+                <groupId>com.agilejava.docbkx</groupId>
+                <artifactId>docbkx-maven-plugin</artifactId>
+				<inherited>false</inherited>
+            </plugin>
+		</plugins>
+	</build>
+
+    <dependencyManagement>
+        <dependencies>
+            <!-- TODO: remove this dependency -->
+            <dependency>
+                <groupId>org.apache.isis.runtimes</groupId>
+                <artifactId>dflt</artifactId>
+                <version>0.1.2-incubating-SNAPSHOT</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+
+			<!-- JSON Viewer -->
+	   		<dependency>
+				<groupId>org.apache.isis.viewer</groupId>
+				<artifactId>json-applib</artifactId>
+				<version>0.1.2-incubating-SNAPSHOT</version>
+			</dependency>
+	   		<dependency>
+				<groupId>org.apache.isis.viewer</groupId>
+				<artifactId>json-applib</artifactId>
+				<version>0.1.2-incubating-SNAPSHOT</version>
+                <type>test-jar</type>
+			</dependency>
+	   		<dependency>
+				<groupId>org.apache.isis.viewer</groupId>
+				<artifactId>json-viewer</artifactId>
+				<version>0.1.2-incubating-SNAPSHOT</version>
+			</dependency>
+	   		<dependency>
+				<groupId>org.apache.isis.viewer</groupId>
+				<artifactId>json-viewer</artifactId>
+				<version>0.1.2-incubating-SNAPSHOT</version>
+                <type>test-jar</type>
+			</dependency>
+
+
+		</dependencies>
+	</dependencyManagement>
+
+
+    <!-- USE -pl xxx TO SELECT A SINGLE MODULE -->
+    <modules>
+	    <module>applib</module>
+	    <module>viewer</module>
+    </modules>
+
+</project>

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/collection-items-resource.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/collection-items-resource.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/collection-items-resource.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/home-page-resource.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/home-page-resource.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/home-page-resource.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-actions-section.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-actions-section.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-actions-section.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-collections-section.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-collections-section.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-collections-section.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-properties-section.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-properties-section.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-properties-section.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-resource.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-resource.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-resource.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-title-section.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-title-section.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claim-title-section.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claims-resource.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claims-resource.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-claims-resource.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-employee-contributed-actions.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-employee-contributed-actions.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/object-employee-contributed-actions.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/resource-example.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/resource-example.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/resource-example.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/server-mode-no-credentials.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/server-mode-no-credentials.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/server-mode-no-credentials.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/server-mode-with-credentials.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/server-mode-with-credentials.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/server-mode-with-credentials.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/services-resource.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/services-resource.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/services-resource.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-member-facet.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-member-facet.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-member-facet.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-member-resource.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-member-resource.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-member-resource.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-resource.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-resource.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/spec-resource.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/specs-resource.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/specs-resource.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/specs-resource.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/user-resource.png
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/viewer/json/src/docbkx/guide/images/user-resource.png?rev=1139763&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/isis/trunk/viewer/json/src/docbkx/guide/images/user-resource.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream