Thanks for responding.  That would make sense.  Is there any way to
identify when or when it couldn't be converted?

Does the array that I provided cause this issue?  In my Post class I
followed the example code and have the class assigning ids as long.

_______________________________________
Stephen Walsh | http://connectwithawalsh.com



On Thu, Sep 20, 2012 at 12:55 PM, Francois Meillet <
francois.meil...@gmail.com> wrote:

> parameters.get("id").toLong() throws this exception when id can't be
> converted to long.
>
> François
>
>
> Le 20 sept. 2012 à 19:06, Stephen Walsh <step...@connectwithawalsh.com> a
> écrit :
>
> > I am new to Wicket and Java, so forgive any ignorance or lack of
> information.
> >
> > I am modeling a blog type application after the Wicket Examples Library
> application and have not had any luck passing the post id to the details
> page.  I'm not using the user portion at this point because I'll be doing a
> role based authorization later.
> >
> > The blog page populates the array that it is given and provides a link
> to the detail page, but this is when the exception is thrown.  Any thoughts?
> >
> > Thanks!
> >
> > public abstract class BasePage extends WebPage {
> >       /**
> >        *
> >        */
> >       private static final long serialVersionUID = 1L;
> >
> >
> >       private String pageTitle = "(no title)";
> >
> >       /**
> >        *
> >        * @return pageTitle
> >        */
> >       public final String getPageTitle() {
> >
> >               return pageTitle;
> >       }
> >
> >       /**
> >        *
> >        * @param title
> >        */
> >       public final void setPageTitle(String title) {
> >
> >               pageTitle = title;
> >       }
> >
> >       public BasePage() {
> >
> >               this(new PageParameters());
> >       }
> >
> >       /**
> >        *
> >        * @param parameters
> >        */
> >       public BasePage(final PageParameters parameters) {
> >
> >               super(parameters);
> >
> >               add(new Label("title", new PropertyModel<String>(this,
> "pageTitle")));
> >               add(new BookmarkablePageLink("logo", Index.class));
> >               add(new BookmarkablePageLink("home", Index.class));
> >               add(new BookmarkablePageLink("news", Blog.class));
> >               add(new BookmarkablePageLink("contact", ContactUs.class));
> >               add(new BookmarkablePageLink("about", About.class));
> >               add(new FooterPanel("social"));
> >       }
> >
> >       /**
> >        * Construct
> >        *
> >        * @param model
> >        */
> >       public BasePage(IModel<?> model) {
> >
> >               super(model);
> >       }
> >
> > public class Blog extends BasePage {
> >
> >       /**
> >        * Constructor
> >        *
> >        * @param params
> >        */
> >       public Blog(final PageParameters paramaters) {
> >
> >               setPageTitle("News");
> >
> >               //Add a list of blogPosts
> >               final PageableListView<Post> listView;
> >               add(listView = new PageableListView<Post>("blogPosts", new
> PropertyModel<List<Post>>(this, "blogPosts"), 5) {
> >
> >                       @Override
> >                       public void populateItem(final ListItem<Post>
> listItem) {
> >                               final Post blogPost =
> listItem.getModelObject();
> >                               listItem.add(BlogDetails.link("details",
> blogPost, getLocalizer().getString("noPostTitle", this)));
> >                               listItem.add(new Label("text", new
> Model<Post>(blogPost)));
> >                               listItem.add(new Label("tags", new
> Model<Post>(blogPost)));
> >                               listItem.add(removeLink("remove",
> listItem));
> >                               listItem.add(EditBlogPost.link("edit",
> blogPost.getId()));
> >                       }
> >               });
> >               add(new PagingNavigator("navigator", listView));
> >       }
> >
> >       public List<Post> getBlogPosts() {
> >               final List<Post> blogPosts = new ArrayList<Post>();
> >
> >               blogPosts.add(new Post("Post1", "text1", "tag1, tag2,
> tag3"));
> >               blogPosts.add(new Post("Post2", "text2", "tag1, tag2,
> tag3"));
> >               blogPosts.add(new Post("Post3", "text3", "tag1, tag2,
> tag3"));
> >               blogPosts.add(new Post("Post4", "text4", "tag1, tag2,
> tag3"));
> >               blogPosts.add(new Post("Post5", "text5", "tag1, tag2,
> tag3"));
> >               blogPosts.add(new Post("Post6", "text6", "tag1, tag2,
> tag3"));
> >               blogPosts.add(new Post("Post7", "text7", "tag1, tag2,
> tag3"));
> >               blogPosts.add(new Post("Post8", "text8", "tag1, tag2,
> tag3"));
> >               blogPosts.add(new Post("Post9", "text9", "tag1, tag2,
> tag3"));
> >               blogPosts.add(new Post("Post10", "text10", "tag1, tag2,
> tag3"));
> >
> >               return blogPosts;
> >
> >       }
> > }
> >
> > public class BlogDetails extends BasePage {
> >
> >       /**
> >        *
> >        * @param parameters
> >        *                      PageParameters
> >        * @throws StringValueConversionException
> >        */
> >       public BlogDetails(final PageParameters parameters) throws
> StringValueConversionException {
> >               this(Post.get(parameters.get("id").toLong()));
> >       }
> >
> >       public BlogDetails(final Post blogPost) {
> >               add(new Label("title", blogPost.getTitle()));
> >               add(new Label("text", blogPost.getText()));
> >               add(new Label("tags", blogPost.getTags()));
> >               add(EditBlogPost.link("edit", blogPost.getId()));
> >       }
> >
> >       /**
> >        * Creates an external page link
> >        *
> >        * @param name
> >        *            The name of the link component to create
> >        * @param post
> >        *            The post to link to
> >        * @param noPostTitle
> >        *            The title to show if post is null
> >        * @return The external page link
> >        */
> >       public static BookmarkablePageLink<Void> link(final String name,
> final Post blogPost, final String noPostTitle) {
> >
> >               final BookmarkablePageLink<Void> link = new
> BookmarkablePageLink<Void>(name, BlogDetails.class);
> >
> >               if (blogPost != null) {
> >
> >                       link.getPageParameters().add("id",
> blogPost.getId());
> >                       link.add(new Label("title", new
> Model<Post>(blogPost)));
> >               }
> >               else {
> >
> >                       link.add(new Label("title", noPostTitle));
> >                       link.setEnabled(false);
> >               }
> >
> >               return link;
> >       }
> > }
> >
> >
> > ____________________________________
> > Stephen Walsh | http://connectwithawalsh.com
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>
>

Reply via email to