List of usage examples for org.apache.wicket.markup.html.pages InternalErrorPage InternalErrorPage
public InternalErrorPage()
From source file:org.efaps.mobile.wicket.MobileSession.java
License:Apache License
/** * *//*from www .j av a2s.c om*/ public void openContext() { if (isAuthenticated()) { try { if (!Context.isTMActive()) { final ServletWebRequest request = (ServletWebRequest) RequestCycle.get().getRequest(); final Map<String, String[]> parameters = new HashMap<String, String[]>(); final IRequestParameters reqPara = request.getRequestParameters(); for (final String name : reqPara.getParameterNames()) { final List<StringValue> values = reqPara.getParameterValues(name); final String[] valArray = new String[values.size()]; int i = 0; for (final StringValue value : values) { valArray[i] = value.toString(); i++; } parameters.put(name, valArray); } final Map<String, Object> sessionAttributes = new HashMap<String, Object>(); for (final String attribute : getAttributeNames()) { sessionAttributes.put(attribute, getAttribute(attribute)); } Context.begin(this.userName, super.getLocale(), sessionAttributes, parameters, null, true); // set the locale in the context and in the session setLocale(Context.getThreadContext().getLocale()); setAttribute(UserAttributesSet.CONTEXTMAPKEY, Context.getThreadContext().getUserAttributes()); Context.getThreadContext().setPath(request.getContextPath()); } } catch (final EFapsException e) { MobileSession.LOG.error("could not initialise the context", e); throw new RestartResponseException(new InternalErrorPage()); } } }
From source file:org.efaps.mobile.wicket.MobileSession.java
License:Apache License
/** * Method that closes the opened Context {@link #openContext()}, by * committing or rollback it./* w ww. java 2 s .co m*/ * * @see #detach() */ public void closeContext() { if (isAuthenticated()) { try { if (!Context.isTMNoTransaction()) { if (Context.isTMActive()) { Context.commit(); } else { Context.rollback(); } } } catch (final SecurityException e) { throw new RestartResponseException(new InternalErrorPage()); } catch (final IllegalStateException e) { throw new RestartResponseException(new InternalErrorPage()); } catch (final EFapsException e) { throw new RestartResponseException(new InternalErrorPage()); } } }
From source file:org.pangaea.agrigrid.service.agriculture.gui.img.AddPage.java
public AddPage() { add(new FeedbackPanel("feedback")); form = new Form("form"); form.setMultiPart(true);/*from w ww .j a v a 2 s .co m*/ add(form); form.add(imageField = new FileUploadField("image")); form.add(copyright = new TextArea<String>("copyright", new Model<String>())); form.add(license = new TextArea<String>("license", new Model<String>())); DaoFactory f = DaoFactory.createInstance(); DaoContext dc = f.getContext(); dc.beginTransaction(); try { List<Category> cList = new ArrayList<Category>( new LinkedHashSet<Category>(DaoFactory.createInstance().getCategoryDao().listAllCategories())); category = new CheckBoxMultipleChoice<Category>("category", new Model<ArrayList<Category>>(), new WildcardListModel<Category>(cList)); category.setChoiceRenderer(new IChoiceRenderer<Category>() { @Override public Object getDisplayValue(Category object) { return object.getCategoryId() + "(" + object.getTexts().get("en") + ")"; } @Override public String getIdValue(Category object, int index) { return object.getCategoryId(); } }); // category.setSuffix(" "); form.add(category); } finally { dc.commit(); } captionWrapper = new WebMarkupContainer("captionWrapper"); captionWrapper.setOutputMarkupId(true); form.add(captionWrapper); captionRepeater = new RepeatingView("captionRepeater"); captionWrapper.add(captionRepeater); form.add(new Button("add") { @SuppressWarnings("unchecked") @Override public void onSubmit() { DaoFactory f = DaoFactory.createInstance(); DaoContext dc = f.getContext(); HibernateImageDao imgd = f.getImageDao(); long imageId; dc.beginTransaction(); try { // add video List<String> captionList = new ArrayList<String>(); List<Language> captionLangList = new ArrayList<Language>(); for (int i = 0; i < captionRepeater.size(); i++) { WebMarkupContainer wmc = (WebMarkupContainer) captionRepeater.get(i); captionList.add(((TextArea<String>) wmc.get("caption")).getModelObject()); captionLangList.add(((LanguageChoice) wmc.get("captionLang")).getModelObject()); } Image i = imgd.addImage(imageField.getFileUpload().getClientFileName(), copyright.getModelObject(), license.getModelObject(), captionLangList.toArray(new Language[] {}), captionList.toArray(new String[] {}), imageField.getFileUpload().getInputStream()); for (Category c : category.getModelObject()) { i.getCategories().put(c.getCategoryId(), c); } imageId = i.getImageId(); dc.commit(); } catch (IOException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } dc.beginTransaction(); try { // set thumbnail FileUpload thumbFile = imageField.getFileUpload(); String[] fileNames = thumbFile.getClientFileName().split("\\."); String format = fileNames[fileNames.length - 1]; BufferedImage thumb = ImageIO .read(ImageUtil.resize(thumbFile.getInputStream(), thumbWidth, format)); ByteArrayOutputStream bos = new ByteArrayOutputStream(); BufferedOutputStream os = new BufferedOutputStream(bos); try { thumb.flush(); ImageIO.write(thumb, format, os); os.flush(); } finally { os.close(); } byte[] thumbnail = bos.toByteArray(); imgd.setThumbnail(imageId, thumbnail); dc.commit(); } catch (IOException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (EntityNotFoundException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } setResponsePage(new IndexPage()); } }); form.add(new Link("cancel") { @Override public void onClick() { setResponsePage(new IndexPage()); } }); form.add(new AjaxSubmitLink("addCaption") { @Override protected void onSubmit(AjaxRequestTarget target, Form<?> arg1) { try { setCaptionComponents(captionRepeater); target.addComponent(captionWrapper); } catch (IllegalArgumentException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (IllegalAccessException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (Throwable e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } } }.setDefaultFormProcessing(false)); }
From source file:org.pangaea.agrigrid.service.agriculture.gui.img.EditPage.java
public EditPage(long videoId) { this.editImageId = videoId; DaoFactory f = DaoFactory.createInstance(); DaoContext dc = f.getContext();//from w w w. j av a 2 s .co m dc.beginTransaction(); org.pangaea.agrigrid.service.agriculture.dao.entity.Image v = null; byte[] thumbnailObj; ArrayList<Category> selectedCList = new ArrayList<Category>(); List<ImageCaption> captionList = new ArrayList<ImageCaption>(); try { v = f.getImageDao().getImage(videoId); Blob b = v.getThumbnail(); thumbnailObj = b.getBytes(1, (int) b.length()); for (Category c : v.getCategories().values()) { selectedCList.add(c); } for (ImageCaption vc : v.getCaptions().values()) { captionList.add(vc); } dc.commit(); } catch (SQLException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } add(new FeedbackPanel("feedback")); form = new Form("form"); form.setOutputMarkupId(true); add(form); form.add(new Label("fileName", fileName = v.getFileName())); form.add(imageField = new FileUploadField("video")); form.add(new Image("thumbnailImage", new ImageThumbnail(thumbnailObj))); form.add(copyright = new TextArea<String>("copyright", new Model<String>(v.getCopyright()))); form.add(license = new TextArea<String>("license", new Model<String>(v.getLicense()))); dc.beginTransaction(); try { List<Category> cList = new ArrayList<Category>( new LinkedHashSet<Category>(DaoFactory.createInstance().getCategoryDao().listAllCategories())); category = new CheckBoxMultipleChoice<Category>("category", new Model<ArrayList<Category>>(selectedCList), new WildcardListModel<Category>(cList)); category.setChoiceRenderer(new IChoiceRenderer<Category>() { @Override public Object getDisplayValue(Category object) { return object.getCategoryId() + "(" + object.getTexts().get("en") + ")"; } @Override public String getIdValue(Category object, int index) { return object.getCategoryId(); } }); form.add(category); } finally { dc.commit(); } captionWrapper = new WebMarkupContainer("captionWrapper"); captionWrapper.setOutputMarkupId(true); form.add(captionWrapper); captionRepeater = new RepeatingView("captionRepeater"); captionWrapper.add(captionRepeater); try { for (ImageCaption vc : captionList) { setCaptionComponents(captionRepeater, vc.getText(), new Language(vc.getLanguage())); } } catch (IllegalArgumentException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (IllegalAccessException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (Throwable e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } form.add(new Button("edit") { @SuppressWarnings("unchecked") @Override public void onSubmit() { FileUpload imageFile = imageField.getFileUpload(); Map<Language, String> captionMap = new LinkedHashMap<Language, String>(); for (int i = 0; i < captionRepeater.size(); i++) { WebMarkupContainer wmc = (WebMarkupContainer) captionRepeater.get(i); TextArea<String> ta = (TextArea<String>) wmc.get("caption"); LanguageChoice lc = (LanguageChoice) wmc.get("captionLang"); captionMap.put(lc.getModelObject(), ta.getModelObject()); } DaoFactory f = DaoFactory.createInstance(); DaoContext dc = f.getContext(); HibernateImageDao imgd = f.getImageDao(); dc.beginTransaction(); try { if (imageFile != null) { String[] fileNames = imageFile.getClientFileName().split("\\."); String format = fileNames[fileNames.length - 1]; InputStream thumb = ImageUtil.resize(imageFile.getInputStream(), 100, format); imgd.update(editImageId, imageFile == null ? "" : imageFile.getClientFileName(), copyright.getModelObject(), license.getModelObject(), captionMap, category.getModelObject(), imageFile.getInputStream(), thumb); } else { imgd.update(editImageId, imageFile == null ? "" : imageFile.getClientFileName(), copyright.getModelObject(), license.getModelObject(), captionMap, category.getModelObject(), null, null); } dc.commit(); } catch (NumberFormatException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (IOException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (EntityNotFoundException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (InvalidLanguageTagException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } setResponsePage(new IndexPage()); } }); form.add(new Link("cancel") { @Override public void onClick() { setResponsePage(new IndexPage()); } }); form.add(new AjaxSubmitLink("addCaption") { @Override protected void onSubmit(AjaxRequestTarget target, Form<?> arg1) { try { setCaptionComponents(captionRepeater, "", LanguageUtil.getLanguageList(getLocale()).get(0)); target.addComponent(captionWrapper); } catch (IllegalArgumentException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (IllegalAccessException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (Throwable e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } } }.setDefaultFormProcessing(false)); }
From source file:org.pangaea.agrigrid.service.agriculture.gui.video.AddPage.java
public AddPage() { add(new FeedbackPanel("feedback")); form = new Form("form"); form.setMultiPart(true);//from www . j av a 2s . c o m form.setOutputMarkupId(true); add(form); form.add(video = new FileUploadField("video")); form.add(thumbnail = new FileUploadField("thumbnail")); form.add(copyright = new TextArea<String>("copyright", new Model<String>())); form.add(license = new TextArea<String>("license", new Model<String>())); DaoFactory f = DaoFactory.createInstance(); DaoContext dc = f.getContext(); dc.beginTransaction(); try { List<Category> cList = new ArrayList<Category>( new LinkedHashSet<Category>(DaoFactory.createInstance().getCategoryDao().listAllCategories())); category = new CheckBoxMultipleChoice<Category>("category", new Model<ArrayList<Category>>(), new WildcardListModel<Category>(cList)); category.setChoiceRenderer(new IChoiceRenderer<Category>() { @Override public Object getDisplayValue(Category object) { return object.getCategoryId() + "(" + object.getTexts().get("en") + ")"; } @Override public String getIdValue(Category object, int index) { return object.getCategoryId(); } }); form.add(category); } finally { dc.commit(); } captionWrapper = new WebMarkupContainer("captionWrapper"); captionWrapper.setOutputMarkupId(true); form.add(captionWrapper); captionRepeater = new RepeatingView("captionRepeater"); captionWrapper.add(captionRepeater); subtitleWrapper = new WebMarkupContainer("subtitleWrapper"); subtitleWrapper.setOutputMarkupId(true); form.add(subtitleWrapper); subtitleRepeater = new RepeatingView("subtitleRepeater"); subtitleWrapper.add(subtitleRepeater); form.add(new Button("add") { @SuppressWarnings("unchecked") @Override public void onSubmit() { DaoFactory f = DaoFactory.createInstance(); DaoContext dc = f.getContext(); HibernateVideoDao vd = f.getVideoDao(); long videoId; dc.beginTransaction(); try { // add video List<String> captionList = new ArrayList<String>(); List<Language> captionLangList = new ArrayList<Language>(); for (int i = 0; i < captionRepeater.size(); i++) { WebMarkupContainer wmc = (WebMarkupContainer) captionRepeater.get(i); captionList.add(((TextArea<String>) wmc.get("caption")).getModelObject()); captionLangList.add(((LanguageChoice) wmc.get("captionLang")).getModelObject()); } Video v = vd.addVideo(video.getFileUpload().getClientFileName(), copyright.getModelObject(), license.getModelObject(), captionLangList.toArray(new Language[] {}), captionList.toArray(new String[] {}), video.getFileUpload().getInputStream()); for (Category c : category.getModelObject()) { v.getCategories().put(c.getCategoryId(), c); } videoId = v.getVideoId(); dc.commit(); } catch (IOException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } dc.beginTransaction(); try { // set thumbnail vd.setThumbnail(videoId, thumbnail.getFileUpload().getBytes()); dc.commit(); } catch (IOException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (EntityNotFoundException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } dc.beginTransaction(); try { // add subtitles for (int i = 0; i < subtitleRepeater.size(); i++) { WebMarkupContainer wmc = (WebMarkupContainer) subtitleRepeater.get(i); Map<String, Pair<Long, Long>> subtitle = new LinkedHashMap<String, Pair<Long, Long>>(); FileUploadField fuf = ((FileUploadField) wmc.get("subtitleFile")); Document menuDoc = DocumentBuilderFactory.newInstance().newDocumentBuilder() .parse(fuf.getConvertedInput().getInputStream()); XPath xpath = XPathFactory.newInstance().newXPath(); NodeList targetList = (NodeList) xpath.evaluate("//Subtitle", menuDoc, XPathConstants.NODESET); for (int j = 0; j < targetList.getLength(); j++) { Node sn = targetList.item(j).getAttributes().getNamedItem("start"); long startSec = parseMilliSecond(sn.getTextContent()); Node en = targetList.item(j).getAttributes().getNamedItem("end"); long endSec = parseMilliSecond(en.getTextContent()); String subtitleText = targetList.item(j).getAttributes().getNamedItem("name") .getTextContent(); subtitle.put(subtitleText, new Pair<Long, Long>(startSec, endSec)); } vd.addSubtitles(videoId, ((LanguageChoice) wmc.get("subtitleLang")).getModelObject(), subtitle); } dc.commit(); } catch (IOException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (SAXException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (ParserConfigurationException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (XPathExpressionException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } setResponsePage(new IndexPage()); } }); form.add(new Link("cancel") { @Override public void onClick() { setResponsePage(new IndexPage()); } }); form.add(new AjaxSubmitLink("addCaption", form) { @Override protected void onSubmit(AjaxRequestTarget target, Form<?> arg1) { try { setCaptionComponents(captionRepeater); target.addComponent(captionWrapper); } catch (IllegalArgumentException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (IllegalAccessException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (Throwable e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } } }.setDefaultFormProcessing(false)); form.add(new AjaxSubmitLink("addSubtitle", form) { @Override protected void onSubmit(AjaxRequestTarget target, Form<?> arg1) { try { setSubtitleComponents(subtitleRepeater); target.addComponent(subtitleWrapper); } catch (IllegalArgumentException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (IllegalAccessException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (Throwable e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } } }.setDefaultFormProcessing(false)); }
From source file:org.pangaea.agrigrid.service.agriculture.gui.video.EditPage.java
public EditPage(long videoId) { this.editVideoId = videoId; DaoFactory f = DaoFactory.createInstance(); DaoContext dc = f.getContext();//from w w w .jav a2 s .c o m dc.beginTransaction(); Video v = null; byte[] thumbnailObj; ArrayList<Category> selectedCList = new ArrayList<Category>(); List<VideoCaption> captionList = new ArrayList<VideoCaption>(); Set<Subtitle> subtitleSet = new LinkedHashSet<Subtitle>(); try { v = f.getVideoDao().getVideo(videoId); Blob b = v.getThumbnail(); thumbnailObj = b.getBytes(1, (int) b.length()); for (Category c : v.getCategories().values()) { selectedCList.add(c); } for (VideoCaption vc : v.getCaptions().values()) { captionList.add(vc); } // sort Map<Language, Map<Long, Subtitle>> map = new LinkedHashMap<Language, Map<Long, Subtitle>>(); for (Subtitle st : v.getSubtitles()) { Language l = new Language(st.getLanguage()); Map<Long, Subtitle> subMap = new TreeMap<Long, Subtitle>(); if (map.containsKey(l)) { subMap = map.get(l); } subMap.put(st.getStartMillis(), st); map.put(l, subMap); } for (Map<Long, Subtitle> subMap : map.values()) { subtitleSet.addAll(subMap.values()); } dc.commit(); } catch (SQLException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (InvalidLanguageTagException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } add(new FeedbackPanel("feedback")); form = new Form("form"); form.setMultiPart(true); form.setOutputMarkupId(true); add(form); form.add(new Label("fileName", fileName = v.getFileName())); form.add(video = new FileUploadField("video")); form.add(new Image("thumbnailImage", new VideoThumbnail(thumbnailObj))); form.add(thumbnail = new FileUploadField("thumbnail")); form.add(copyright = new TextArea<String>("copyright", new Model<String>(v.getCopyright()))); form.add(license = new TextArea<String>("license", new Model<String>(v.getLicense()))); dc = f.getContext(); dc.beginTransaction(); try { List<Category> cList = new ArrayList<Category>( new LinkedHashSet<Category>(DaoFactory.createInstance().getCategoryDao().listAllCategories())); category = new CheckBoxMultipleChoice<Category>("category", new Model<ArrayList<Category>>(selectedCList), new WildcardListModel<Category>(cList)); category.setChoiceRenderer(new IChoiceRenderer<Category>() { @Override public Object getDisplayValue(Category object) { return object.getCategoryId() + "(" + object.getTexts().get("en") + ")"; } @Override public String getIdValue(Category object, int index) { return object.getCategoryId(); } }); form.add(category); } finally { dc.commit(); } captionWrapper = new WebMarkupContainer("captionWrapper"); captionWrapper.setOutputMarkupId(true); form.add(captionWrapper); captionRepeater = new RepeatingView("captionRepeater"); captionWrapper.add(captionRepeater); subtitleWrapper = new WebMarkupContainer("subtitleWrapper"); subtitleWrapper.setOutputMarkupId(true); form.add(subtitleWrapper); subtitleRepeater = new RepeatingView("subtitleRepeater"); subtitleWrapper.add(subtitleRepeater); try { for (VideoCaption vc : captionList) { setCaptionComponents(captionRepeater, vc.getText(), new Language(vc.getLanguage())); } setSubtitleComponents(subtitleRepeater, subtitleSet); } catch (IllegalArgumentException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (IllegalAccessException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (Throwable e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } form.add(new Button("edit") { @SuppressWarnings("unchecked") @Override public void onSubmit() { FileUpload swf = video.getFileUpload(); FileUpload image = thumbnail.getFileUpload(); Map<Language, String> captionMap = new LinkedHashMap<Language, String>(); for (int i = 0; i < captionRepeater.size(); i++) { WebMarkupContainer wmc = (WebMarkupContainer) captionRepeater.get(i); TextArea<String> ta = (TextArea<String>) wmc.get("caption"); LanguageChoice lc = (LanguageChoice) wmc.get("captionLang"); captionMap.put(lc.getModelObject(), ta.getModelObject()); } Map<Language, Map<String, Pair<Long, Long>>> subtitles = new LinkedHashMap<Language, Map<String, Pair<Long, Long>>>(); for (int i = 0; i < subtitleRepeater.size(); i++) { Map<String, Pair<Long, Long>> subtitle = new LinkedHashMap<String, Pair<Long, Long>>(); WebMarkupContainer wmc = (WebMarkupContainer) subtitleRepeater.get(i); Language l = ((LanguageChoice) wmc.get("subtitleLang")).getModelObject(); FileUpload fu = ((FileUploadField) wmc.get("subtitleFile")).getConvertedInput(); if (fu == null) { subtitles.put(l, subtitle); continue; } try { Document menuDoc = DocumentBuilderFactory.newInstance().newDocumentBuilder() .parse(fu.getInputStream()); XPath xpath = XPathFactory.newInstance().newXPath(); NodeList targetList = (NodeList) xpath.evaluate("//Subtitle", menuDoc, XPathConstants.NODESET); for (int j = 0; j < targetList.getLength(); j++) { Node sn = targetList.item(j).getAttributes().getNamedItem("start"); Long startSec = parseMilliSecond(sn.getTextContent()); Node en = targetList.item(j).getAttributes().getNamedItem("end"); Long endSec = parseMilliSecond(en.getTextContent()); String subtitleText = targetList.item(j).getAttributes().getNamedItem("name") .getTextContent(); subtitle.put(subtitleText, new Pair<Long, Long>(startSec, endSec)); } } catch (IOException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (SAXException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (ParserConfigurationException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (XPathExpressionException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } subtitles.put(l, subtitle); } DaoFactory f = DaoFactory.createInstance(); DaoContext dc = f.getContext(); HibernateVideoDao vd = f.getVideoDao(); dc.beginTransaction(); try { vd.update(editVideoId, swf == null ? "" : swf.getClientFileName(), copyright.getModelObject(), license.getModelObject(), captionMap, category.getModelObject(), subtitles, swf == null ? null : swf.getInputStream(), image == null ? null : image.getInputStream()); dc.commit(); } catch (NumberFormatException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (IOException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (EntityNotFoundException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (InvalidLanguageTagException e) { dc.rollback(); e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } setResponsePage(new IndexPage()); } }); form.add(new Link("cancel") { @Override public void onClick() { setResponsePage(new IndexPage()); } }); form.add(new AjaxLink("addCaption") { @Override public void onClick(AjaxRequestTarget target) { try { setCaptionComponents(captionRepeater, "", LanguageUtil.getLanguageList(getLocale()).get(0)); target.addComponent(captionWrapper); } catch (IllegalArgumentException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (IllegalAccessException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (Throwable e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } } }); form.add(new AjaxLink("addSubtitle") { @Override public void onClick(AjaxRequestTarget target) { try { WebMarkupContainer wmc = new WebMarkupContainer(subtitleRepeater.newChildId()); subtitleRepeater.add(wmc); wmc.add(new FileUploadField("subtitleFile")); wmc.add(new LanguageChoice("subtitleLang", AgricultureAdminApplication.getApplication().getSupportedLanguage())); wmc.add(new WebMarkupContainer("download").setVisible(false)); wmc.add(new AjaxLink<WebMarkupContainer>("deleteSubtitle", new Model<WebMarkupContainer>(wmc)) { @Override public void onClick(AjaxRequestTarget target) { subtitleRepeater.remove(getModelObject()); target.addComponent(subtitleWrapper); } }); target.addComponent(subtitleWrapper); } catch (IllegalArgumentException e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } catch (Throwable e) { e.printStackTrace(); throw new RestartResponseException(new InternalErrorPage()); } } }); }