You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by "Bob Harner (JIRA)" <ji...@apache.org> on 2011/02/21 15:59:38 UTC

[jira] Issue Comment Edited: (TAP5-1040) Allow HTML5 doctype to be printed

    [ https://issues.apache.org/jira/browse/TAP5-1040?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12997434#comment-12997434 ] 

Bob Harner edited comment on TAP5-1040 at 2/21/11 2:58 PM:
-----------------------------------------------------------

Until this patch is applied, as a work-around you can emit the HTML5 doctype directly from your page (or layout) class, rather than your template, as described at http://tapestry.apache.org/component-templates.html (credit to Nille Hammer):

/**
* Output the HTML5 doctype, as a work-around to https://issues.apache.org/jira/browse/TAP5-1040
*/
@SetupRender
final void renderDocType(final MarkupWriter writer) {
    writer.getDocument().raw("<!DOCTYPE html>");
}

I checked, and the attached patch still applies cleanly against the trunk and seems very low risk.  Does somebody want to apply it?

      was (Author: bobharner):
    Until this patch is applied, as a work-around you can emit the HTML5 doctype directly from your page (or layout) class, rather than your template, as described at http://tapestry.apache.org/component-templates.html (credit to Nille Hammer):

{code}
/**
* Output the HTML5 doctype, as a work-around to https://issues.apache.org/jira/browse/TAP5-1040
*/
@SetupRender
final void renderDocType(final MarkupWriter writer) {
    writer.getDocument().raw("<!DOCTYPE html>");
}
{code}

I checked, and the attached patch still applies cleanly against the trunk and seems very low risk.  Does somebody want to apply it?
  
> Allow HTML5 doctype to be printed
> ---------------------------------
>
>                 Key: TAP5-1040
>                 URL: https://issues.apache.org/jira/browse/TAP5-1040
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.2.0, 5.1.0.5
>            Reporter: Alexander Kiel
>            Priority: Minor
>         Attachments: added_ability_to_print_the_HTML5_DOCTYPE.patch
>
>
> According to the HTML5 Working Draft [1], the doctype to be used in the case you are using the HTML syntax is:
> <!DOCTYPE HTML> case-insensitive
> Unfortunately the class org.apache.tapestry5.dom.DTD doesn't allow doctypes with empty public and system identifier. It is also not possible to output the DOCTYPE legacy string <!DOCTYPE HTML SYSTEM "about:legacy-compat">, because some parser internal to Tapestry tries to resolve the system identifier. The best thing, I was able to output is the full HTML 4.01 strict doctype:
> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
> It is allowed in HTML5 as obsolete permitted DOCTYPE string, but not desired.
> It would be very simple to allow for what empty HTML5 doctype in org.apache.tapestry5.dom.DTD.
> [1]: http://www.w3.org/TR/2010/WD-html5-20100304/

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira