public void onSubmit() { Note note = getModelObject(); if (note == null) { BugeaterSession sess = (BugeaterSession) Session.get(); IUserBean userBean = sess.getUserBean(); if (newStatus == null) { // Create a plain ordinary note note = new Note() .setIssue(EditNotePage.this.getModelObject()) .setText(textModel.getObject()) .setUserID(userBean.getId()); } else { // Change status with the given note text note = issueService .changeStatus( EditNotePage.this.getModelObject(), userBean, newStatus, textModel.getObject()) .getNote(); } } else { note.setText(textModel.getObject()); } noteService.save(note); PageParameters params = new PageParameters(); params.add(BugeaterConstants.PARAM_NAME_ISSUE_ID, String.valueOf(note.getIssue().getId())); setResponsePage(ViewIssuePage.class, params); }
/** * Encode a page target. * * @param requestCycle the current request cycle * @param requestTarget the target to encode * @return the encoded url */ protected CharSequence encode(RequestCycle requestCycle, IPageRequestTarget requestTarget) { // Get the page we want a url from: Page page = requestTarget.getPage(); // A url to a page is the IRedirectListener interface: CharSequence urlRedirect = page.urlFor(IRedirectListener.INTERFACE); // Touch the page once because it could be that it did go from stateless // to statefull or it was a internally made page where just a url must // be made for (frames) Session.get().touch(page); return urlRedirect; }