Fix rating and comment component
git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@1630738 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/slingshot/src/main/java/org/apache/sling/sample/slingshot/impl/CommentPostServlet.java b/slingshot/src/main/java/org/apache/sling/sample/slingshot/impl/CommentPostServlet.java
index 919daf5..11397aa 100644
--- a/slingshot/src/main/java/org/apache/sling/sample/slingshot/impl/CommentPostServlet.java
+++ b/slingshot/src/main/java/org/apache/sling/sample/slingshot/impl/CommentPostServlet.java
@@ -66,6 +66,8 @@
try {
resolver = factory.getAdministrativeResourceResolver(null);
+ final Resource reqResource = resolver.getResource(request.getResource().getPath());
+
final Map<String, Object> properties = new HashMap<String, Object>();
properties.put(ResourceResolver.PROPERTY_RESOURCE_TYPE, SlingshotConstants.RESOURCETYPE_COMMENT);
properties.put(SlingshotConstants.PROPERTY_TITLE, title);
@@ -78,8 +80,8 @@
for(int i=0; i<5; i++) {
try {
exception = null;
- final String name = ResourceUtil.createUniqueChildName(request.getResource(), Util.filter(title));
- newResource = resolver.create(request.getResource(), name, properties);
+ final String name = ResourceUtil.createUniqueChildName(reqResource, Util.filter(title));
+ newResource = resolver.create(reqResource, name, properties);
resolver.commit();
break;
diff --git a/slingshot/src/main/java/org/apache/sling/sample/slingshot/impl/RatingPostServlet.java b/slingshot/src/main/java/org/apache/sling/sample/slingshot/impl/RatingPostServlet.java
index 36f0c6f..da574d4 100644
--- a/slingshot/src/main/java/org/apache/sling/sample/slingshot/impl/RatingPostServlet.java
+++ b/slingshot/src/main/java/org/apache/sling/sample/slingshot/impl/RatingPostServlet.java
@@ -26,6 +26,7 @@
import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.SlingHttpServletResponse;
import org.apache.sling.api.resource.LoginException;
+import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ResourceResolver;
import org.apache.sling.api.resource.ResourceResolverFactory;
import org.apache.sling.api.servlets.SlingAllMethodsServlet;
@@ -52,14 +53,16 @@
final String userId = request.getRemoteUser();
- logger.info("New rating from {} : {}", userId, rating);
+ logger.debug("New rating from {} : {}", userId, rating);
- // save comment
+ // save rating
ResourceResolver resolver = null;
try {
resolver = factory.getAdministrativeResourceResolver(null);
- SlingshotUtil.setOwnRating(request.getResource().getParent(), userId, Integer.valueOf(rating));
+ final Resource reqResource = resolver.getResource(request.getResource().getPath());
+
+ SlingshotUtil.setOwnRating(reqResource.getParent(), userId, Integer.valueOf(rating));
} catch ( final LoginException le ) {
throw new ServletException("Unable to login", le);
} finally {