Author: olamy
Date: Thu Mar  1 10:28:52 2012
New Revision: 1295498

URL: http://svn.apache.org/viewvc?rev=1295498&view=rev
Log:
[MRM-1610] Use Jackson as jaxrs provider for cxf for performance reasons
fix some javascript mapping for redback part.

Modified:
    
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/resources/META-INF/spring-context.xml
    archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/pom.xml
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/resources/META-INF/spring-context.xml
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/index.html
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/redback.js
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/roles.js
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/users.js

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/resources/META-INF/spring-context.xml
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/resources/META-INF/spring-context.xml?rev=1295498&r1=1295497&r2=1295498&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/resources/META-INF/spring-context.xml
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/resources/META-INF/spring-context.xml
 Thu Mar  1 10:28:52 2012
@@ -39,11 +39,17 @@
   <context:component-scan
       base-package="org.apache.archiva.rest.services"/>
 
+  <bean id="jsonProvider" 
class="org.codehaus.jackson.jaxrs.JacksonJsonProvider">
+    <property name="mapper" ref="redbackJacksonMapper"/>
+  </bean>
+
+  <bean id="redbackJacksonMapper" 
class="org.codehaus.jackson.map.ObjectMapper">
+  </bean>
 
   <jaxrs:server id="archivaServices" address="/archivaServices">
 
     <jaxrs:providers>
-      <bean class="org.codehaus.jackson.jaxrs.JacksonJsonProvider"/>
+      <ref bean="jsonProvider"/>
 
       <ref bean="authenticationInterceptor#rest"/>
       <ref bean="permissionInterceptor#rest"/>

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/pom.xml
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/pom.xml?rev=1295498&r1=1295497&r2=1295498&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/pom.xml 
(original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/pom.xml Thu Mar 
 1 10:28:52 2012
@@ -527,6 +527,18 @@
       <scope>runtime</scope>
     </dependency>
     <dependency>
+      <groupId>org.codehaus.jackson</groupId>
+      <artifactId>jackson-jaxrs</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.jackson</groupId>
+      <artifactId>jackson-xc</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.jackson</groupId>
+      <artifactId>jackson-core-asl</artifactId>
+    </dependency>
+    <dependency>
       <groupId>org.apache.cxf</groupId>
       <artifactId>cxf-bundle-jaxrs</artifactId>
       <exclusions>
@@ -542,6 +554,10 @@
           <groupId>org.apache.geronimo.specs</groupId>
           <artifactId>geronimo-javamail_1.4_spec</artifactId>
         </exclusion>
+        <exclusion>
+          <groupId>org.codehaus.jettison</groupId>
+          <artifactId>jettison</artifactId>
+        </exclusion>
       </exclusions>
     </dependency>
     <dependency>

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/resources/META-INF/spring-context.xml
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/resources/META-INF/spring-context.xml?rev=1295498&r1=1295497&r2=1295498&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/resources/META-INF/spring-context.xml
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/resources/META-INF/spring-context.xml
 Thu Mar  1 10:28:52 2012
@@ -57,6 +57,7 @@
   <jaxrs:server id="archivaUiServices" address="/archivaUiServices">
 
     <jaxrs:providers>
+      <bean class="org.codehaus.jackson.jaxrs.JacksonJsonProvider"/>
       <ref bean="authenticationInterceptor#rest"/>
       <ref bean="permissionInterceptor#rest"/>
       <ref bean="archivaRestServiceExceptionMapper"/>

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/index.html
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/index.html?rev=1295498&r1=1295497&r2=1295498&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/index.html
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/index.html
 Thu Mar  1 10:28:52 2012
@@ -53,14 +53,19 @@ appendArchivaVersion=function(){
 buildLoadJsUrl=function(srcScript){
   return srcScript+"?"+appendArchivaVersion();
 }
+
+$.ajaxSetup({
+  dataType: 'json'
+});
+
 $.ajax(
   {
     url: 
"restServices/archivaUiServices/runtimeInfoService/archivaRuntimeInfo",
     dataType: 'json',
     success:function(data){
-        window.archivaDevMode=data.applicationRuntimeInfo.devMode;
-        window.archivaJavascriptLog=data.applicationRuntimeInfo.javascriptLog;
-        window.archivaRuntimeInfo=data.applicationRuntimeInfo;
+        window.archivaDevMode=data.devMode;
+        window.archivaJavascriptLog=data.javascriptLog;
+        window.archivaRuntimeInfo=data;
         require.config({
             baseUrl: "js/"
           });

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js?rev=1295498&r1=1295497&r2=1295498&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
 Thu Mar  1 10:28:52 2012
@@ -73,7 +73,7 @@ $(function() {
     $.ajax({
       url: url,
       success: function(data){
-        var mappedOperations = $.map(data.operation, function(item) {
+        var mappedOperations = $.map(data, function(item) {
             return mapOperation(item);
         });
         window.redbackModel.operatioNames = $.map(mappedOperations, 
function(item){
@@ -143,7 +143,7 @@ $(function() {
       type: "GET",
       dataType: 'json',
       success: function(data) {
-        var adminExists = JSON.parse(data);
+        var adminExists = data;
         if (adminExists == false) {
           $("#create-admin-link").show();
           $("#login-link").hide();

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/redback.js
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/redback.js?rev=1295498&r1=1295497&r2=1295498&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/redback.js
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/redback.js
 Thu Mar  1 10:28:52 2012
@@ -42,7 +42,7 @@ $(function() {
     $.ajax("restServices/redbackServices/loginService/isLogged", {
       type: "GET",
       success: function(data) {
-        userLogged = JSON.parse(data);
+        userLogged = data;
         if (successFn){
           successFn(userLogged == false ? null : 
jQuery.parseJSON($.cookie('redback_login')));
         }

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/roles.js
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/roles.js?rev=1295498&r1=1295497&r2=1295498&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/roles.js
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/roles.js
 Thu Mar  1 10:28:52 2012
@@ -85,7 +85,7 @@ $(function() {
           type: "POST",
           dataType: 'json',
           contentType: 'application/json',
-          data: "{\"role\": " +  ko.toJSON(self)+"}",
+          data: ko.toJSON(self),
           success: function(data) {
             clearUserMessages();
             displaySuccessMessage($.i18n.prop("role.users.updated",this.name));
@@ -134,7 +134,7 @@ $(function() {
          type: "GET",
          dataType: 'json',
          success: function(data) {
-           var mappedRole = mapRole(data.role);
+           var mappedRole = mapRole(data);
            role.parentRoleNames(mappedRole.parentRoleNames());
            role.parentsRolesUsers(mappedRole.parentsRolesUsers());
            role.users(mappedRole.users());
@@ -215,7 +215,7 @@ $(function() {
         type: "GET",
         dataType: 'json',
         success: function(data) {
-          var mappedRoles = $.map(data.role, function(item) {
+          var mappedRoles = $.map(data, function(item) {
             return mapRole(item);
           });
           var rolesViewModel = new RolesViewModel();
@@ -263,7 +263,6 @@ $(function() {
       activateRoleUsersEditTab()
     }
     saveRoleDescription=function(){
-      $.log("saveRoleDescription:"+currentRole.description());
       currentRole.updateDescription();
     }
     saveUsers=function(){

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js?rev=1295498&r1=1295497&r2=1295498&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js
 Thu Mar  1 10:28:52 2012
@@ -95,12 +95,12 @@ $(function() {
       }
       var currentUser = this;
       $.ajax("restServices/redbackServices/userService/createUser", {
-          data: "{\"user\": " +  ko.toJSON(this)+"}",
+          data: ko.toJSON(this),
           contentType: 'application/json',
           type: "POST",
           dataType: 'json',
           success: function(result) {
-            var created = JSON.parse(result);
+            var created = result;
             if (created == true) {
               displaySuccessMessage( 
$.i18n.prop("user.created",currentUser.username()));
               if (successFnCallback){
@@ -130,12 +130,12 @@ $(function() {
       }
       var currentAdminUser = this;
       $.ajax("restServices/redbackServices/userService/createAdminUser", {
-          data: "{\"user\": " +  ko.toJSON(this)+"}",
+          data: ko.toJSON(this),
           contentType: 'application/json',
           type: "POST",
           dataType: 'json',
           success: function(result) {
-            var created = JSON.parse(result);
+            var created = result;
             if (created == true) {
               displaySuccessMessage( $.i18n.prop("user.admin.created"));
               var onSuccessCall=function(){
@@ -161,12 +161,12 @@ $(function() {
     this.update=function(){
       var currentUser = this;
       $.ajax("restServices/redbackServices/userService/updateUser", {
-          data: "{\"user\": " +  ko.toJSON(this)+"}",
+          data: ko.toJSON(this),
           contentType: 'application/json',
           type: "POST",
           dataType: 'json',
           success: function(result) {
-            var updated = JSON.parse(result);
+            var updated = result;
             if (updated == true) {
               clearUserMessages();
               
displaySuccessMessage($.i18n.prop("user.updated",currentUser.username()));
@@ -207,7 +207,7 @@ $(function() {
       var curUser = this;
       clearUserMessages();
       
$.ajax("restServices/redbackServices/roleManagementService/updateUserRoles", {
-          data: "{\"user\": " +  ko.toJSON(this)+"}",
+          data: ko.toJSON(this),
           contentType: 'application/json',
           type: "POST",
           dataType: 'json',
@@ -280,6 +280,13 @@ $(function() {
    */
   AdminUserViewModel=function() {
     this.user = new User("admin","","", "the administrator");
+    var self=this;
+    saveUser=function(){
+      if(! $("#user-create" ).valid() ) {
+        return;
+      }
+      self.user.createAdmin();
+    }
   }
 
   /**
@@ -343,12 +350,12 @@ $(function() {
     if (result == null) {
       logged = false;
     } else {
-      if (result.user) {
+      if (result.username) {
         logged = true;
       }
     }
     if (logged == true) {
-      var user = mapUser(result.user);
+      var user = mapUser(result);
       if (user.passwordChangeRequired()==true){
         changePasswordBox(true,false,user);
         return;
@@ -538,12 +545,12 @@ $(function() {
   editUserDetails=function(user){
     $("#modal-user-edit-err-message").html("");
     $.ajax("restServices/redbackServices/userService/updateMe", {
-        data: "{\"user\": " +  ko.toJSON(user)+"}",
+        data: ko.toJSON(user),
         contentType: 'application/json',
         type: "POST",
         dataType: 'json',
         success: function(result) {
-          var created = JSON.parse(result);
+          var created = result;
           // FIXME i18n
           if (created == true) {
             displaySuccessMessage( $.i18n.prop("user.details.updated"));
@@ -595,7 +602,7 @@ $(function() {
       url: url,
       success: function(result){
         $.log("changePassword#success result:"+result);
-        var user = mapUser(result.user);
+        var user = mapUser(result);
         if (user) {
           window.modalChangePasswordBox.modal('hide');
           $.log("changePassword#sucess,registration:"+registration);

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/users.js
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/users.js?rev=1295498&r1=1295497&r2=1295498&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/users.js
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/users.js
 Thu Mar  1 10:28:52 2012
@@ -134,7 +134,7 @@ $(function() {
           type: "GET",
           dataType: 'json',
           success: function(data) {
-            var mappedRoles = $.map(data.role, function(item) {
+            var mappedRoles = $.map(data, function(item) {
               return item.name;
             });
             user.assignedRoles = ko.observableArray(mappedRoles);
@@ -193,7 +193,7 @@ $(function() {
         type: "GET",
         dataType: 'json',
         success: function(data) {
-          var mappedApplicationRoles = $.map(data.applicationRole, 
function(item) {
+          var mappedApplicationRoles = $.map(data, function(item) {
             return mapApplicationRoles(item);
           });
           
viewModel.applicationRoles=ko.observableArray(mappedApplicationRoles);
@@ -242,7 +242,7 @@ $(function() {
         type: "GET",
         dataType: 'json',
         success: function(data) {
-          var mappedUsers = $.map(data.user, function(item) {
+          var mappedUsers = $.map(data, function(item) {
             return mapUser(item);
           });
           var usersViewModel = new UsersViewModel();


Reply via email to