You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by mf...@apache.org on 2012/10/25 22:54:44 UTC
svn commit: r1402325 - in /rave/branches/mongo/rave-components:
rave-core/src/main/java/org/apache/rave/portal/model/impl/
rave-mongodb/src/main/java/org/apache/rave/portal/model/
rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/
Author: mfranklin
Date: Thu Oct 25 20:54:44 2012
New Revision: 1402325
URL: http://svn.apache.org/viewvc?rev=1402325&view=rev
Log:
Fixed infinite recursion on serialization
Modified:
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageUserImpl.java
rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/RegionWidgetImpl.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbCategory.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPage.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageTemplate.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageTemplateWidget.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageUser.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbRegionWidget.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidget.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidgetComment.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidgetTag.java
rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java
Modified: rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageUserImpl.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageUserImpl.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageUserImpl.java (original)
+++ rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/PageUserImpl.java Thu Oct 25 20:54:44 2012
@@ -19,15 +19,18 @@
package org.apache.rave.portal.model.impl;
import org.apache.rave.portal.model.*;
+import org.codehaus.jackson.annotate.JsonBackReference;
public class PageUserImpl implements PageUser {
private Long id;
private User user;
- private Page page;
private boolean editor;
private Long renderSequence;
private PageInvitationStatus pageStatus;
+ @JsonBackReference
+ private Page page;
+
public PageUserImpl(){}
public PageUserImpl(Long id){
Modified: rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/RegionWidgetImpl.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/RegionWidgetImpl.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/RegionWidgetImpl.java (original)
+++ rave/branches/mongo/rave-components/rave-core/src/main/java/org/apache/rave/portal/model/impl/RegionWidgetImpl.java Thu Oct 25 20:54:44 2012
@@ -22,13 +22,13 @@ import org.apache.rave.portal.model.Regi
import org.apache.rave.portal.model.RegionWidget;
import org.apache.rave.portal.model.RegionWidgetPreference;
import org.apache.rave.portal.model.Widget;
+import org.codehaus.jackson.annotate.JsonBackReference;
import java.util.List;
public class RegionWidgetImpl implements RegionWidget {
private Long id;
private Widget widget;
- private Region region;
private String renderPosition;
private Integer renderOrder = 0;
private Boolean collapsed = false;
@@ -36,6 +36,9 @@ public class RegionWidgetImpl implements
private Boolean locked = false;
private Boolean hideChrome = false;
+ @JsonBackReference
+ private Region region;
+
public RegionWidgetImpl() {
}
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbCategory.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbCategory.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbCategory.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbCategory.java Thu Oct 25 20:54:44 2012
@@ -35,7 +35,7 @@ import static org.springframework.data.m
import static org.springframework.data.mongodb.core.query.Query.query;
@XmlAccessorType(value = XmlAccessType.FIELD)
-@JsonAutoDetect(value = JsonMethod.FIELD)
+@JsonAutoDetect(value = JsonMethod.FIELD, fieldVisibility = JsonAutoDetect.Visibility.ANY)
public class MongoDbCategory extends CategoryImpl {
@XmlTransient @JsonIgnore
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPage.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPage.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPage.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPage.java Thu Oct 25 20:54:44 2012
@@ -20,7 +20,6 @@
package org.apache.rave.portal.model;
import org.apache.rave.portal.model.impl.PageImpl;
-import org.apache.rave.portal.repository.PageLayoutRepository;
import org.apache.rave.portal.repository.UserRepository;
import org.codehaus.jackson.annotate.JsonAutoDetect;
import org.codehaus.jackson.annotate.JsonIgnore;
@@ -31,22 +30,18 @@ import javax.xml.bind.annotation.XmlAcce
import javax.xml.bind.annotation.XmlTransient;
@XmlAccessorType(value = XmlAccessType.FIELD)
-@JsonAutoDetect(value = JsonMethod.FIELD)
+@JsonAutoDetect(value = JsonMethod.FIELD, fieldVisibility = JsonAutoDetect.Visibility.ANY)
public class MongoDbPage extends PageImpl {
@XmlTransient @JsonIgnore
private UserRepository userRepository;
- @XmlTransient @JsonIgnore
- private PageLayoutRepository pageLayoutRepository;
-
private Long ownerId;
private String pageLayoutCode;
public MongoDbPage() {}
- public MongoDbPage(PageLayoutRepository pageLayoutRepository, UserRepository userRepository) {
- this.pageLayoutRepository = pageLayoutRepository;
+ public MongoDbPage(UserRepository userRepository) {
this.userRepository = userRepository;
}
@@ -74,14 +69,6 @@ public class MongoDbPage extends PageImp
this.userRepository = userRepository;
}
- public PageLayoutRepository getPageLayoutRepository() {
- return pageLayoutRepository;
- }
-
- public void setPageLayoutRepository(PageLayoutRepository pageLayoutRepository) {
- this.pageLayoutRepository = pageLayoutRepository;
- }
-
@Override
public User getOwner() {
User owner = super.getOwner();
@@ -93,15 +80,6 @@ public class MongoDbPage extends PageImp
}
@Override
- public PageLayout getPageLayout() {
- PageLayout layout = super.getPageLayout();
- if(layout == null) {
- layout = pageLayoutRepository.getByPageLayoutCode(pageLayoutCode);
- super.setPageLayout(layout);
- }
- return layout;
- }
- @Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof Page)) return false;
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageTemplate.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageTemplate.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageTemplate.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageTemplate.java Thu Oct 25 20:54:44 2012
@@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlAcce
import javax.xml.bind.annotation.XmlTransient;
@XmlAccessorType(value = XmlAccessType.FIELD)
-@JsonAutoDetect(value = JsonMethod.FIELD)
+@JsonAutoDetect(value = JsonMethod.FIELD, fieldVisibility = JsonAutoDetect.Visibility.ANY)
public class MongoDbPageTemplate extends PageTemplateImpl {
@XmlTransient @JsonIgnore
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageTemplateWidget.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageTemplateWidget.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageTemplateWidget.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageTemplateWidget.java Thu Oct 25 20:54:44 2012
@@ -30,7 +30,7 @@ import javax.xml.bind.annotation.XmlAcce
import javax.xml.bind.annotation.XmlTransient;
@XmlAccessorType(value = XmlAccessType.FIELD)
-@JsonAutoDetect(value = JsonMethod.FIELD)
+@JsonAutoDetect(value = JsonMethod.FIELD, fieldVisibility = JsonAutoDetect.Visibility.ANY)
public class MongoDbPageTemplateWidget extends PageTemplateWidgetImpl{
@XmlTransient @JsonIgnore
private WidgetRepository widgetRepository;
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageUser.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageUser.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageUser.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbPageUser.java Thu Oct 25 20:54:44 2012
@@ -31,7 +31,7 @@ import javax.xml.bind.annotation.XmlTran
@XmlAccessorType(value = XmlAccessType.FIELD)
-@JsonAutoDetect(value = JsonMethod.FIELD)
+@JsonAutoDetect(value = JsonMethod.FIELD, fieldVisibility = JsonAutoDetect.Visibility.ANY)
public class MongoDbPageUser extends PageUserImpl {
@XmlTransient @JsonIgnore
private UserRepository userRepository;
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbRegionWidget.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbRegionWidget.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbRegionWidget.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbRegionWidget.java Thu Oct 25 20:54:44 2012
@@ -32,7 +32,7 @@ import javax.xml.bind.annotation.XmlTran
@XmlAccessorType(value = XmlAccessType.FIELD)
-@JsonAutoDetect(value = JsonMethod.FIELD)
+@JsonAutoDetect(value = JsonMethod.FIELD, fieldVisibility = JsonAutoDetect.Visibility.ANY)
public class MongoDbRegionWidget extends RegionWidgetImpl {
private long widgetId;
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidget.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidget.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidget.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidget.java Thu Oct 25 20:54:44 2012
@@ -36,7 +36,7 @@ import java.util.List;
*/
@XmlAccessorType(value = XmlAccessType.FIELD)
-@JsonAutoDetect(value = JsonMethod.FIELD)
+@JsonAutoDetect(value = JsonMethod.FIELD, fieldVisibility = JsonAutoDetect.Visibility.ANY)
public class MongoDbWidget extends WidgetImpl {
@XmlTransient @JsonIgnore
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidgetComment.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidgetComment.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidgetComment.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidgetComment.java Thu Oct 25 20:54:44 2012
@@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlTran
*/
@XmlAccessorType(value = XmlAccessType.FIELD)
-@JsonAutoDetect(value = JsonMethod.FIELD)
+@JsonAutoDetect(value = JsonMethod.FIELD, fieldVisibility = JsonAutoDetect.Visibility.ANY)
public class MongoDbWidgetComment extends WidgetCommentImpl {
@XmlTransient @JsonIgnore
private UserRepository userRepository;
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidgetTag.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidgetTag.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidgetTag.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/MongoDbWidgetTag.java Thu Oct 25 20:54:44 2012
@@ -33,7 +33,7 @@ import javax.xml.bind.annotation.XmlTran
*/
@XmlAccessorType(value = XmlAccessType.FIELD)
-@JsonAutoDetect(value = JsonMethod.FIELD)
+@JsonAutoDetect(value = JsonMethod.FIELD, fieldVisibility = JsonAutoDetect.Visibility.ANY)
public class MongoDbWidgetTag extends WidgetTagImpl {
@XmlTransient @JsonIgnore
private UserRepository userRepository;
Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java?rev=1402325&r1=1402324&r2=1402325&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java Thu Oct 25 20:54:44 2012
@@ -63,7 +63,6 @@ public class MongoDbPageConverter implem
page.setOwner(null);
page.setPageLayout(null);
page.setParentPage(null);
- page.setPageLayoutRepository(null);
page.setUserRepository(null);
List<PageUser> convertedMembers = Lists.newArrayList();
@@ -108,7 +107,7 @@ public class MongoDbPageConverter implem
if (page == null) {
return;
}
- page.setPageLayoutRepository(pageLayoutRepository);
+ page.setPageLayout(pageLayoutRepository.getByPageLayoutCode(page.getPageLayoutCode()));
page.setUserRepository(userRepository);
for (PageUser user : page.getMembers()) {