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

Bug 328312

Summary: Require-Bundle header not supported well by the Admin Console
Product: [RT] Virgo Reporter: guofeng zhang <guofeng>
Component: unknownAssignee: Chris Frost <eclipse>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: glyn.normington
Version: 2.1.0.RC1-incubation   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Attachments:
Description Flags
the jar in target directory to reproduce the issue none

Description guofeng zhang CLA 2010-10-21 01:53:44 EDT
Build Identifier: virgo-web-server-2.1.0.RC1-incubation

Added:
  Require-Bundle: org.eclipse.persistence.jpa;bundle-version="2.1.1"
to the bundle, which has only entity classes defined.

After I click "View this bundle artifact" for this bundle on the UI page, there is the following error listed on the log file and page:
javax.el.PropertyNotFoundException: The class 'org.eclipse.virgo.apps.admin.core.state.StandardBundleHolder' does not have the property 'exportingBundle'.

Removing Require-Bundle header, Everything works as expected.

Reproducible: Always

Steps to Reproduce:
Add "Require-Bundle: org.eclipse.persistence.jpa;bundle-version="2.1.1" in the MANIFEST.MF.
2.the bundle deployed in pickup successfully.
3.Goto Admin Console to view the bundle artifact, the page displayed:
HTTP Status 500 -

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/jsp/state-bundle.jsp at line 188

185: 							<c:set var="provider" value=""/>
186: 						</c:when>
187: 						<c:otherwise>
188: 							<c:set var="provider" value="${require.provider.exportingBundle.bundleId} (${require.provider.exportingBundle.symbolicName} - ${require.provider.exportingBundle.version})"/>
189: 						</c:otherwise>
190: 					</c:choose>
191: 		<!-- ROW COLOURING -->


Stacktrace:
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:238)
	org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250)
	org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1031)
	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:815)
	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:717)
	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause

javax.el.PropertyNotFoundException: The class 'org.eclipse.virgo.apps.admin.core.state.StandardBundleHolder' does not have the property 'exportingBundle'.
	javax.el.BeanELResolver.getBeanProperty(BeanELResolver.java:574)
..........
Comment 1 Glyn Normington CLA 2010-10-21 04:01:50 EDT
Thanks for reporting this. Do you have a simple test bundle which we can use to reproduce this behaviour?
Comment 2 guofeng zhang CLA 2010-10-21 04:23:43 EDT
Created attachment 181369 [details]
the jar in target directory to reproduce the issue

the zip contains the source and built jar. deploy the jar to pickup, then view its artifact on the Admin Console could reproduce the error.

you need to download "EclipseLink 2.1.1 OSGi Bundles Zip (12 MB)" from http://www.eclipse.org/eclipselink/downloads/, unzip it, then deploy all jars to the repository. I created the following to store them:

eclipselink.type=external
eclipselink.searchPattern=repository/eclipselink/{artifact}
Comment 3 Glyn Normington CLA 2010-10-21 04:43:04 EDT
Many thanks. Assigning to Chris for analysis.
Comment 4 Chris Frost CLA 2010-10-22 09:18:54 EDT
This has new been fixed, updates required to the jsp's