[Building Sakai] Use of GradebookService as a web service
Charles Severance
csev at umich.edu
Sun May 20 09:59:33 PDT 2012
Shoji,
If you look here
https://source.sakaiproject.org/svn//basiclti/trunk/basiclti-blis/src/java/org/sakaiproject/blti/ServiceServlet.java
You will find some simple calls to the gradebook service to set grades.
Here
https://source.sakaiproject.org/svn//basiclti/trunk/basiclti-portlet/src/java/org/sakaiproject/portlets/IMSBLTIPortlet.java
It makes gradebook items.
I borrowed the code from the Assignments tool/
/Chuck
On May 19, 2012, at 10:13 PM, Shoji Kajita wrote:
> Dear Sakai Developers,
>
> I'm trying to develop a new web service for getting information from
> Gradebook, but I have been struggling from using GradebookService.
>
> For example, I can call
>
> gradebookService.isGradebookDefined
>
> successfully when I use
>
> gradebookService = (GradebookService) ComponentManager.get("org.sakaiproject.service.gradebook.GradebookService");
>
> as seen in the following simple code. But, it is failed when I use
>
> gradebookService = (GradebookService) ComponentManager.get("org.sakaiproject.service.gradebook.shared.GradebookService");
>
> in line 31. I'm probably misunderstanding something.
>
> I really appreciate if someone gives me any pointer to address this.
>
> Best regards,
> Shoji Kajita
> Kyoto University
> ----
> 01: import org.apache.axis.AxisFault;
> 02: import org.apache.commons.logging.Log;
> 03: import org.apache.commons.logging.LogFactory;
> 04: import org.sakaiproject.service.gradebook.shared.GradebookService;
> 05: import org.sakaiproject.tool.api.Session;
> 06: import org.sakaiproject.tool.api.SessionManager;
> 07: import org.sakaiproject.component.cover.ComponentManager;
> 08:
> 09: public class CourseGradebook {
> 10:
> 11: private GradebookService gradebookService;
> 12: private SessionManager sessionManager;
> 13:
> 14: private static Log LOG = LogFactory.getLog(CourseGradebook.class);
> 15:
> 16: private Session establishSession(String sessionId) throws AxisFault
> 17: {
> 18: Session s = sessionManager.getSession(sessionId);
> 19:
> 20: if (s == null)
> 21: {
> 22: throw new AxisFault("Session \""+sessionId+"\" is not active");
> 23: }
> 24: s.setActive();
> 25: sessionManager.setCurrentSession(s);
> 26: return s;
> 27: }
> 28:
> 29: public CourseGradebook() {
> 30: // gradebookService = (GradebookService) ComponentManager.get(GradebookService.class.getName());
> 31: gradebookService = (GradebookService) ComponentManager.get("org.sakaiproject.service.gradebook.shared.GradebookService");
> 32: // gradebookService = (GradebookService) ComponentManager.get("org.sakaiproject.service.gradebook.GradebookService");
> 33: sessionManager = (SessionManager) ComponentManager.get(SessionManager.class.getName());
> 34: }
> 35:
> 36: public String getCompletedDate(String sessionId, String siteId) throws AxisFault {
> 37:
> 38: Session session = establishSession(sessionId);
> 39:
> 40: String gbID = siteId;
> 41: if (!gradebookService.isGradebookDefined(gbID)) {
> 42: System.out.println("Debug: Not found.");
> 43: return "No gradebook found for this site.";
> 44: }
> 45: return "Gradebook found for this site.";
> 46: }
> 47:
> 48: }
> -----
> _______________________________________________
> sakai-dev mailing list
> sakai-dev at collab.sakaiproject.org
> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>
> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20120520/e166d1c1/attachment.html
More information about the sakai-dev
mailing list