The call to the constructor (new) is failing and returning undef. You aren't checking for this failure (see the previous replies for the ...or die "..." idiom) so you end up with $som containing undef (which is the return value from your failed call to new) and hence the error when you try to call the method.

The 'weight_dim' error is the first thing to try. If it *is* necessary and not in the docs, the module author might appreciate an email to that effect.

Otherwise, try reading the module source to see why it might be returning undef, or stepping into it with the perl debugger.

And come back here if none of the above helps :-)


In reply to Re: Can't call method on undefined value by jbert
in thread Can't call method on undefined value by ICECommander

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.