jst.web facet is inconsistently determined
------------------------------------------

                 Key: MECLIPSE-595
                 URL: http://jira.codehaus.org/browse/MECLIPSE-595
             Project: Maven 2.x Eclipse Plugin
          Issue Type: Bug
          Components: WTP support
    Affects Versions: 2.7
            Reporter: Darien Hager
            Priority: Minor


The first problem is the plugin chooses the wrong facet when it sees certain 
dependencies. 
The second is that even explicit facet choices won't override this, and merely 
create a duplicate entry in the generated .settings file. At the very least 
there should be some sort of warning text.

______________

If you have the dependency:
{code}
<dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
        <scope>provided</scope>
</dependency>
{code}
The plugin will correctly create a jst.web facet of 2.5. However, this feature 
breaks down when it encounters:
{code}
<dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>servlet-api</artifactId>
        <version>6.0.18</version>
        <scope>provided</scope>
</dependency>
{code}
And the plugin will chose a jst.web version of  *6.0*, which thoroughly 
confuses Eclipse. In fact, you can't fix the problem without *manually* editing 
the _org.eclipse.wst.common.project.facet.core.xml_ file because Eclipse's GUI 
is paralyzed by it. 

This may be the wrong dependency to have, but the behavior is undocumented ( ? 
) and caused me to waste a lot of time trying to figure out what was going on. 
There should at least be some sort of warning.

____________________

Lastly, if you try to use _additionalProjectnatures_ to fix the problem...
{code}
<additionalProjectFacets>
        <jst.web>2.5</jst.web>
</additionalProjectFacets>
{code}

You get an even more broken _org.eclipse.wst.common.project.facet.core.xml_ 
that repeats the facet twice.
{code}
faceted-project>
  <fixed facet="jst.java"/>
  <fixed facet="jst.web"/>
  <installed facet="jst.web" version="6.0"/>
  <installed facet="jst.java" version="5.0"/>
  <installed facet="jst.web" version="2.5"/>
</faceted-project>
{code}

__________________

Requested fix:
1. When the jst.web version is "autodetected", have an INFO or DEBUG line about 
it.
2. If the jst.web faced is explicit in the plugin configuration, it should 
override and replace the autodetected version.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to