Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 329297

Summary: can't create patch - org.eclipse.jst.jsp.core plugin
Product: [WebTools] WTP Source Editing Reporter: Carlin Rogers <carlin.rogers>
Component: jst.jspAssignee: Nick Sandonato <nsand.dev>
Status: RESOLVED FIXED QA Contact: Nick Sandonato <nsand.dev>
Severity: normal    
Priority: P3 CC: david_williams, raghunathan.srinivasan, thatnitind
Version: unspecifiedFlags: thatnitind: review+
Target Milestone: 3.2.3   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Attachments:
Description Flags
change import declaration to use a closed range
none
patch
none
updated patch none

Description Carlin Rogers CLA 2010-11-02 16:19:48 EDT
We were trying to build a patched version of the org.eclipse.jst.jsp.core plugin for Helios SR1 in an adopter product and hit a failure in the build process. 

The TaglibHelper class in org.eclipse.jst.jsp.core creates a new TagLibraryInfo, extending the abstract class javax.servlet.jsp.tagext.TagLibraryInfo. The implementation in TaglibHelper is just an empty/dummy implementation - which is fine with version 2.0.0 of javax.servlet.jsp jar.

However in a build environment that also includes a 2.1.0 version of the javax.servlet.jsp jar, you get an error requiring the implementation of the inherited abstract method getTagLibraryInfos(). 

The fix is to change the manifest so that the import declaration uses a closed range (exclusive of 2.1) 

Import-Package:
   javax.servlet.jsp.tagext;version="[2.0.0,2.1.0)" 

rather than version="2.0.0"
Comment 1 Carlin Rogers CLA 2010-11-02 16:28:57 EDT
Created attachment 182250 [details]
change import declaration to use a closed range
Comment 2 David Williams CLA 2010-11-02 17:27:45 EDT
Or ... I wonder if TaglibHelper should just implement the missing method. 

I'm assuming it could be a "dummy" implementation, that always returned null or something? Since, I'm assuming this is a "placeholder" for whatever "real" helper is used later? 

I don't think having the "extra" method would hurt when running on 2.0?
Comment 3 Nick Sandonato CLA 2010-11-03 09:21:05 EDT
(In reply to comment #2)
> Or ... I wonder if TaglibHelper should just implement the missing method. 
> 
> I'm assuming it could be a "dummy" implementation, that always returned null or
> something? Since, I'm assuming this is a "placeholder" for whatever "real"
> helper is used later? 
> 
> I don't think having the "extra" method would hurt when running on 2.0?

Nitin and I have discussed implementing the methods and also widening the range to [2.0.0, 2.2.0]
Comment 4 Nick Sandonato CLA 2010-11-03 09:21:39 EDT
(In reply to comment #3)
> (In reply to comment #2)
> > Or ... I wonder if TaglibHelper should just implement the missing method. 
> > 
> > I'm assuming it could be a "dummy" implementation, that always returned null or
> > something? Since, I'm assuming this is a "placeholder" for whatever "real"
> > helper is used later? 
> > 
> > I don't think having the "extra" method would hurt when running on 2.0?
> 
> Nitin and I have discussed implementing the methods and also widening the range
> to [2.0.0, 2.2.0]

Doh, [2.0.0, 2.2.0)
Comment 5 Nick Sandonato CLA 2010-12-07 14:56:01 EST
Created attachment 184748 [details]
patch
Comment 6 Nick Sandonato CLA 2010-12-07 16:54:58 EST
Stripped out some of the unnecessary changes from another patch.
Comment 7 Nick Sandonato CLA 2010-12-07 16:55:27 EST
Created attachment 184758 [details]
updated patch