Sure. I am referring to an OpenSocial activity. Here is the code I am
trying to execute which is returning HTTP 500 (internal server error)
from the container. Please let me know if you need more information.
Thanks,
Usha
private static void allActivityTests(OpenSocialProvider provider,
OpenSocialClient client, Map<String, String> params) {
try {
String question = "question";
String[] answers = {"a", "b", "c"};
String description = "description";
String anonymous = "all";
String hours_open= "86400";
responseString = client.createPoll(params, question, answers, description, anonymous, hours_open);
} catch (org.opensocial.client.OpenSocialRequestException e) {
System.out.println("OpenSocialRequestException thrown: "
+ e.getMessage());
e.printStackTrace();
} catch (java.io.IOException e) {
System.out.println("IOException thrown: " + e.getMessage());
e.printStackTrace();
}
}
public String createPoll(Map<String, String> params, String question,
String[] answers, String description, String anonymous,
String hours_open) throws OpenSocialRequestException, IOException {
if (params.get("userId") == null || params.get("userId").equals("")) {
throw new OpenSocialRequestException("Invalid request parameters");
}
Map<String, String> activityData = new HashMap<String, String>();
activityData.put("question", question);
activityData.put("question", question);
activityData.put("description", description);
activityData.put("anonymous", anonymous);
activityData.put("hours_open", hours_open);
activityData.put("type", "poll");
//Map<String, String[]> activityData1 = new HashMap<String, String[]>();
//activityData1.put("answers", answers);
OpenSocialRequest r = OpenSocialClient.newCreateActivityRequest(params
.get("userId"), params.get("groupId"), params.get("appId"),
activityData, answers);
OpenSocialBatch batch = new OpenSocialBatch();
batch.addRequest(r, "activities");
String s = batch.send1(this);
return s;
}
public static OpenSocialRequest newCreateActivityRequest(String userId,
String groupId, String appId, Map<String, String> data, String[] data1) {
OpenSocialRequest r = new OpenSocialRequest("activities", "POST",
"activities.create");
r.addParameter(OpenSocialRequest.USER_PARAMETER, userId);
r.addParameter(OpenSocialRequest.GROUP_PARAMETER, groupId);
if (appId != null) {
r.addParameter(OpenSocialRequest.APP_PARAMETER, appId);
}
r.addParameter("activity", new JSONObject(data).toString());
r.addParameter("activity", data1);
return r;