You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by "Christian Köberl (JIRA)" <ji...@apache.org> on 2009/06/11 16:35:07 UTC

[jira] Created: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Remove Woodstox-specific Stax implementation usage
--------------------------------------------------

                 Key: TAP5-745
                 URL: https://issues.apache.org/jira/browse/TAP5-745
             Project: Tapestry 5
          Issue Type: Improvement
          Components: tapestry-core
    Affects Versions: 5.1.0.5, 5.1.0.4, 5.1.0.3, 5.1.0.2, 5.1.0.1, 5.1.0.0, 5.1
            Reporter: Christian Köberl
            Priority: Critical


Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.

There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.

The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.

Workaround:
Add the system property below to Application Server (either via startup script or admin console):
-Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Robert Zeigler (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Zeigler closed TAP5-745.
-------------------------------

    Resolution: Won't Fix

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Robert Zeigler (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Zeigler reassigned TAP5-745:
-----------------------------------

    Assignee: Robert Zeigler

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian E Gruber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726795#action_12726795 ] 

Christian E Gruber commented on TAP5-745:
-----------------------------------------

I'll be giving it a shot.

Christian.



Christian Edward Gruber
christianedwardgruber@gmail.com
http://www.geekinasuit.com/



> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Robert Zeigler (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726310#action_12726310 ] 

Robert Zeigler commented on TAP5-745:
-------------------------------------

So, after dealing with various dependency issues, I've run into the following interesting situation.

If I supply the stax dependency with woodstox (scope: testing), all of the dtd-related tests fail.  Looking closer, the dtd element is recognized, but reader.getText() returns an empty string (according to the stax api, it should return the DTD string).  If I supply the stax dependency with stax:stax (1.2.0), I get an exception, with the parser complaining that "this implementation does not resolve external entities".  I'll look at this more tomorrow, but I'm open to suggestions.

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Re: [jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by Christian Gruber <ch...@gmail.com>.
We should include stax:stax-api:1.0.1 as a provided dependency, and  
deployment to JDK1.5 should have a stax implementation provided to the  
deployment environment.

Christian.

On Jul 1, 2009, at 5:09 PM, Robert Zeigler (JIRA) wrote:

>
>    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726229 
> #action_12726229 ]
>
> Robert Zeigler commented on TAP5-745:
> -------------------------------------
>
> Hm.  The patch appears to require java 6 to compile.  Investigating.
>
>> Remove Woodstox-specific Stax implementation usage
>> --------------------------------------------------
>>
>>                Key: TAP5-745
>>                URL: https://issues.apache.org/jira/browse/TAP5-745
>>            Project: Tapestry 5
>>         Issue Type: Bug
>>         Components: tapestry-core
>>   Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4,  
>> 5.1.0.5, 5.1
>>           Reporter: Christian Köberl
>>           Assignee: Robert Zeigler
>>           Priority: Critical
>>        Attachments: TAP5-745-5.1.0.5.patch
>>
>>
>> Tapestry uses some special extensions to StaX (out of Woodstox) in  
>> the template parser. This leads to the problem that Tapestry will  
>> usually not run on any application server because the appservers  
>> will use their own implementation of Stax.
>> There is a workaround but a main stream web application framework  
>> should run on JEE compatible web and application servers without  
>> tweaking.
>> The main problem is in  
>> org 
>> .apache 
>> .tapestry5 
>> .internal 
>> .services.TemplateParserImpl.<init>(TemplateParserImpl.java:44).  
>> Here, XMLInputFactory2 is asked for an instance - but  
>> XMLInputFactory2 does not implement the method newInstance. This is  
>> delegated to XMLInputFactory. So, the original XMLInputFactory is  
>> used - which returns the platform implementation of Stax.
>> Workaround:
>> Add the system property below to Application Server (either via  
>> startup script or admin console):
>> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory
>
> -- 
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>

Christian Edward Gruber
christianedwardgruber@gmail.com
http://www.geekinasuit.com/


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Robert Zeigler (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726229#action_12726229 ] 

Robert Zeigler commented on TAP5-745:
-------------------------------------

Hm.  The patch appears to require java 6 to compile.  Investigating.

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Robert Zeigler (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Zeigler closed TAP5-745.
-------------------------------

    Resolution: Won't Fix

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Robert Zeigler (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726310#action_12726310 ] 

Robert Zeigler commented on TAP5-745:
-------------------------------------

So, after dealing with various dependency issues, I've run into the following interesting situation.

If I supply the stax dependency with woodstox (scope: testing), all of the dtd-related tests fail.  Looking closer, the dtd element is recognized, but reader.getText() returns an empty string (according to the stax api, it should return the DTD string).  If I supply the stax dependency with stax:stax (1.2.0), I get an exception, with the parser complaining that "this implementation does not resolve external entities".  I'll look at this more tomorrow, but I'm open to suggestions.

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian Köberl (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christian Köberl updated TAP5-745:
----------------------------------

    Issue Type: Bug  (was: Improvement)

Changed to bug, since the new WAS-CE 2.1 will not start with option "-Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory"

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian E Gruber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12725835#action_12725835 ] 

Christian E Gruber commented on TAP5-745:
-----------------------------------------

+1 (well, actually my vote is registed on the side).  It seems to me that this would be a fast fix, a correct fix, and it would allow more compatibility with more app-servers before the TAP5-713 solution.  This way if google implements javax.xml.stream before T5.2 (or whenever the StAX removal is done) it'll just start working.

Thiago, you're a committer now, aren't you?  ;-)

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian E Gruber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726099#action_12726099 ] 

Christian E Gruber commented on TAP5-745:
-----------------------------------------

Any other committers able to apply this patch? 

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Robert Zeigler (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726229#action_12726229 ] 

Robert Zeigler commented on TAP5-745:
-------------------------------------

Hm.  The patch appears to require java 6 to compile.  Investigating.

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian Köberl (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christian Köberl updated TAP5-745:
----------------------------------

    Attachment: TAP5-745-5.1.0.5.patch

Here is the patch of the changes described in http://derkoe.wordpress.com/2009/04/16/tapestry-51-woodstox/

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian E Gruber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12727190#action_12727190 ] 

Christian E Gruber commented on TAP5-745:
-----------------------------------------

I'll be giving it a shot.

Christian.



Christian Edward Gruber
christianedwardgruber@gmail.com
http://www.geekinasuit.com/



> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian E Gruber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12727190#action_12727190 ] 

Christian E Gruber commented on TAP5-745:
-----------------------------------------

I'll be giving it a shot.

Christian.



Christian Edward Gruber
christianedwardgruber@gmail.com
http://www.geekinasuit.com/



> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian E Gruber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726795#action_12726795 ] 

Christian E Gruber commented on TAP5-745:
-----------------------------------------

I'll be giving it a shot.

Christian.



Christian Edward Gruber
christianedwardgruber@gmail.com
http://www.geekinasuit.com/



> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian Köberl (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christian Köberl updated TAP5-745:
----------------------------------

    Issue Type: Bug  (was: Improvement)

Changed to bug, since the new WAS-CE 2.1 will not start with option "-Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory"

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Re: [jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by Christian Gruber <ch...@gmail.com>.
One little patch that's already provided, man!   Puhleeeez?

Any other committers willing to step-up?  HLS is determined to  
document and is unavailable but not opposed (his words) to a 5.1.0.6.   
I know those burned by StAX would be grateful.

cheers,
Christian.

On Jun 30, 2009, at 6:34 PM, Thiago H. de Paula Figueiredo (JIRA) wrote:

>
>    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12725838 
> #action_12725838 ]
>
> Thiago H. de Paula Figueiredo commented on TAP5-745:
> ----------------------------------------------------
>
> Christian: Yes, I'm a committer, unfortunately too busy to  
> contribute to Tapestry lately. :(
>
>> Remove Woodstox-specific Stax implementation usage
>> --------------------------------------------------
>>
>>                Key: TAP5-745
>>                URL: https://issues.apache.org/jira/browse/TAP5-745
>>            Project: Tapestry 5
>>         Issue Type: Bug
>>         Components: tapestry-core
>>   Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4,  
>> 5.1.0.5, 5.1
>>           Reporter: Christian Köberl
>>           Priority: Critical
>>        Attachments: TAP5-745-5.1.0.5.patch
>>
>>
>> Tapestry uses some special extensions to StaX (out of Woodstox) in  
>> the template parser. This leads to the problem that Tapestry will  
>> usually not run on any application server because the appservers  
>> will use their own implementation of Stax.
>> There is a workaround but a main stream web application framework  
>> should run on JEE compatible web and application servers without  
>> tweaking.
>> The main problem is in  
>> org 
>> .apache 
>> .tapestry5 
>> .internal 
>> .services.TemplateParserImpl.<init>(TemplateParserImpl.java:44).  
>> Here, XMLInputFactory2 is asked for an instance - but  
>> XMLInputFactory2 does not implement the method newInstance. This is  
>> delegated to XMLInputFactory. So, the original XMLInputFactory is  
>> used - which returns the platform implementation of Stax.
>> Workaround:
>> Add the system property below to Application Server (either via  
>> startup script or admin console):
>> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory
>
> -- 
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>

Christian Edward Gruber
christianedwardgruber@gmail.com
http://www.geekinasuit.com/


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Thiago H. de Paula Figueiredo (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12725838#action_12725838 ] 

Thiago H. de Paula Figueiredo commented on TAP5-745:
----------------------------------------------------

Christian: Yes, I'm a committer, unfortunately too busy to contribute to Tapestry lately. :(

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Thiago H. de Paula Figueiredo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Thiago H. de Paula Figueiredo closed TAP5-745.
----------------------------------------------

    Resolution: Duplicate

Duplicate of https://issues.apache.org/jira/browse/TAP5-713. Different reasons, same problem, same solution. :)

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian E Gruber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726099#action_12726099 ] 

Christian E Gruber commented on TAP5-745:
-----------------------------------------

Any other committers able to apply this patch? 

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian Köberl (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12727243#action_12727243 ] 

Christian Köberl commented on TAP5-745:
---------------------------------------

I'm sorry - i tried my patch only on Java6/Win (where it works - including tests).

I'm also investigating on this - this Stax stuff seems to be a real mess! The RI is not supporting stuff that is defined in the standard (i.e XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES set to true). 

I saw that Howard was already trying the same stuff:
http://jira.codehaus.org/browse/STAX-54

Hmm - let's see how this can be fixed.

Chris

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Thiago H. de Paula Figueiredo (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12720085#action_12720085 ] 

Thiago H. de Paula Figueiredo commented on TAP5-745:
----------------------------------------------------

I didn't notice the patch and the solution to TAP5-713 will solve this issue, so I thought I could close this one as a duplicate. You're right about saying that a solution for TAP5-713 will take some time. I'm sorry.

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Reopened: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian Köberl (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christian Köberl reopened TAP5-745:
-----------------------------------


No, this is not the same problem as TAP5-713!!

The problem with TAP5-713 is that there is no StAX available (e.g. on GAE) - the problem here is that Tapestry uses extensions to StAX (which it should not do). Using extensions to XML standard implementations in Java brings us back to XML hell some years ago where you had to exactly use XML parser X in version Z to make some app work.

The patch provided will fix this problem (eliminating the dependency to Woodstox but not to StAX)! The patch can be easily applied (just some lines of code are changed) - a fix for  TAP5-713 will need a major rewrite of the template parser!

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian Köberl (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12727243#action_12727243 ] 

Christian Köberl commented on TAP5-745:
---------------------------------------

I'm sorry - i tried my patch only on Java6/Win (where it works - including tests).

I'm also investigating on this - this Stax stuff seems to be a real mess! The RI is not supporting stuff that is defined in the standard (i.e XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES set to true). 

I saw that Howard was already trying the same stuff:
http://jira.codehaus.org/browse/STAX-54

Hmm - let's see how this can be fixed.

Chris

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Thiago H. de Paula Figueiredo (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12720085#action_12720085 ] 

Thiago H. de Paula Figueiredo commented on TAP5-745:
----------------------------------------------------

I didn't notice the patch and the solution to TAP5-713 will solve this issue, so I thought I could close this one as a duplicate. You're right about saying that a solution for TAP5-713 will take some time. I'm sorry.

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Thiago H. de Paula Figueiredo (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12725838#action_12725838 ] 

Thiago H. de Paula Figueiredo commented on TAP5-745:
----------------------------------------------------

Christian: Yes, I'm a committer, unfortunately too busy to contribute to Tapestry lately. :(

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Robert Zeigler (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726792#action_12726792 ] 

Robert Zeigler commented on TAP5-745:
-------------------------------------

Complicated. :)

http://jira.codehaus.org/browse/WSTX-78 (closed)

talks about the spec saying that getText() on the dtd element returns the "internal subset" of the DTD (which is true in java 1.6 docs; 1.5 docs (via webservices) says simply: String value of the DTD).  Basically, what this means is that there is no implementation-independent manner of dealing with dtd's right now.  Incidentally, the maintenance release of the stax jsr mentioned in WSTX-78 has been withdrawn.  There's a pending maintenance release now, but, it doesn't touch dtd's.

I've now tried running the full tapestry-core test suite with the patch with:

  a) woodstox as the underlying parser
  b) stax:stax:1.2.0 as the underlying parser
  c) recompiling with java 1.6 and using the built-in parser

a: fails due to getText() returning the empty string for the DTD
b: likewise fails, but additionally fails due to not supporting external entities
c: worst of all. Can't handle namespace prefixes; at least, it ignores them as the code is now (plus it would make tapestry require java 1.6, which is a nogo; this was more for my curiosity than anything else).

At this point, it appears that there is no good way to deal with DTD's via the standard stax API, but properly dealing with DTD's is critically important since client interpretation of css depends on the doctype used.   Thus, I'm closing this issue as "won't fix" and woodstox-independence will have to wait until either:

1) TAP5-713 is resolved or
2) A user who cares about woodstox independence is willing to step up and provide a patch that actually works (please: be sure to run all of the tapestry-core tests, at least, and make sure they pass before submitting! And be sure to test with java 1.5!)



> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Robert Zeigler (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Zeigler reassigned TAP5-745:
-----------------------------------

    Assignee: Robert Zeigler

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Reopened: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian Köberl (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christian Köberl reopened TAP5-745:
-----------------------------------


No, this is not the same problem as TAP5-713!!

The problem with TAP5-713 is that there is no StAX available (e.g. on GAE) - the problem here is that Tapestry uses extensions to StAX (which it should not do). Using extensions to XML standard implementations in Java brings us back to XML hell some years ago where you had to exactly use XML parser X in version Z to make some app work.

The patch provided will fix this problem (eliminating the dependency to Woodstox but not to StAX)! The patch can be easily applied (just some lines of code are changed) - a fix for  TAP5-713 will need a major rewrite of the template parser!

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian Köberl (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christian Köberl updated TAP5-745:
----------------------------------

    Attachment: TAP5-745-5.1.0.5.patch

Here is the patch of the changes described in http://derkoe.wordpress.com/2009/04/16/tapestry-51-woodstox/

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Thiago H. de Paula Figueiredo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Thiago H. de Paula Figueiredo closed TAP5-745.
----------------------------------------------

    Resolution: Duplicate

Duplicate of https://issues.apache.org/jira/browse/TAP5-713. Different reasons, same problem, same solution. :)

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Robert Zeigler (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726792#action_12726792 ] 

Robert Zeigler commented on TAP5-745:
-------------------------------------

Complicated. :)

http://jira.codehaus.org/browse/WSTX-78 (closed)

talks about the spec saying that getText() on the dtd element returns the "internal subset" of the DTD (which is true in java 1.6 docs; 1.5 docs (via webservices) says simply: String value of the DTD).  Basically, what this means is that there is no implementation-independent manner of dealing with dtd's right now.  Incidentally, the maintenance release of the stax jsr mentioned in WSTX-78 has been withdrawn.  There's a pending maintenance release now, but, it doesn't touch dtd's.

I've now tried running the full tapestry-core test suite with the patch with:

  a) woodstox as the underlying parser
  b) stax:stax:1.2.0 as the underlying parser
  c) recompiling with java 1.6 and using the built-in parser

a: fails due to getText() returning the empty string for the DTD
b: likewise fails, but additionally fails due to not supporting external entities
c: worst of all. Can't handle namespace prefixes; at least, it ignores them as the code is now (plus it would make tapestry require java 1.6, which is a nogo; this was more for my curiosity than anything else).

At this point, it appears that there is no good way to deal with DTD's via the standard stax API, but properly dealing with DTD's is critically important since client interpretation of css depends on the doctype used.   Thus, I'm closing this issue as "won't fix" and woodstox-independence will have to wait until either:

1) TAP5-713 is resolved or
2) A user who cares about woodstox independence is willing to step up and provide a patch that actually works (please: be sure to run all of the tapestry-core tests, at least, and make sure they pass before submitting! And be sure to test with java 1.5!)



> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Assignee: Robert Zeigler
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TAP5-745) Remove Woodstox-specific Stax implementation usage

Posted by "Christian E Gruber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12725835#action_12725835 ] 

Christian E Gruber commented on TAP5-745:
-----------------------------------------

+1 (well, actually my vote is registed on the side).  It seems to me that this would be a fast fix, a correct fix, and it would allow more compatibility with more app-servers before the TAP5-713 solution.  This way if google implements javax.xml.stream before T5.2 (or whenever the StAX removal is done) it'll just start working.

Thiago, you're a committer now, aren't you?  ;-)

> Remove Woodstox-specific Stax implementation usage
> --------------------------------------------------
>
>                 Key: TAP5-745
>                 URL: https://issues.apache.org/jira/browse/TAP5-745
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.1.0.0, 5.1.0.1, 5.1.0.2, 5.1.0.3, 5.1.0.4, 5.1.0.5, 5.1
>            Reporter: Christian Köberl
>            Priority: Critical
>         Attachments: TAP5-745-5.1.0.5.patch
>
>
> Tapestry uses some special extensions to StaX (out of Woodstox) in the template parser. This leads to the problem that Tapestry will usually not run on any application server because the appservers will use their own implementation of Stax.
> There is a workaround but a main stream web application framework should run on JEE compatible web and application servers without tweaking.
> The main problem is in org.apache.tapestry5.internal.services.TemplateParserImpl.<init>(TemplateParserImpl.java:44). Here, XMLInputFactory2 is asked for an instance - but XMLInputFactory2 does not implement the method newInstance. This is delegated to XMLInputFactory. So, the original XMLInputFactory is used - which returns the platform implementation of Stax.
> Workaround:
> Add the system property below to Application Server (either via startup script or admin console):
> -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.