Correction, my bad.

The Form's getMarkup() returns just :
<form wicket:id="form">
<input wicket:id="number" type="number" min="3.0" max="10.0"
onchange="console.log(this.value)"/><br/>
<input type="submit" value="Submit"/>
</form>

so there is no doctype.

On Wed, Dec 8, 2010 at 5:48 PM, Martin Grigorov <[email protected]>wrote:

> The NPE happens with #getAssociatedMarkup() and at this point the
> MarkupContainer is a Form
> Replacing it with #getMarkup() returned the page's markup, i.e. all html,
> and its markupstream had 'null' doctype.
>
> I'll investigate further but you can also take a look at the application.
> It is in wicketstuff's SVN repo (link below).
>
>
> On Wed, Dec 8, 2010 at 5:41 PM, Juergen Donnerstag <
> [email protected]> wrote:
>
>> Interesting. I thought I had a testcase with exactly that DOCTYPE. In
>> any case it returns the DOCTYPE of the page only, irrespective of
>> Panel or Border etc.
>> getMarkup() returning null means no markup found which would explain
>> the NPE as well. You are sure about your source code and markup?
>>
>> Juergen
>>
>>
>> On Wed, Dec 8, 2010 at 5:27 PM, Martin Grigorov
>> <[email protected]> wrote:
>> > Hi Juergen,
>> >
>> > I just tried to use MarkupUtil.isMarkupHtml5Compliant() for the new
>> HTML5
>> > input types and it failed with:
>> >
>> > Caused by: java.lang.NullPointerException
>> > at
>> org.apache.wicket.markup.html.MarkupUtil$1.component(MarkupUtil.java:56)
>> > at
>> org.apache.wicket.markup.html.MarkupUtil$1.component(MarkupUtil.java:1)
>> > at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:142)
>> > at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:118)
>> > at
>> org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:919)
>> > at
>> >
>> org.apache.wicket.markup.html.MarkupUtil.isMarkupHtml5Compliant(MarkupUtil.java:52)
>> > at
>> >
>> org.wicketstuff.html5.markup.html.form.NumberField.onInitialize(NumberField.java:38)
>> > at org.apache.wicket.Component.fireInitialize(Component.java:989)
>> > at
>> org.apache.wicket.MarkupContainer.initialize(MarkupContainer.java:992)
>> > at
>> >
>> org.apache.wicket.MarkupContainer.addedComponent(MarkupContainer.java:972)
>> > at org.apache.wicket.MarkupContainer.add(MarkupContainer.java:162)
>> > at
>> >
>> org.wicketstuff.html5.markup.html.form.NumberFieldDemo.<init>(NumberFieldDemo.java:19)
>> >
>> >
>> > So I changed MarkupUtil line 56:
>> > MarkupResourceStream rs =
>> > comp.getAssociatedMarkup().getMarkupResourceStream();
>> > with
>> > MarkupResourceStream rs = comp.getMarkup().getMarkupResourceStream();
>> >
>> > and now there is no NPE but it returns "null" for doctype.
>> >
>> > The page HTML looks like:
>> >
>> > http://pastie.org/1359239
>> >
>> > The code is at
>> >
>> https://wicket-stuff.svn.sourceforge.net/svnroot/wicket-stuff/trunk/wicketstuff-core/jdk-1.6-parent/wicket-html5-parent
>> > see NumberFieldDemo in examples and NumberField in impl project.
>> >
>> > martin-g
>> >
>>
>
>

Reply via email to