1,15 → 1,16 |
package pt.estgp.estgweb.web.json; |
|
import com.owlike.genson.TransformationException; |
import jomm.dao.impl.AbstractDao; |
import org.apache.log4j.Logger; |
import org.json.JSONArray; |
import org.json.JSONException; |
import org.json.JSONObject; |
import pt.estgp.estgweb.domain.UserSession; |
import pt.estgp.estgweb.services.courses.CoursesService; |
import pt.estgp.estgweb.services.courses.xsd.Curso; |
import pt.estgp.estgweb.web.UserSessionProxy; |
import pt.estgp.estgweb.web.utils.RequestUtils; |
import pt.utl.ist.berserk.logic.serviceManager.IServiceManager; |
import pt.utl.ist.berserk.logic.serviceManager.ServiceManager; |
|
import javax.servlet.ServletException; |
import javax.servlet.http.HttpServlet; |
70,11 → 71,16 |
response.getWriter().print(e); |
response.getWriter().print("See log for details:"); |
logger.error(e, e); |
} catch (Throwable throwable) { |
response.getWriter().print(throwable); |
response.getWriter().print("See log for details:"); |
logger.error(throwable, throwable); |
} |
} |
|
private void processRequest(HttpServletRequest request, HttpServletResponse response) throws IOException, TransformationException, JAXBException, JSONException { |
private void processRequest(HttpServletRequest request, HttpServletResponse response) throws Throwable { |
|
IServiceManager sm = ServiceManager.getInstance(); |
|
String service = request.getParameter("service"); |
if(service == null) |
85,29 → 91,23 |
{ |
String school = request.getParameter("school"); |
String type = request.getParameter("type"); |
|
AbstractDao.getCurrentSession().beginTransaction(); |
JSONObject obj = new CoursesService().getActiveCoursesForJsonApi(school,type); |
AbstractDao.getCurrentSession().getTransaction().commit(); |
JSONObject obj = (JSONObject) sm.execute(RequestUtils.getRequester(request, response), "GetActiveCoursesForJsonApi", new Object[]{school, type}); |
response.getWriter().write(obj.toString()); |
} |
else if(service.equals("getCourse") && request.getParameter("code") != null) |
{ |
String code = request.getParameter("code"); |
|
|
AbstractDao.getCurrentSession().beginTransaction(); |
JSONObject obj = new CoursesService().getCourseDetailForJsonApi(code); |
AbstractDao.getCurrentSession().getTransaction().commit(); |
JSONObject obj = (JSONObject) sm.execute(RequestUtils.getRequester(request, response), "GetCourseDetailForJsonApi", new Object[]{code}); |
response.getWriter().write(obj.toString()); |
} |
else if(service.equals("getStudiesPlanXml") && request.getParameter("code") != null) |
{ |
String code = request.getParameter("code"); |
String renew = request.getParameter("renew"); |
response.setContentType("application/xml"); |
response.setCharacterEncoding("UTF-8"); |
AbstractDao.getCurrentSession().beginTransaction(); |
String xml = new CoursesService().getCourseStudiesPlanXml(code); |
String xml = (String) sm.execute(RequestUtils.getRequester(request, response), "GetCourseStudiesPlanXml", new Object[]{code,renew}); |
|
JAXBContext jc = JAXBContext.newInstance(Curso.class); |
Unmarshaller unmarshaller = jc.createUnmarshaller(); |
Curso curso = (Curso) unmarshaller.unmarshal(new StringReader(xml)); |
115,8 → 115,6 |
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); |
marshaller.marshal(curso, response.getOutputStream()); |
//SETTING XML in COURSE STUDIES PLAN |
AbstractDao.getCurrentSession().getTransaction().commit(); |
|
} |
else if(service.equals("syncSystemPlans") && request.getParameter("systemUrl") != null && request.getParameter("setActive") != null) |
{ |
127,9 → 125,7 |
String systemUrl = request.getParameter("systemUrl"); |
boolean setActive = Boolean.parseBoolean(request.getParameter("setActive")); |
response.setContentType("application/xml"); |
AbstractDao.getCurrentSession().beginTransaction(); |
String log = new CoursesService().sincronizeCoursesStudiesPlans(systemUrl,setActive); |
AbstractDao.getCurrentSession().getTransaction().commit(); |
String log = (String) sm.execute(RequestUtils.getRequester(request, response), "SincronizeCoursesStudiesPlans", new Object[]{systemUrl,setActive}); |
response.getWriter().write("<response><status>OK</status><log>" + log + "</log></response>"); |
} |
else |