I don't see where you set the parameters...
parameters.set("id", x);

It has to be done somewhere.
If parameters.get("id") return null, as null can't be converted to long, you 
get the exception.

François


Le 20 sept. 2012 à 21:16, Stephen Walsh <[email protected]> a écrit 
:

> 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 <
> [email protected]> 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 <[email protected]> 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: [email protected]
>> For additional commands, e-mail: [email protected]
>> 
>> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to