<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-22546</id>
	<title>Nabble - uPortal</title>
	<updated>2009-10-20T06:18:13Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/uPortal-f22546.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/uPortal-f22546.html" />
	<subtitle type="html">&lt;a href=&quot;http://www.uportal.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uPortal&lt;/a&gt;&amp;nbsp;is a free, sharable portal under development by institutions of higher-education.
&lt;br&gt;This group sees an institutional portal as an abridged and customized version of the institutional Web presence... a &amp;quot;pocket-sized&amp;quot; version of the campus Web.
&lt;br&gt;Portal technology adds &amp;quot;customization&amp;quot; and &amp;quot;community&amp;quot; to the campus Web presence. Customization allows each user to define a unique and personal view of the campus Web. Community tools, such as chat, forums, survey, and so on, build relationships among campus constituencies.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-25974955</id>
	<title>Call for Proposals - Jasig 2010</title>
	<published>2009-10-20T06:18:13Z</published>
	<updated>2009-10-20T06:18:13Z</updated>
	<author>
		<name>Jim Helwig-2</name>
	</author>
	<content type="html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;
&lt;html&gt;
&lt;head&gt;
&lt;/head&gt;
&lt;body bgcolor=&quot;#ffffff&quot; text=&quot;#000000&quot;&gt;
&lt;p&gt;Hi all,&lt;br&gt;
I am forwarding this email from the conference committee stating the
that Call for Proposals is now open for the Spring conference but I
wanted to add a note encouraging you to consider doing a one hour
session. This is a great opportunity to talk about a portlet you have
developed, a portal implementation that went well, development
techniques or tools you find useful, understanding and managing user
expectations, or another topic your peers would find interesting. &lt;br&gt;
JimH&lt;br&gt;
&lt;/p&gt;
&lt;b&gt;&lt;br&gt;
&lt;/b&gt;
&lt;p&gt;&lt;b&gt;Ten Years of Open Source Innovation&lt;/b&gt;&lt;br&gt;
March 8 - 10, 2009&lt;/p&gt;
&lt;p&gt;The Town and Country Resort, San Diego, California&lt;/p&gt;
&lt;p&gt;Supplementary Seminars on March 7th and the afternoon of March 10th&lt;br&gt;
Developer Workshops, March 11 - 12&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Call for Proposals now open&lt;/b&gt;&lt;br&gt;
Deadline for submission of proposals for half or full day seminars:
November 4, 2009&lt;br&gt;
Deadline for submission of proposals for all other sessions: November
18, 2009&lt;/p&gt;
&lt;p&gt;Conference site: &lt;a href=&quot;http://www.ja-sig.org/conferences/10spring/index.html&quot; rel=&quot;nofollow&quot; target=&quot;_top&quot;&gt;http://www.ja-sig.org/conferences/10spring/index.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Dear Colleague:&lt;/p&gt;
&lt;p&gt;Help us celebrate Jasig's 10th anniversary in San Diego with
outstanding speakers and special events.&lt;/p&gt;
&lt;p&gt;The focus is on innovation this year.&amp;nbsp;We'll be highlighting new and
established work from higher education institutions:&amp;nbsp; Projects you
should know about; local projects in search of community; creative work
by established communities of practice; projects that exist only as a
gleam in the eye of a creative developer.&lt;/p&gt;
&lt;p&gt;Come and see presentations and seminars on new technologies soon to
impact higher education.&amp;nbsp; We're seeking talks on topics such as Scala,
Spring 3, deployment to the Cloud, Groovy, Grails, REST, Jersey, mobile
applications, etc.&lt;/p&gt;
&lt;p&gt;We invite you to propose talks, seminars, birds-of-a-feather
sessions, demos, and poster session displays on new and current campus
applications:&amp;nbsp;Enterprise portlets, CAS, uPortal, Bedework Calendar,
Identity &amp;amp; Access Management, Fluid, ESUP Helpdesk, OpenRegistry,
Sakai, Kuali, Internet2 Middleware Solutions, Fedora and DSpace, and
others.&lt;/p&gt;
&lt;p&gt;Talks will be presented in one of four tracks:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;b&gt;Designing &amp;amp; Developing&lt;/b&gt;&lt;br&gt;
For developers, architects, UX designers, testers. Presentations for
people who build applications.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Deploying &amp;amp; Integrating&lt;/b&gt;&lt;br&gt;
For people who need to make applications work on campus: developers,
content providers, team leaders, evangelists. In particular, we would
like to highlight work that integrates open source projects within the
enterprise infrastructure and with each other.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Managing &amp;amp; Governing&lt;/b&gt;&lt;br&gt;
What are best practices for managing community source projects or their
deployments on campus? For encouraging adoption? For gaining acceptance
and campus buy-in? For engaging your community in the processes?
Presentations for managers, team leaders, executives, planners and
strategists.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Looking Ahead&lt;/b&gt;&lt;br&gt;
What are the technologies that will impact higher education in the
coming years? What project work, prototypes, plans, and local campus
applications would you like to share with a community of your peers?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Half-day Supplementary Seminars will be held in the morning and
afternoon on Sunday, March 7th as well as on Wednesday (March 10th)
afternoon.&lt;/p&gt;
&lt;p&gt;Proposals may be entered on the Jasig Conference Website. Proposals
require a Title, an Abstract (under 500 words), a Presenter Profile,
and some basic affiliation information.&amp;nbsp; This year we are also asking
proposal submitters to select tags that best describe their proposals.&lt;/p&gt;
&lt;p&gt;Submit your proposal directly at &lt;a href=&quot;http://www.ja-sig.org/jasigconf/call-form.jsp?conf_id=jasig17&quot; rel=&quot;nofollow&quot; target=&quot;_top&quot;&gt;http://www.ja-sig.org/jasigconf/call-form.jsp?conf_id=jasig17&lt;/a&gt;
or from the conference home page, where you can find all the details: &lt;a href=&quot;http://www.ja-sig.org/conferences/10spring/index.html&quot; rel=&quot;nofollow&quot; target=&quot;_top&quot;&gt;http://www.ja-sig.org/conferences/10spring/index.html&lt;/a&gt;
(Click the Call for Proposals link on the left).&lt;/p&gt;
&lt;p&gt;We look forward to seeing you at &lt;b&gt;Ten Years of Open Source
Innovation&lt;/b&gt;!&lt;/p&gt;
&lt;p&gt;-The Jasig 2010 Spring Conference Planning Committee&lt;/p&gt;

&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25974955&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25974955&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/pre&gt;
&lt;/BODY&gt;
&lt;/html&gt;

&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Call-for-Proposals---Jasig-2010-tp25974955p25974955.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25974952</id>
	<title>Call for Proposals - Jasig 2010</title>
	<published>2009-10-20T06:18:13Z</published>
	<updated>2009-10-20T06:18:13Z</updated>
	<author>
		<name>Jim Helwig-2</name>
	</author>
	<content type="html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;
&lt;html&gt;
&lt;head&gt;
&lt;/head&gt;
&lt;body bgcolor=&quot;#ffffff&quot; text=&quot;#000000&quot;&gt;
&lt;p&gt;Hi all,&lt;br&gt;
I am forwarding this email from the conference committee stating the
that Call for Proposals is now open for the Spring conference but I
wanted to add a note encouraging you to consider doing a one hour
session. This is a great opportunity to talk about a portlet you have
developed, a portal implementation that went well, development
techniques or tools you find useful, understanding and managing user
expectations, or another topic your peers would find interesting. &lt;br&gt;
JimH&lt;br&gt;
&lt;/p&gt;
&lt;b&gt;&lt;br&gt;
&lt;/b&gt;
&lt;p&gt;&lt;b&gt;Ten Years of Open Source Innovation&lt;/b&gt;&lt;br&gt;
March 8 - 10, 2009&lt;/p&gt;
&lt;p&gt;The Town and Country Resort, San Diego, California&lt;/p&gt;
&lt;p&gt;Supplementary Seminars on March 7th and the afternoon of March 10th&lt;br&gt;
Developer Workshops, March 11 - 12&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Call for Proposals now open&lt;/b&gt;&lt;br&gt;
Deadline for submission of proposals for half or full day seminars:
November 4, 2009&lt;br&gt;
Deadline for submission of proposals for all other sessions: November
18, 2009&lt;/p&gt;
&lt;p&gt;Conference site: &lt;a href=&quot;http://www.ja-sig.org/conferences/10spring/index.html&quot; rel=&quot;nofollow&quot; target=&quot;_top&quot;&gt;http://www.ja-sig.org/conferences/10spring/index.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Dear Colleague:&lt;/p&gt;
&lt;p&gt;Help us celebrate Jasig's 10th anniversary in San Diego with
outstanding speakers and special events.&lt;/p&gt;
&lt;p&gt;The focus is on innovation this year.&amp;nbsp;We'll be highlighting new and
established work from higher education institutions:&amp;nbsp; Projects you
should know about; local projects in search of community; creative work
by established communities of practice; projects that exist only as a
gleam in the eye of a creative developer.&lt;/p&gt;
&lt;p&gt;Come and see presentations and seminars on new technologies soon to
impact higher education.&amp;nbsp; We're seeking talks on topics such as Scala,
Spring 3, deployment to the Cloud, Groovy, Grails, REST, Jersey, mobile
applications, etc.&lt;/p&gt;
&lt;p&gt;We invite you to propose talks, seminars, birds-of-a-feather
sessions, demos, and poster session displays on new and current campus
applications:&amp;nbsp;Enterprise portlets, CAS, uPortal, Bedework Calendar,
Identity &amp;amp; Access Management, Fluid, ESUP Helpdesk, OpenRegistry,
Sakai, Kuali, Internet2 Middleware Solutions, Fedora and DSpace, and
others.&lt;/p&gt;
&lt;p&gt;Talks will be presented in one of four tracks:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;b&gt;Designing &amp;amp; Developing&lt;/b&gt;&lt;br&gt;
For developers, architects, UX designers, testers. Presentations for
people who build applications.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Deploying &amp;amp; Integrating&lt;/b&gt;&lt;br&gt;
For people who need to make applications work on campus: developers,
content providers, team leaders, evangelists. In particular, we would
like to highlight work that integrates open source projects within the
enterprise infrastructure and with each other.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Managing &amp;amp; Governing&lt;/b&gt;&lt;br&gt;
What are best practices for managing community source projects or their
deployments on campus? For encouraging adoption? For gaining acceptance
and campus buy-in? For engaging your community in the processes?
Presentations for managers, team leaders, executives, planners and
strategists.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Looking Ahead&lt;/b&gt;&lt;br&gt;
What are the technologies that will impact higher education in the
coming years? What project work, prototypes, plans, and local campus
applications would you like to share with a community of your peers?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Half-day Supplementary Seminars will be held in the morning and
afternoon on Sunday, March 7th as well as on Wednesday (March 10th)
afternoon.&lt;/p&gt;
&lt;p&gt;Proposals may be entered on the Jasig Conference Website. Proposals
require a Title, an Abstract (under 500 words), a Presenter Profile,
and some basic affiliation information.&amp;nbsp; This year we are also asking
proposal submitters to select tags that best describe their proposals.&lt;/p&gt;
&lt;p&gt;Submit your proposal directly at &lt;a href=&quot;http://www.ja-sig.org/jasigconf/call-form.jsp?conf_id=jasig17&quot; rel=&quot;nofollow&quot; target=&quot;_top&quot;&gt;http://www.ja-sig.org/jasigconf/call-form.jsp?conf_id=jasig17&lt;/a&gt;
or from the conference home page, where you can find all the details: &lt;a href=&quot;http://www.ja-sig.org/conferences/10spring/index.html&quot; rel=&quot;nofollow&quot; target=&quot;_top&quot;&gt;http://www.ja-sig.org/conferences/10spring/index.html&lt;/a&gt;
(Click the Call for Proposals link on the left).&lt;/p&gt;
&lt;p&gt;We look forward to seeing you at &lt;b&gt;Ten Years of Open Source
Innovation&lt;/b&gt;!&lt;/p&gt;
&lt;p&gt;-The Jasig 2010 Spring Conference Planning Committee&lt;/p&gt;

&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25974952&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-dev@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25974952&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-dev&lt;/pre&gt;
&lt;/BODY&gt;
&lt;/html&gt;

&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---Developer-f22545.html&quot; embed=&quot;fixTarget[22545]&quot; target=&quot;_top&quot; &gt;uPortal - Developer&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Call-for-Proposals---Jasig-2010-tp25974952p25974952.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25966981</id>
	<title>RE: Evaluating uPortal</title>
	<published>2009-10-19T15:45:43Z</published>
	<updated>2009-10-19T15:45:43Z</updated>
	<author>
		<name>Fang Lin</name>
	</author>
	<content type="html">Dwight,
&lt;br&gt;&lt;br&gt;This is going to be very helpful to set the integration strategy at UW. Thank you so much for sharing your insights!
&lt;br&gt;I have learned that Johns Hopkins has developed a mobile version of the portal (&lt;a href=&quot;http://www.jasig.org/johns-hopkins-university-selects-unicon-&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.jasig.org/johns-hopkins-university-selects-unicon-&lt;/a&gt;). Could you also share the status of that project?
&lt;br&gt;&lt;br&gt;-Fang
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8030425-5729242@...&lt;/a&gt; [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8030425-5729242@...&lt;/a&gt;] On Behalf Of Dwight Raum
&lt;br&gt;Sent: Friday, October 16, 2009 1:39 PM
&lt;br&gt;To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt;
&lt;br&gt;Subject: RE: [uportal-user] Evaluating uPortal
&lt;br&gt;&lt;br&gt;Fang,
&lt;br&gt;&lt;br&gt;I have to agree with some of the sentiments you've expressed. &amp;nbsp;We see the era of portals as a heavy application stack coming to an end too. &amp;nbsp;As much as possible, we've modeled our implementation of uPortal (myJohnsHopkins) to minimize heavyweight dependencies, and to use uPortal as more of a lightweight container for personalization and aggregation. &amp;nbsp;To that end, here are some key things we've done:
&lt;br&gt;&lt;br&gt;* Integration: &amp;nbsp;We rely heavily upon existing services within the enterprise -- this includes our enterprise directory, groups management (Active Directory), content management (SiteExecutive), institutional calendar (ActiveData Calendar), and SSO (CA SiteMinder). &amp;nbsp;uPortal is pretty good at doing this, especially on the directory side of things. &amp;nbsp;We have configured the SmartLdapGroupStore against our Active Directory, and we also use PAGS extensively for dynamic group mappings, and as a result have become largely independent of uPortal's local groups management structures altogether.
&lt;br&gt;&lt;br&gt;Also, we pretty much avoid using proper JSR-168 portlets, particularly since they must live within the same JVM as uPortal. &amp;nbsp;Early on we experienced stability problems with the uPortal environment due to independent issues within a specific homegrown portlet. &amp;nbsp;This lack of compartmentalization between the portal and portlets is significant, and affects not only reliability but also scalability.
&lt;br&gt;&lt;br&gt;Instead, we make extensive use of the WebProxy portlet -- this is absolutely key to our content and apps strategy. &amp;nbsp;We've developed a custom pre-interceptor for WebProxyPortlet to pass along person-attributes through the proxied requests. &amp;nbsp;The reliance on WebProxyPortlet also allows us to scale our apps and content their source. &amp;nbsp;There is still burden on uPortal to personalize and aggregate, but a resource intensive application has little effect on the overall performance of uPortal. &amp;nbsp;The tradeoffs are that apps are not intimately intertwined with the portal stack, and can be 'limited' in their UI. &amp;nbsp;By devolving our content/apps to most basic forms, we've effectively diminished our dependencies so we're not 'locked' into a portal framework.
&lt;br&gt;&lt;br&gt;* Delegated administration: &amp;nbsp;Hopkins is a very decentralized place -- apps and content are administered all over the place. &amp;nbsp;It would be impossible, organizationally, to centralize administration of content for our audiences. &amp;nbsp;With the Portal, our ultimate end goal is to pass off the drudgeries of simple content and layout management to non-technical &amp;quot;content owners&amp;quot; of each sub-section within our portal. &amp;nbsp;Because we're trying to leverage our existing services for directory, groupings, apps and content, it made little sense to pull their administration into uPortal. &amp;nbsp;Our constituent services already have a reasonable set of tools for delegated administration, and by relying on them to provide their services to uPortal we've sidestepped some administration issues. &amp;nbsp;One area where we couldn't sidestep uPortal is DLM Fragment Administration; however, working with Unicon we've implemented tools within uPortal that allow for better delegated management. &amp;nbsp;These tools are used extensively by our communities to manage and maintain their respective areas of myJohnsHopkins.
&lt;br&gt;&lt;br&gt;* URL based personalization: Since we're so decentralized, we've extended our single instance of uPortal to support multiple identities. &amp;nbsp;So for example:
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://my.jhmi.edu&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://my.jhmi.edu&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://my.jhu.edu&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://my.jhu.edu&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://insider.sais-jhu.edu&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://insider.sais-jhu.edu&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://myep.jhu.edu&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://myep.jhu.edu&lt;/a&gt;&lt;br&gt;These are all actually part of the same instance of uPortal, but the environment is flexible enough that we can deliver a unique experience based upon entry URL. &amp;nbsp;We also employ uPortal template users to dynamically apply the initial user skin setting derived from enterprise directory data.
&lt;br&gt;&lt;br&gt;So, like many technology answers &amp;quot;it depends&amp;quot;. &amp;nbsp;We've been very successful in using uPortal as a lightweight framework to personalize and aggregate content &amp; applications. &amp;nbsp;We also have a lot of the services necessary to implement a portal in our environment, and little desire to re-invent the wheel. &amp;nbsp;The model for personalization and use of groups for uPortal is quite good, and when coupled with delegation is incredibly powerful.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;&lt;br&gt;Dwight Raum
&lt;br&gt;Director Enterprise Services, Johns Hopkins
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;draum@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8018404-5729417@...&lt;/a&gt; [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8018404-5729417@...&lt;/a&gt;] On Behalf Of Fang Lin
&lt;br&gt;Sent: Wednesday, October 14, 2009 1:12 PM
&lt;br&gt;To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt;
&lt;br&gt;Subject: RE: [uportal-user] Evaluating uPortal
&lt;br&gt;&lt;br&gt;Gary,
&lt;br&gt;&lt;br&gt;Personally I do have some concerns about how long the conventional enterprise web portal will last. UW just adopted Google Apps Education Edition (GAEE). We did a brief investigation to see if iGoogle can be used as the portal platform; it is summarized below:
&lt;br&gt;&lt;br&gt;&amp;quot;GAEE has no conventional enterprise portal. Alternatively, Google Sites are where we present personalized contents to users and have total control of the user interface. The personal contents are delivered on Google Sites via Google Gadgets, which may be further configured by the users. The users may add the gadgets onto their iGoogle pages where they have the total control. But users can not change the layout of the Google Sites.
&lt;br&gt;Google Sites can be configured to allow only authorized users to access to the content and gadgets.&amp;quot;
&lt;br&gt;&lt;br&gt;When we finish our evaluation we will be happy to share our report here.
&lt;br&gt;&lt;br&gt;Warm regards,
&lt;br&gt;-Fang
&lt;br&gt;&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8017258-5729242@...&lt;/a&gt; [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=8&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8017258-5729242@...&lt;/a&gt;] On Behalf Of Gary Weaver
&lt;br&gt;Sent: Wednesday, October 14, 2009 7:42 AM
&lt;br&gt;To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=9&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt;
&lt;br&gt;Subject: Re: [uportal-user] Evaluating uPortal
&lt;br&gt;&lt;br&gt;Fang,
&lt;br&gt;&lt;br&gt;Glad that helped. I definitely was not suggesting for UW to abandon the
&lt;br&gt;concept of a portal. I was just trying to present both sides. Thanks for
&lt;br&gt;passing on the great post by Oren!
&lt;br&gt;&lt;br&gt;The less people that people talk about something, the more that people
&lt;br&gt;will think it is not worth talking about. It would be great to hear some
&lt;br&gt;feedback on what the rest of the Jasig community thinks about uPortal
&lt;br&gt;vs. Liferay vs. other portals. Perhaps this could help identify
&lt;br&gt;features/enhancements that might benefit from more focus of development
&lt;br&gt;over others. I could be wrong though.
&lt;br&gt;&lt;br&gt;Take care,
&lt;br&gt;&lt;br&gt;Gary
&lt;br&gt;&lt;br&gt;&lt;br&gt;Fang Lin wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi Gray,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I will share your inputs with my team, thank you!!
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On UW campus there are still a lot of expectations on the conventional enterprise web portal. It seems too early to let go with it.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; We also realize that the portal won't meet all the needs. See Oren Sreebny's blog:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://blog.orenblog.org/2009/10/12/take-out-or-dine-in-considering-the-future-of-the-enterprise-portal/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://blog.orenblog.org/2009/10/12/take-out-or-dine-in-considering-the-future-of-the-enterprise-portal/&lt;/a&gt;&amp;nbsp;and comments made by David Lassner, CIO of University of Hawaii, and &amp;nbsp;Cliff Frost, their chief tech architect.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -Fang
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -----Original Message-----
&lt;br&gt;&amp;gt; From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=10&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8011050-5729242@...&lt;/a&gt; [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=11&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8011050-5729242@...&lt;/a&gt;] On Behalf Of Gary Weaver
&lt;br&gt;&amp;gt; Sent: Tuesday, October 13, 2009 7:37 AM
&lt;br&gt;&amp;gt; To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=12&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Cc: Janice C. Granberg; Leman Chung
&lt;br&gt;&amp;gt; Subject: Re: [uportal-user] Evaluating uPortal
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Fang,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Here is a comparison (I'm not an expert on either, but this is what I've
&lt;br&gt;&amp;gt; noticed- others please jump in if I've left out anything or if what I'm
&lt;br&gt;&amp;gt; saying is incorrect):
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; uPortal
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Miscellaneous:
&lt;br&gt;&amp;gt; * By default uPortal uses CAS for authN. Some info for how to get
&lt;br&gt;&amp;gt; Shibboleth setup is here:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPM31/03+Shibboleth&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPM31/03+Shibboleth&lt;/a&gt;&amp;nbsp;and James Hong is
&lt;br&gt;&amp;gt; the last one to indicate that he Shibbolized a recent version. We plan
&lt;br&gt;&amp;gt; to eventually move to uP 3.1.1 (or later) and shibbolize it, but I just
&lt;br&gt;&amp;gt; did a quick spike (test) of shibbing it (I wasn't able to keep it from
&lt;br&gt;&amp;gt; hitting Login even on the guest view, but I'm guessing I was doing
&lt;br&gt;&amp;gt; something wrong). If you have any trouble Shibbolizing, let the list
&lt;br&gt;&amp;gt; know and maybe James can assist.
&lt;br&gt;&amp;gt; * uPortal has handful of portlets &amp;quot;under its wing&amp;quot; here:
&lt;br&gt;&amp;gt; &lt;a href=&quot;https://www.ja-sig.org/svn/portlets/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://www.ja-sig.org/svn/portlets/&lt;/a&gt;&lt;br&gt;&amp;gt; (note that not all of the portlets in the list at
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.jasig.org/portlets&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.jasig.org/portlets&lt;/a&gt;&amp;nbsp;are functional/have been tested in uPortal
&lt;br&gt;&amp;gt; 3.1.1, but I assume the ones in &lt;a href=&quot;https://www.ja-sig.org/svn/portlets/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://www.ja-sig.org/svn/portlets/&lt;/a&gt;&lt;br&gt;&amp;gt; have although I'm not sure totally. There are also a few built-in to the
&lt;br&gt;&amp;gt; uPortal codebase itself (for administration, etc.).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Pros:
&lt;br&gt;&amp;gt; * Community is more University/school focused: I think there are many
&lt;br&gt;&amp;gt; more universities/schools using uPortal vs. those using Liferay, but it
&lt;br&gt;&amp;gt; not strictly used by universities.
&lt;br&gt;&amp;gt; * Has a Jasig portlet adoption process so that if you do contribute
&lt;br&gt;&amp;gt; something that you can help get to the point where it meets standards
&lt;br&gt;&amp;gt; (including being Apache-licensed), you should have some help in
&lt;br&gt;&amp;gt; maintaining it.
&lt;br&gt;&amp;gt; * Works closely with Fluid group, so there is innovation in development
&lt;br&gt;&amp;gt; of UI that first was shown in uP 3.1.
&lt;br&gt;&amp;gt; * CAS is built-in. Since many use CAS, this is good for them!
&lt;br&gt;&amp;gt; * Webproxy portlet can be used to share existing/new web applications
&lt;br&gt;&amp;gt; and web content in the portal (but you'd need to use CSS classes
&lt;br&gt;&amp;gt; implemented in your uPortal skin(s)).
&lt;br&gt;&amp;gt; * They offer free use of their Jira, Confluence, and Subversion for
&lt;br&gt;&amp;gt; portlet and uPortal-related project development and community frequently
&lt;br&gt;&amp;gt; will work together on portlets.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cons:
&lt;br&gt;&amp;gt; * Not fully up-to-date on latest portlet standard: Although support was
&lt;br&gt;&amp;gt; added in preparation for JSR-286, the latest release version of uPortal
&lt;br&gt;&amp;gt; still uses JSR-168.
&lt;br&gt;&amp;gt; * Upgrades are non-trivial: Upgrades have been stated to be non-trivial
&lt;br&gt;&amp;gt; and probably will run into things that are not-documented, but recently
&lt;br&gt;&amp;gt; code was provided that should assist greatly in uP 2.5.3 and uP 2.6.1
&lt;br&gt;&amp;gt; upgrades to uPortal 3.x, and the community and developers are willing to
&lt;br&gt;&amp;gt; assist.
&lt;br&gt;&amp;gt; * Configuration/Usage/Development may be more difficult: From what I
&lt;br&gt;&amp;gt; read and hear from others, uPortal is just more difficult to use than
&lt;br&gt;&amp;gt; Liferay, however there is much greater support from the uPortal
&lt;br&gt;&amp;gt; community to help you through it.
&lt;br&gt;&amp;gt; * CAS is built-in. If you don't use CAS, it might not be as well-tested
&lt;br&gt;&amp;gt; with your type of authN.
&lt;br&gt;&amp;gt; * Wiki documentation is sometimes out-of-date and lacking. They welcome
&lt;br&gt;&amp;gt; anyone to assist with documentation that wants to help though.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Liferay:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Pros:
&lt;br&gt;&amp;gt; * Sun contributes to Liferay (Sun basically gave up with OpenPortal
&lt;br&gt;&amp;gt; project and took on Liferay).
&lt;br&gt;&amp;gt; * The latest release version of Liferay uses the latest portlet spec JSR286.
&lt;br&gt;&amp;gt; * Default portal is pretty slick/feels polished: while the UI of uPortal
&lt;br&gt;&amp;gt; quickstart has certainly greatly improved, Liferay's default
&lt;br&gt;&amp;gt; version/skin/UI of the portal feels more polished. However, this
&lt;br&gt;&amp;gt; probably doesn't mean much because you will end up needing to reskin it
&lt;br&gt;&amp;gt; for your implementation.
&lt;br&gt;&amp;gt; * There is a project for those interested in developing portlets using
&lt;br&gt;&amp;gt; JRuby on Rails (but it is Liferay and JSR-286 specific even though they
&lt;br&gt;&amp;gt; welcome development to make it work with other portals):
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://rails-portlet.rubyforge.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://rails-portlet.rubyforge.org/&lt;/a&gt;&lt;br&gt;&amp;gt; * There is a project for those interested in developing portlets using
&lt;br&gt;&amp;gt; Grails (may be is Liferay specific and I think still only supports
&lt;br&gt;&amp;gt; JSR-168): &lt;a href=&quot;http://grails.org/plugin/portlets&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://grails.org/plugin/portlets&lt;/a&gt;&lt;br&gt;&amp;gt; * There are probably more portlets available in Liferay and I think they
&lt;br&gt;&amp;gt; have more developers working on the project and more users, but am not sure.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cons:
&lt;br&gt;&amp;gt; * Community is less university/school focused
&lt;br&gt;&amp;gt; * CAS not built-in (if you are using CAS).
&lt;br&gt;&amp;gt; * Community/forums not nearly as helpful for universities or in-general
&lt;br&gt;&amp;gt; as responsive at getting people up-to-speed (at least that is from what
&lt;br&gt;&amp;gt; I hear. I can say for certain that the uPortal developers and community
&lt;br&gt;&amp;gt; are very helpful.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Unsure:
&lt;br&gt;&amp;gt; * Don't know anything about ease of Liferay upgrades.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Pros of both uPortal and Liferay:
&lt;br&gt;&amp;gt; * Both portals are Java-based: Integration with existing/new Java
&lt;br&gt;&amp;gt; libraries is easier. Since Java has a very large userbase and there is a
&lt;br&gt;&amp;gt; lot written in Java, you can develop portlets to do just about anything
&lt;br&gt;&amp;gt; you can think of and reuse existing libraries from Apache/Jakarta,
&lt;br&gt;&amp;gt; Sourceforge, Codehaus, Springsource, Hibernate, etc. along with plugins
&lt;br&gt;&amp;gt; for Maven 2, tasks for Ant, etc.
&lt;br&gt;&amp;gt; * Both are standards-based and have active development and user communities.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cons of both uPortal and Liferay:
&lt;br&gt;&amp;gt; * Portals in-general aren't as hot as they were years ago. There has
&lt;br&gt;&amp;gt; been a lot of movement towards applications that make it easier to
&lt;br&gt;&amp;gt; publish communication (Confluence/MediaWiki, Drupal/Joomla) or just in
&lt;br&gt;&amp;gt; web applications that are faster to develop ((J/C)Ruby on Rails, etc.).
&lt;br&gt;&amp;gt; However, there is still a place for them and the ability for users to
&lt;br&gt;&amp;gt; customize them and what content they see is a great asset, and as long
&lt;br&gt;&amp;gt; as you focus on continuing to provide things that the users actually
&lt;br&gt;&amp;gt; want and need (even things outside of the institution's normal realm),
&lt;br&gt;&amp;gt; the implementation will likely do well.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Hope that helps,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Gary
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Fang Lin wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Dear uPortal Community,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; At University of Washington we are about to start an evaluation
&lt;br&gt;&amp;gt;&amp;gt; project of portal frameworks as the replacement of our home-grown
&lt;br&gt;&amp;gt;&amp;gt; portal &amp;nbsp;&lt;a href=&quot;http://myuw.washington.edu/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://myuw.washington.edu/&lt;/a&gt;). &amp;nbsp;The two candidates that will be
&lt;br&gt;&amp;gt;&amp;gt; evaluated are uPortal 3.1.1 and Liferay 5.2.5. We would be very
&lt;br&gt;&amp;gt;&amp;gt; grateful if folks have gone through the portal evaluation process can
&lt;br&gt;&amp;gt;&amp;gt; provide some advices.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Our implementation platform will be Linux, Apache, Tomcat or Jetty,
&lt;br&gt;&amp;gt;&amp;gt; and the Shibboleth SP software for SSO support. &amp;nbsp;Should we set up the
&lt;br&gt;&amp;gt;&amp;gt; evaluation portal using the portal only installation or the Quick
&lt;br&gt;&amp;gt;&amp;gt; Start version? What might be the limitations of using the Quick Start
&lt;br&gt;&amp;gt;&amp;gt; version for evaluation?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Has there been any comparative analysis of uPortal 3.x with Liferay 5.x?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Thanks!
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Fang Lin
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Email: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=13&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;fanglin@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; UW Technology, University of Washington
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; --
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=14&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=15&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary.weaver@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt; To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=16&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=17&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;fanglin@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=18&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=19&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary.weaver@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;---
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=20&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=21&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;fanglin@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;---
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=22&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=23&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;draum@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;---
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=24&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=25&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;fanglin@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=26&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25966981&amp;i=27&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Evaluating-uPortal-tp25864895p25966981.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25965109</id>
	<title>Re: [jasig-ue] portlet UI design guidelines?</title>
	<published>2009-10-19T13:27:43Z</published>
	<updated>2009-10-19T13:27:43Z</updated>
	<author>
		<name>Gary Weaver</name>
	</author>
	<content type="html">Gary T.,
&lt;br&gt;&lt;br&gt;Noticed that in the latest release of infusion, the class for an active 
&lt;br&gt;tab appears to have changed a bit from the one used in uPortal 3.1.1.
&lt;br&gt;&lt;br&gt;In 
&lt;br&gt;&lt;a href=&quot;http://source.fluidproject.org/svn/fluid/infusion/tags/fluid-1.1.1/src/webapp/framework/fss/css/fss-layout.css&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://source.fluidproject.org/svn/fluid/infusion/tags/fluid-1.1.1/src/webapp/framework/fss/css/fss-layout.css&lt;/a&gt;&lt;br&gt;&lt;br&gt;there is:
&lt;br&gt;.fl-tabs .fl-tabs-active a {padding:0.25em 1.25em; border-bottom:none; 
&lt;br&gt;color:#000;}
&lt;br&gt;&lt;br&gt;and in uPortal 3.1.1 there is:
&lt;br&gt;apache-tomcat-6.0.18/webapps/uPortal/media/skins/universality/common/css/fluid/fluid.layout.css
&lt;br&gt;&lt;br&gt;.fl-tabs .fl-activeTab {}
&lt;br&gt;&lt;br&gt;and (among other minified versions, etc. and in the uportal3 theme)
&lt;br&gt;apache-tomcat-6.0.18/webapps/uPortal/media/skins/universality/uportal3/fluid.theme.uportal3.css
&lt;br&gt;&lt;br&gt;.fl-theme-uportal3 .fl-tabs li.fl-activeTab,
&lt;br&gt;.fl-theme-uportal3 .fl-tabs li.fl-activeTab:hover,
&lt;br&gt;.fl-theme-uportal3 .fl-tabs li.fl-activeTab a,
&lt;br&gt;.fl-theme-uportal3 .fl-tabs li.fl-activeTab a:hover {background-color: 
&lt;br&gt;#fff; border-bottom-color:#fff; color:#508cc9;}
&lt;br&gt;&lt;br&gt;Some questions if you (or someone else) have time:
&lt;br&gt;&lt;br&gt;* Which version of Infusion does uPortal 3.1.1 use? (doesn't look like 
&lt;br&gt;it uses 1.1.1)
&lt;br&gt;* In the FSS, is there any deprecation of CSS classnames between 
&lt;br&gt;versions? (I'm guessing in this case maybe this was a class that didn't 
&lt;br&gt;meet the naming convention so it was just changed?)
&lt;br&gt;* Will uPortal deprecate the fluid CSS classnames or just go with the 
&lt;br&gt;flow and change classnames when FSS/Infusion changes them and people 
&lt;br&gt;will just need to change their skins, etc.?
&lt;br&gt;&lt;br&gt;Thanks!
&lt;br&gt;Gary
&lt;br&gt;&lt;br&gt;&lt;br&gt;Gary Weaver wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Gary T.,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks so much! That will really help and I will look into using your 
&lt;br&gt;&amp;gt; example and including part of the FSS styling in our uPortal if 
&lt;br&gt;&amp;gt; possible so that the portlet (in theory) might be used in both uP 
&lt;br&gt;&amp;gt; 3.1.1+ and uP 2.5.3.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; As a note on your example usage of portlet-menu, what is especially 
&lt;br&gt;&amp;gt; confusing to me about the specs related to the menu is that in JSR-286 
&lt;br&gt;&amp;gt; they provided a graphical example in PLT.C of how portlet-menu-* 
&lt;br&gt;&amp;gt; classes should be used which is basically about styling popout menus.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I really (!) like the portlet markup template that you wrote as well 
&lt;br&gt;&amp;gt; as your example below: 
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/Portlet+Markup+Template&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/Portlet+Markup+Template&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks!
&lt;br&gt;&amp;gt; Gary
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; BTW- If it helps anyone at all, seeing some of the stuff that Gary T. 
&lt;br&gt;&amp;gt; wrote triggered me to fix/update my JSR-168/JSR-286 portlet styling 
&lt;br&gt;&amp;gt; quick reference to just include text directly from the JSR's because 
&lt;br&gt;&amp;gt; otherwise the paraphrasing I did (as well as some mistakes in 
&lt;br&gt;&amp;gt; accidentally referring to/basing it on older versions of the specs and 
&lt;br&gt;&amp;gt; attributing the menu classes to JSR-286 rather than JSR-168 :( !!) 
&lt;br&gt;&amp;gt; probably did more harm than good :( :
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.scribd.com/doc/11978144/Portlet-Styling-Quick-Reference&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.scribd.com/doc/11978144/Portlet-Styling-Quick-Reference&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Gary Thompson wrote:
&lt;br&gt;&amp;gt;&amp;gt; Gary,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; (Great name, BTW.)
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I am glad you asked. &amp;nbsp;Having standards for portlet markup and CSS is 
&lt;br&gt;&amp;gt;&amp;gt; significant in developing portlets efficiently and that result in 
&lt;br&gt;&amp;gt;&amp;gt; good user experiences.
&lt;br&gt;&amp;gt;&amp;gt; In developing the new Portlet Administration 
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/Portlet+Administration+Portlet&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/Portlet+Administration+Portlet&lt;/a&gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; (PA) portlet user experience for uPortal via Unicon's Cooperative 
&lt;br&gt;&amp;gt;&amp;gt; Support program &amp;lt;&lt;a href=&quot;http://www.unicon.net/support/cooperative&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.unicon.net/support/cooperative&lt;/a&gt;&amp;gt;, I had 
&lt;br&gt;&amp;gt;&amp;gt; the opportunity to give some focused thought and attention to such 
&lt;br&gt;&amp;gt;&amp;gt; standards. &amp;nbsp;The results of that work are built into the PA portlet 
&lt;br&gt;&amp;gt;&amp;gt; and documented (to some degree) here:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; * &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/User+Interface&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/User+Interface&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt; * 
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/Markup+and+CSS+Naming+Conventions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/Markup+and+CSS+Naming+Conventions&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt; * &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/Portlet+Markup+Template&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/Portlet+Markup+Template&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; It's not perfect, but it's a start. &amp;nbsp;Please feel empowered and 
&lt;br&gt;&amp;gt;&amp;gt; encouraged to contribute to refining it.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Let me summarize a few high-level strategic thoughts and then try to 
&lt;br&gt;&amp;gt;&amp;gt; answer a few of your more specific, tactical questions around the 
&lt;br&gt;&amp;gt;&amp;gt; Mail portlet.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; S1. JSR-168 CSS specification
&lt;br&gt;&amp;gt;&amp;gt; Having many years of both broad and deep involvement in portal and 
&lt;br&gt;&amp;gt;&amp;gt; portlet user interface design and development, my assessment is that 
&lt;br&gt;&amp;gt;&amp;gt; the JSR-168 portlet CSS specification 
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/JSR-168+PLT.C+CSS+Style+Definitions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/JSR-168+PLT.C+CSS+Style+Definitions&lt;/a&gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; is poorly designed, poorly defined, and woefully inadequate for 
&lt;br&gt;&amp;gt;&amp;gt; modern portlet development. &amp;nbsp;It also has not been updated in many 
&lt;br&gt;&amp;gt;&amp;gt; years. &amp;nbsp;This results in it being mostly useless as a standard, and 
&lt;br&gt;&amp;gt;&amp;gt; therefore not worthy of significant effort to maintain as such in the 
&lt;br&gt;&amp;gt;&amp;gt; Jasig community. &amp;nbsp;For clarification, I am speaking of the CSS part of 
&lt;br&gt;&amp;gt;&amp;gt; the JSR-168 specification, not the specification as a whole. &amp;nbsp;Having 
&lt;br&gt;&amp;gt;&amp;gt; concluded that it is a poor markup/CSS standard, that is not to say 
&lt;br&gt;&amp;gt;&amp;gt; that it should be totally ignored or discarded - it is indeed still 
&lt;br&gt;&amp;gt;&amp;gt; in use in uPortal and a few parts of it are usable. &amp;nbsp;However, as a 
&lt;br&gt;&amp;gt;&amp;gt; community we cannot base current and future efforts on it - it is not 
&lt;br&gt;&amp;gt;&amp;gt; sufficient.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; S2. Portlet user interface spans major releases of uPortal
&lt;br&gt;&amp;gt;&amp;gt; I admire your efforts to achieve this, however I believe that you 
&lt;br&gt;&amp;gt;&amp;gt; will find this effort not worthwhile when speaking of 2.5.x and 
&lt;br&gt;&amp;gt;&amp;gt; 3.1.x. &amp;nbsp;Especially in regards to the user interface layer, the 
&lt;br&gt;&amp;gt;&amp;gt; differences between the two releases are rather un-spannable. &amp;nbsp;Not 
&lt;br&gt;&amp;gt;&amp;gt; impossible, but probably not worth the effort. &amp;nbsp;I'll demonstrate this 
&lt;br&gt;&amp;gt;&amp;gt; below in regards to your question about converting an unordered list 
&lt;br&gt;&amp;gt;&amp;gt; into tabs. &amp;nbsp;My recommendation is to press forward where possible - in 
&lt;br&gt;&amp;gt;&amp;gt; most senses, uPortal and Jasig portlets are only now beginning to 
&lt;br&gt;&amp;gt;&amp;gt; achieve the user experience standards that are prevalent conventions 
&lt;br&gt;&amp;gt;&amp;gt; (and continuing to press forward) in the Web. &amp;nbsp;We need not abandon 
&lt;br&gt;&amp;gt;&amp;gt; the past, but we do need to press forward - that is where most of our 
&lt;br&gt;&amp;gt;&amp;gt; energy and effort needs to be for our portal and portlets to remain 
&lt;br&gt;&amp;gt;&amp;gt; viable.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; S3. As much as we are able, let's not create our own standard
&lt;br&gt;&amp;gt;&amp;gt; We can't sustain it, and if isolated to Jasig/uPortal, that doesn't 
&lt;br&gt;&amp;gt;&amp;gt; make it much of a standard. &amp;nbsp;However, I am of the opinion that Jasig 
&lt;br&gt;&amp;gt;&amp;gt; should and must set some standards in this area where other standards 
&lt;br&gt;&amp;gt;&amp;gt; are not sufficient. &amp;nbsp;I am also of the opinion that where possible, we 
&lt;br&gt;&amp;gt;&amp;gt; should push those needs into other open standards, like Fluid (see 
&lt;br&gt;&amp;gt;&amp;gt; next).
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; S4. Fluid Skinning System
&lt;br&gt;&amp;gt;&amp;gt; Incorporated into uPortal 3.1.x, the Fluid Skinning System 
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://wiki.fluidproject.org/x/96M7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://wiki.fluidproject.org/x/96M7&lt;/a&gt;&amp;gt; is a CSS standard that uPortal 
&lt;br&gt;&amp;gt;&amp;gt; (and Sakai, and several newer portlets) have adopted. &amp;nbsp;Fluid also has 
&lt;br&gt;&amp;gt;&amp;gt; a growing component library of many useful user interface &amp;quot;widgets&amp;quot; 
&lt;br&gt;&amp;gt;&amp;gt; like Pagers, Reorderers, and Inline Editors 
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://wiki.fluidproject.org/x/PAAF&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://wiki.fluidproject.org/x/PAAF&lt;/a&gt;&amp;gt;. &amp;nbsp;The Fluid Project community 
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://fluidproject.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://fluidproject.org/&lt;/a&gt;&amp;gt; is a well-balanced mix of both designers 
&lt;br&gt;&amp;gt;&amp;gt; and developers, and their processes result in friendly frameworks 
&lt;br&gt;&amp;gt;&amp;gt; that accomplish modern best practices in programming, usability, and 
&lt;br&gt;&amp;gt;&amp;gt; accessibility. &amp;nbsp;As a Fluid Project community participant and member, 
&lt;br&gt;&amp;gt;&amp;gt; and hands-on user of the FSS, I can say that from personal 
&lt;br&gt;&amp;gt;&amp;gt; experience. &amp;nbsp;Since the community is active and growing, the Jasig 
&lt;br&gt;&amp;gt;&amp;gt; community is welcome and encouraged to participate in the growth of 
&lt;br&gt;&amp;gt;&amp;gt; the standard, yet does not have to solely bear the burden of 
&lt;br&gt;&amp;gt;&amp;gt; maintaining the standard. &amp;nbsp;My recommendation, therefore, is to 
&lt;br&gt;&amp;gt;&amp;gt; continue to standardize on Fluid and related good frameworks like 
&lt;br&gt;&amp;gt;&amp;gt; jQuery.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; S5. Portability
&lt;br&gt;&amp;gt;&amp;gt; The hallmark of the JSR-168 portlet spec is portability - the concept 
&lt;br&gt;&amp;gt;&amp;gt; that a portlet can be taken from one portal context and dropped into 
&lt;br&gt;&amp;gt;&amp;gt; wholly different portal context and operate the same. &amp;nbsp;Theoretically, 
&lt;br&gt;&amp;gt;&amp;gt; it's an interesting concept, but frankly, I have never seen this work 
&lt;br&gt;&amp;gt;&amp;gt; practically. &amp;nbsp;Maybe it is an easier achievement with the technology 
&lt;br&gt;&amp;gt;&amp;gt; (though my experience is that doesn't work well either), but on the 
&lt;br&gt;&amp;gt;&amp;gt; user experience front, it fails miserably. &amp;nbsp;Because in user 
&lt;br&gt;&amp;gt;&amp;gt; experience, CONTEXT is critical. &amp;nbsp;Let me give an example of a 
&lt;br&gt;&amp;gt;&amp;gt; singer. &amp;nbsp;A singer being someone who can sing music. &amp;nbsp;But a singer can 
&lt;br&gt;&amp;gt;&amp;gt; be as different as Britney Spears is from Bob Dylan is from Bob 
&lt;br&gt;&amp;gt;&amp;gt; Marley is from Mick Jagger is from Snoop Dogg is from Luciano 
&lt;br&gt;&amp;gt;&amp;gt; Pavarotti is from Elvis Presley is from Willie Nelson. &amp;nbsp;If the Opera 
&lt;br&gt;&amp;gt;&amp;gt; needs a singer, you can't just unplug Snoop Dogg from rap and send 
&lt;br&gt;&amp;gt;&amp;gt; him to the Opera. &amp;nbsp;He doesn't FIT. &amp;nbsp;Especially when they were 
&lt;br&gt;&amp;gt;&amp;gt; expecting the Fat Lady for costuming. &amp;nbsp;So like singers in different 
&lt;br&gt;&amp;gt;&amp;gt; contexts, we are trying to pass around portlets to different portal 
&lt;br&gt;&amp;gt;&amp;gt; contexts, with similar results. &amp;nbsp;They don't naturally fit the new 
&lt;br&gt;&amp;gt;&amp;gt; context without a lot of re-work and makeup applied - and even then 
&lt;br&gt;&amp;gt;&amp;gt; they are easily identified as counterfeit. &amp;nbsp;So far I have seen 
&lt;br&gt;&amp;gt;&amp;gt; portlet portability fall into one of two strategies. &amp;nbsp;In one, the 
&lt;br&gt;&amp;gt;&amp;gt; portlet is packaged with its context (interactions, interfaces, 
&lt;br&gt;&amp;gt;&amp;gt; styling, etc.), so that it ALWAYS is an Opera singer, for example. &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; That works well in the Opera, but clearly fails at the rock concert. &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; The other strategy is to make the portlet as generic as possible. &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; This is the equivalent of sending a B-rate singer (has to be because 
&lt;br&gt;&amp;gt;&amp;gt; he can't focus on any one context) in his underwear to whatever gig 
&lt;br&gt;&amp;gt;&amp;gt; comes up, hoping that there will be the appropriate, fitting clothes 
&lt;br&gt;&amp;gt;&amp;gt; waiting for him. &amp;nbsp;This also fails (except for maybe the rock concert, 
&lt;br&gt;&amp;gt;&amp;gt; where pretty much every singer is B-rate and in his underwear) for 
&lt;br&gt;&amp;gt;&amp;gt; pretty obvious reasons. &amp;nbsp;From the user interface/user experience 
&lt;br&gt;&amp;gt;&amp;gt; perspective, portlets are particularly troubling that way. &amp;nbsp;The Jasig 
&lt;br&gt;&amp;gt;&amp;gt; community is great about being open when building portlets, but that 
&lt;br&gt;&amp;gt;&amp;gt; often comes at a price of generic (B-rate, shows-up-in-his-underwear) 
&lt;br&gt;&amp;gt;&amp;gt; quality, even when placed in its own uPortal. &amp;nbsp;As far as I have 
&lt;br&gt;&amp;gt;&amp;gt; experienced, this issue has yet to be solved. &amp;nbsp;There isn't a good way 
&lt;br&gt;&amp;gt;&amp;gt; to package and include all of the resources - markup, CSS, images, 
&lt;br&gt;&amp;gt;&amp;gt; js, etc. - into every portlet so that it can be portable; that 
&lt;br&gt;&amp;gt;&amp;gt; defeats many other best practices, standards, and maintainability. &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; Howver, there is neither a good way to ensure that those resources 
&lt;br&gt;&amp;gt;&amp;gt; are available from the portal context, and in a way that the portlet 
&lt;br&gt;&amp;gt;&amp;gt; needs them to be functional and a good user experience. &amp;nbsp;We have need 
&lt;br&gt;&amp;gt;&amp;gt; of solving this issue.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Now on to more tactical specifics.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; T1. Portlet Administraton
&lt;br&gt;&amp;gt;&amp;gt; The PA portlet in the 3.1 trunk is probably the best current, go 
&lt;br&gt;&amp;gt;&amp;gt; forward example. &amp;nbsp;It is not perfect, but shows how an older uPortal 
&lt;br&gt;&amp;gt;&amp;gt; channel has been converted into a shiny, modern portlet. &amp;nbsp;You should 
&lt;br&gt;&amp;gt;&amp;gt; also refer to this CSS file in trunk for portlet development (which 
&lt;br&gt;&amp;gt;&amp;gt; includes the JSR-168 spec and is amply commented):
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; \uportal-war\src\main\webapp\media\skins\universality\uportal3\uportal3_portlet.css 
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; T2. FSS for grids and layout
&lt;br&gt;&amp;gt;&amp;gt; FSS (included in uPortal) comes with an excellent layout/grid 
&lt;br&gt;&amp;gt;&amp;gt; framework. &amp;nbsp;The FSS layout framework is being used to render the main 
&lt;br&gt;&amp;gt;&amp;gt; uPortal UI layout (multi-column and sidebars - all without tables!). &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; Refer to this FSS primer: &lt;a href=&quot;http://wiki.fluidproject.org/x/-gBS&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://wiki.fluidproject.org/x/-gBS&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; T3. Making an unordered list into tabs
&lt;br&gt;&amp;gt;&amp;gt; On the 3.1.x release with FSS, this is simple and quick (rather 
&lt;br&gt;&amp;gt;&amp;gt; beautiful overall). &amp;nbsp;Simply take your semantic unordered list markup 
&lt;br&gt;&amp;gt;&amp;gt; and sprinkle in a few FSS classes (I would also encourage some 
&lt;br&gt;&amp;gt;&amp;gt; meaningful ARIA roles for accessibility):
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;div class=&amp;quot;fl-container-flex&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;ul role=&amp;quot;tablist&amp;quot; class=&amp;quot;fl-tabs fl-tabs-left&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;fl-activeTab&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Active 
&lt;br&gt;&amp;gt;&amp;gt; Tab&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab #2&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab #3&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/ul&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;div role=&amp;quot;tabpanel&amp;quot; class=&amp;quot;fl-tab-content&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; Content
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; Viola! &amp;nbsp;And you don't have to edit CSS at all. &amp;nbsp;FSS layout makes 
&lt;br&gt;&amp;gt;&amp;gt; the unordered list into tabs, and FSS themes (uPortal skins) style 
&lt;br&gt;&amp;gt;&amp;gt; the tabs to match the currently selected skin.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Sadly, this will produce no tangible result in uPortal 2.5.3 - you'll 
&lt;br&gt;&amp;gt;&amp;gt; still have a basic, unordered list in the user interface. &amp;nbsp;What to 
&lt;br&gt;&amp;gt;&amp;gt; do? &amp;nbsp;Here's where we clearly demonstrate the shortcomings of the 
&lt;br&gt;&amp;gt;&amp;gt; JSR-168 CSS specification (I'll try not to be overly sarcastic in my 
&lt;br&gt;&amp;gt;&amp;gt; example).
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; CSS classes are free (or at least cheap), so in most senses, there is 
&lt;br&gt;&amp;gt;&amp;gt; no harm in layering on additional CSS classes into the markup. &amp;nbsp;So 
&lt;br&gt;&amp;gt;&amp;gt; let's think about layering in JSR-168 CSS classes to support non-FSS 
&lt;br&gt;&amp;gt;&amp;gt; implementations. &amp;nbsp;First, let's consult the JSR-168 spec to see what 
&lt;br&gt;&amp;gt;&amp;gt; is available. &amp;nbsp;After perusal, it looks like this section makes sense:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; PLT.C.6. Menus
&lt;br&gt;&amp;gt;&amp;gt; &amp;quot;Menu styles define the look-and-feel of the text and background of a 
&lt;br&gt;&amp;gt;&amp;gt; menu structure. This structure may be embedded in the aggregated page 
&lt;br&gt;&amp;gt;&amp;gt; or may appear as a context sensitive popup menu.&amp;quot;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Umm, okay, that definition makes it clear how I am supposed to use 
&lt;br&gt;&amp;gt;&amp;gt; the spec... or not. &amp;nbsp;Let's see if we can make sense of the classes 
&lt;br&gt;&amp;gt;&amp;gt; they give us:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu &amp;nbsp; &amp;nbsp; General menu settings such as background color, 
&lt;br&gt;&amp;gt;&amp;gt; margins, etc.
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu-item &amp;nbsp; &amp;nbsp; Normal, unselected menu item.
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu-item-selected &amp;nbsp; &amp;nbsp; Selected menu item.
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu-item-hover &amp;nbsp; &amp;nbsp; Normal, unselected menu item when the 
&lt;br&gt;&amp;gt;&amp;gt; mouse hovers over it.
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu-item-hover-selected &amp;nbsp; &amp;nbsp; Selected menu item when the 
&lt;br&gt;&amp;gt;&amp;gt; mouse hovers over it.
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu-cascade-item &amp;nbsp; &amp;nbsp; Normal, unselected menu item that has 
&lt;br&gt;&amp;gt;&amp;gt; submenus.
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu-cascade-item-selected &amp;nbsp; &amp;nbsp; Selected sub-menu item that 
&lt;br&gt;&amp;gt;&amp;gt; has sub-menus.
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu-description &amp;nbsp; &amp;nbsp; Descriptive text for the menu (e.g. in a 
&lt;br&gt;&amp;gt;&amp;gt; help context below the menu).
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu-caption &amp;nbsp; &amp;nbsp; Menu caption.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Why we need to specifically delineate &amp;quot;portlet-menu-item&amp;quot; on the &amp;lt;li&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; (when the &amp;lt;li&amp;gt; is contained in a &amp;lt;ul&amp;gt; already specified as a 
&lt;br&gt;&amp;gt;&amp;gt; &amp;quot;portlet-menu&amp;quot;) is lost on me, but okay. &amp;nbsp;And we're supposed to put 
&lt;br&gt;&amp;gt;&amp;gt; in a CSS class &amp;quot;portlet-menu-item-hover&amp;quot; for mouse-hover? &amp;nbsp;Isn't 
&lt;br&gt;&amp;gt;&amp;gt; there such a thing as :hover in the CSS spec itself? &amp;nbsp;There's some 
&lt;br&gt;&amp;gt;&amp;gt; stuff in there that could be used (though a Menu caption? &amp;nbsp;Really? &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; And the desciption is so helpful.), but the point is that even 
&lt;br&gt;&amp;gt;&amp;gt; something as basic as a menu is not well designed or defined in the 
&lt;br&gt;&amp;gt;&amp;gt; JSR-168 CSS spec. &amp;nbsp;And note there is no JSR-168 class for the 
&lt;br&gt;&amp;gt;&amp;gt; associated tabpanel.
&lt;br&gt;&amp;gt;&amp;gt; Taking these classes we could add in the following to our markup:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;div class=&amp;quot;fl-container-flex&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;ul role=&amp;quot;tablist&amp;quot; class=&amp;quot;fl-tabs fl-tabs-left portlet-menu&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;fl-activeTab 
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu-item-selected&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Active Tab&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;portlet-menu-item&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab 
&lt;br&gt;&amp;gt;&amp;gt; #2&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;portlet-menu-item&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab 
&lt;br&gt;&amp;gt;&amp;gt; #3&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/ul&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;div role=&amp;quot;tabpanel&amp;quot; class=&amp;quot;fl-tab-content&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; Content
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; And we would discover that this has done very little to our UI result 
&lt;br&gt;&amp;gt;&amp;gt; in 2.5.3. &amp;nbsp;Still no tabs, just an unordered list with maybe a bit of 
&lt;br&gt;&amp;gt;&amp;gt; styling applied. &amp;nbsp;Why? &amp;nbsp;Because there is no context. &amp;nbsp;What KIND of 
&lt;br&gt;&amp;gt;&amp;gt; menu is this? &amp;nbsp;Nothing in the JSR-168 spec specifies this as a TAB 
&lt;br&gt;&amp;gt;&amp;gt; menu. &amp;nbsp;Well, we could define that in the CSS by making all 
&lt;br&gt;&amp;gt;&amp;gt; .portlet-menu .portlet-menu-item elements inline or floated and so 
&lt;br&gt;&amp;gt;&amp;gt; forth. &amp;nbsp;Super! (except that you had to figure out and test that 
&lt;br&gt;&amp;gt;&amp;gt; across browsers on your own effort, which is painful, trust me). &amp;nbsp;Now 
&lt;br&gt;&amp;gt;&amp;gt; we have tabs from our unordered list. &amp;nbsp;But wait - now EVERYWHERE that 
&lt;br&gt;&amp;gt;&amp;gt; these classes are used will be converted to TABS, whether they are 
&lt;br&gt;&amp;gt;&amp;gt; contextually tabs or not. &amp;nbsp;The JSR-168 spec does not give us classes 
&lt;br&gt;&amp;gt;&amp;gt; to define the context.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; So, okay, we could add the context to the container &amp;lt;div&amp;gt;, like so:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;div class=&amp;quot;fl-container-flex portlet-menu-tabs&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;ul role=&amp;quot;tablist&amp;quot; class=&amp;quot;fl-tabs fl-tabs-left portlet-menu&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;fl-activeTab 
&lt;br&gt;&amp;gt;&amp;gt; portlet-menu-item-selected&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Active Tab&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;portlet-menu-item&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab 
&lt;br&gt;&amp;gt;&amp;gt; #2&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;portlet-menu-item&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab 
&lt;br&gt;&amp;gt;&amp;gt; #3&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/ul&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;div role=&amp;quot;tabpanel&amp;quot; class=&amp;quot;fl-tab-content&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; Content
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; And then solve the problem in the CSS with selectors like:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; .portlet-menu-tabs .portlet-menu .portlet-menu-item {}
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; So that only those specifications are applied to make an unordered 
&lt;br&gt;&amp;gt;&amp;gt; list into tabs when the parent .portlet-menu-tabs class is present. &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; However, now we have broken the standard. &amp;nbsp;No one will get the 
&lt;br&gt;&amp;gt;&amp;gt; benefit of using these classes to achieve tabs from an unordered list 
&lt;br&gt;&amp;gt;&amp;gt; without knowing to put the .portlet-menu-tabs class on the containing 
&lt;br&gt;&amp;gt;&amp;gt; element. &amp;nbsp;And even if that class is on the containing element, if you 
&lt;br&gt;&amp;gt;&amp;gt; take the portlet out of uPortal and try to use it elsewhere, it will 
&lt;br&gt;&amp;gt;&amp;gt; revert to an undesireable, plain unordered list. &amp;nbsp;You could say the 
&lt;br&gt;&amp;gt;&amp;gt; same about FSS (that it isn't portable), but it IS easily includable 
&lt;br&gt;&amp;gt;&amp;gt; and relieves us from having to solve the problem, test the solution, 
&lt;br&gt;&amp;gt;&amp;gt; and maintain the standard.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; My recommendation: include FSS into your CSS includes in your 2.5.3 
&lt;br&gt;&amp;gt;&amp;gt; skin (minimally fss-layout.css), and you will at least get the basic 
&lt;br&gt;&amp;gt;&amp;gt; structural benefits without doing any extra work and without 
&lt;br&gt;&amp;gt;&amp;gt; complicating the markup with the JSR-168 classes. &amp;nbsp;Besides, after 
&lt;br&gt;&amp;gt;&amp;gt; including the JSR-168 classes, if you were to stumble on this markup, 
&lt;br&gt;&amp;gt;&amp;gt; which classes do you use/modify? &amp;nbsp;The FSS ones, or the JSR-168 ones? &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; And if they are both (FSS and JSR-168) trying to make tabs out of an 
&lt;br&gt;&amp;gt;&amp;gt; unordered list, you are going to get some ugly CSS conflicts. &amp;nbsp;I like 
&lt;br&gt;&amp;gt;&amp;gt; to Keep It Simple. &amp;nbsp;The FSS markup is much cleaner, and does the job 
&lt;br&gt;&amp;gt;&amp;gt; much better, with little effort required on your part as the 
&lt;br&gt;&amp;gt;&amp;gt; implementor.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Hope that helps. &amp;nbsp;I welcome more discussion on these matters.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Gary Thompson
&lt;br&gt;&amp;gt;&amp;gt; User Experience Leader
&lt;br&gt;&amp;gt;&amp;gt; Unicon | www.unicon.net
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; ----- Original Message -----
&lt;br&gt;&amp;gt;&amp;gt; From: &amp;quot;Gary Weaver&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25965109&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary.weaver@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25965109&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jasig-ue@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt; Sent: Thursday, October 15, 2009 10:51:42 AM GMT -07:00 U.S. Mountain 
&lt;br&gt;&amp;gt;&amp;gt; Time (Arizona)
&lt;br&gt;&amp;gt;&amp;gt; Subject: Re:[jasig-ue] portlet UI design guidelines?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I should probably clarify that in the MailPortlet when you click on a
&lt;br&gt;&amp;gt;&amp;gt; tab, that it when it queries the pop3/imap server for mail, so I'm not
&lt;br&gt;&amp;gt;&amp;gt; looking for a show/hide div type of thing, but rather either the
&lt;br&gt;&amp;gt;&amp;gt; standard CSS classes that display line-items horizontally (in a way
&lt;br&gt;&amp;gt;&amp;gt; friendly to various existing skins in both uPortal 2.5.3 and uPortal
&lt;br&gt;&amp;gt;&amp;gt; 3.1.1) or something (that I'm not guessing would be a simple?) that not
&lt;br&gt;&amp;gt;&amp;gt; only display tabs but would use Ajax to load the chosen tab in the
&lt;br&gt;&amp;gt;&amp;gt; background and to do this in a skin-friendly way (specifically in the
&lt;br&gt;&amp;gt;&amp;gt; formatting of the tabs) that hopefully could work without much problem
&lt;br&gt;&amp;gt;&amp;gt; in both uPortal 2.5.3 and 3.1.1. The following is basically what I'm
&lt;br&gt;&amp;gt;&amp;gt; showing for tabs atop the mail message list table (I made up the class
&lt;br&gt;&amp;gt;&amp;gt; names to show what I'm looking for):
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;ul
&lt;br&gt;&amp;gt;&amp;gt; class=&amp;quot;some-well-used-skin-class-to-indicate-these-are-tabs-and-therefore-this-unordered-list-should-be-composed-of-blocked-bordered-and-backgrounded-inline-line-items&amp;quot;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;lt;li&amp;gt;...&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;lt;li
&lt;br&gt;&amp;gt;&amp;gt; class=&amp;quot;some-well-used-skin-class-to-indicate-this-inline-line-item-tab-is-selected&amp;quot;&amp;gt;...&amp;lt;/li&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;lt;li&amp;gt;...&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;/ul&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; It looks like maybe the thing to use in uPortal 3.1.1 is fl-tabs as the
&lt;br&gt;&amp;gt;&amp;gt; class name and fl-activeTab for the selected tab. But can I just define
&lt;br&gt;&amp;gt;&amp;gt; those in the portlet's CSS so that it works in older versions without it
&lt;br&gt;&amp;gt;&amp;gt; overriding the newer stuff in uPortal 3.1.1?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; And for table formatting, I was just checking to see what the best way
&lt;br&gt;&amp;gt;&amp;gt; to define the table and its classes are or what you would say is a
&lt;br&gt;&amp;gt;&amp;gt; uPortal 2.5.3 and 3.1.1 friendly way to define a table in a portlet. I
&lt;br&gt;&amp;gt;&amp;gt; currently have the following for the display of mail messages, but I'm
&lt;br&gt;&amp;gt;&amp;gt; guessing I could do better?:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;%-- is there any nice column-resizing
&lt;br&gt;&amp;gt;&amp;gt; javascript deal available via uP 3.1 and if so could we include that in
&lt;br&gt;&amp;gt;&amp;gt; the portlet so that it could be used in both earlier and later versions
&lt;br&gt;&amp;gt;&amp;gt; of uPortal? %--&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;table
&lt;br&gt;&amp;gt;&amp;gt; class=&amp;quot;is-there-some-sort-of-standard-uportal-skin-class-that-should-be-used-here-that-might-add-a-border-or-similar&amp;quot;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;tbody&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;c:forEach
&lt;br&gt;&amp;gt;&amp;gt; items=&amp;quot;${selectedMailAccountDetails.stubs}&amp;quot; var=&amp;quot;stub&amp;quot; 
&lt;br&gt;&amp;gt;&amp;gt; varStatus=&amp;quot;counter&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;c:set var=&amp;quot;className&amp;quot;&amp;gt;${ (counter.index
&lt;br&gt;&amp;gt;&amp;gt; % 2 == 0) ? 'portlet-section-body' : 'portlet-section-alternate'}
&lt;br&gt;&amp;gt;&amp;gt; ${stub.seen ? 'mailportlet-read-message' :
&lt;br&gt;&amp;gt;&amp;gt; 'mailportlet-unread-message'}&amp;lt;/c:set&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;tr class=&amp;quot;${className}&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;td&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;c:if test=&amp;quot;${stub.flagged}&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;%-- am guessing maybe there
&lt;br&gt;&amp;gt;&amp;gt; are famfamfam icons for these, but then should resource-server be a
&lt;br&gt;&amp;gt;&amp;gt; requirement since it serves those in 3.1 or should they be included in
&lt;br&gt;&amp;gt;&amp;gt; the portlet to be compatible with older uPortal versions? --%&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;img
&lt;br&gt;&amp;gt;&amp;gt; src=&amp;quot;&amp;lt;%=request.getContextPath()%&amp;gt;/images/star.png&amp;quot;/&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/c:if&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;c:if test=&amp;quot;${stub.answered}&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;img
&lt;br&gt;&amp;gt;&amp;gt; src=&amp;quot;&amp;lt;%=request.getContextPath()%&amp;gt;/images/answered.png&amp;quot;/&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/c:if&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;c:if test=&amp;quot;${not stub.flagged
&lt;br&gt;&amp;gt;&amp;gt; &amp;&amp; not stub.answered}&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;%-- it just looks bad when
&lt;br&gt;&amp;gt;&amp;gt; there are no flags on any messages. assuming this column have some sort
&lt;br&gt;&amp;gt;&amp;gt; of minimum width. --%&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/c:if&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/td&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;td&amp;gt;&amp;lt;span class=${stub.deleted ?
&lt;br&gt;&amp;gt;&amp;gt; 'mailportlet-deleted-message' : ''}&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;a
&lt;br&gt;&amp;gt;&amp;gt; href=&amp;quot;${selectedMailAccountDetails.link}&amp;quot;&amp;gt;&amp;lt;c:choose&amp;gt;&amp;lt;c:when
&lt;br&gt;&amp;gt;&amp;gt; test=&amp;quot;${empty stub.from}&amp;quot;&amp;gt;&amp;lt;fmt:message
&lt;br&gt;&amp;gt;&amp;gt; key=&amp;quot;noSender&amp;quot;/&amp;gt;&amp;lt;/c:when&amp;gt;&amp;lt;c:otherwise&amp;gt;&amp;lt;c:out
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt;&amp;gt; value=&amp;quot;${stub.from}&amp;quot;/&amp;gt;&amp;lt;/c:otherwise&amp;gt;&amp;lt;/c:choose&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;td&amp;gt;&amp;lt;span class=${stub.deleted ?
&lt;br&gt;&amp;gt;&amp;gt; 'mailportlet-deleted-message' : ''}&amp;gt;&amp;lt;a
&lt;br&gt;&amp;gt;&amp;gt; href=&amp;quot;${selectedMailAccountDetails.link}&amp;quot;&amp;gt;&amp;lt;c:choose&amp;gt;&amp;lt;c:when
&lt;br&gt;&amp;gt;&amp;gt; test=&amp;quot;${empty stub.subject}&amp;quot;&amp;gt;&amp;lt;fmt:message
&lt;br&gt;&amp;gt;&amp;gt; key=&amp;quot;noSubject&amp;quot;/&amp;gt;&amp;lt;/c:when&amp;gt;&amp;lt;c:otherwise&amp;gt;&amp;lt;c:out
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt;&amp;gt; value=&amp;quot;${stub.subject}&amp;quot;/&amp;gt;&amp;lt;/c:otherwise&amp;gt;&amp;lt;/c:choose&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;td&amp;gt;&amp;lt;span class=${stub.deleted ?
&lt;br&gt;&amp;gt;&amp;gt; 'mailportlet-deleted-message' : ''}&amp;gt;&amp;lt;a
&lt;br&gt;&amp;gt;&amp;gt; href=&amp;quot;${selectedMailAccountDetails.link}&amp;quot;&amp;gt;&amp;lt;c:choose&amp;gt;&amp;lt;c:when
&lt;br&gt;&amp;gt;&amp;gt; test=&amp;quot;${empty stub.received}&amp;quot;&amp;gt;&amp;lt;fmt:message
&lt;br&gt;&amp;gt;&amp;gt; key=&amp;quot;noDate&amp;quot;/&amp;gt;&amp;lt;/c:when&amp;gt;&amp;lt;c:otherwise&amp;gt;&amp;lt;c:out
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt;&amp;gt; value=&amp;quot;${stub.received}&amp;quot;/&amp;gt;&amp;lt;/c:otherwise&amp;gt;&amp;lt;/c:choose&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/tr&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/c:forEach&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/tbody&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/table&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt;&amp;gt; Gary
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Gary Weaver wrote:
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; (sorry to cross-post, but I don't know where to send this)
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; Am having a little bit of a dilemma working on the MailPortlet UI and
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; thought maybe someone could provide some guidance.
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; * I want to use what I can of what standards I should from PLT.C CSS
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; classes of JSR-168, and am trying to make it utilize the classes as
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; defined in the default skin of uPortal 3.1.1 for reference
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; (skins/universality/uportal3/jsr168_portlet_spec.css) just to have a
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; better feel for what it would look like in the future if we were to
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; upgrade uPortal 3.1+. I know that these classes were also defined in
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; uPortal 2.5.3 skins, but I haven't looked at how those would look yet.
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; * Those classes in the default skin of uP 3.1.1 at least seem to just
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; define background color, border color, change a few font sizes/bold a
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; few things, and do some light padding/margin changes.
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; * Things like portlet-section-header, portlet-section-subheader, and
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; portlet-form-label aren't defining &amp;quot;display: block;&amp;quot; and therefore
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; also not defining margins/padding, so I'm unclear as to whether those
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; should be headers (h3, h4, ...) or label elements (all seem like they
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; should be headers I guess).
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; * I need other CSS classes to make nice (list item) tabs across the
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; top of the main MailPortlet view
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; * I need other CSS classes to do some better formatting of the table
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; containing the list of the most recent email messages for a specific
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; account (which has columns for flags, sender, subject, and date like
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; you'd expect in the main message list view a mail client)
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; * It would be great (but not totally necessary) to have resizeable
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; columns in the table (so some standard javascript to assist with that
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; might be nice) or at the very least to have it defined the table
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; My questions are:
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; * Were there CSS classes that did that in the standard skins that came
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; with uPortal 2.5.3 (I'm looking through them now- not sure)? Do those
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; still apply for uP 3.1.1?
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; * Could you point me at specific examples of portlets or other places
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; in uPortal 3.1.1 that do a good job (list item) tabs and grid/table
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; formatting like I'm talking about in a uPortal-skin friendly way?
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; * What level of header should portlet-section-header,
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; portlet-section-subheader, and portlet-form-label be to have
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; consistency throughout portlets and if they should be labels, what
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; additional classes should be used if any to define that they should be
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; display:block and to define their margins/padding?
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; * Do you think that ResourceServer should be a requirement for
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; portlets to display correctly from here on out, and if so, do you know
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; of anyone using it with older versions of uPortal?
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; I completely understand that at some point the past has to be left
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; behind and newer portlets should only work with uPortal 3.1+, but for
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; those of us that want to contribute in such a way that portlets can be
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; used in both uPortal 3.1.1+ and uPortal 2.5.3, I want to make sure
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; that I'm defining things correctly and defining portlet-specific CSS
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; and/or reusing skin CSS in a way that is kosher for both environments
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; (at least for now, if it makes sense).
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; Thanks!
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; Gary
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; -- 
&lt;br&gt;&amp;gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25965109&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jasig-ue@...&lt;/a&gt; as: 
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25965109&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt; To unsubscribe, change settings or access archives, see 
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/jasig-ue&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/jasig-ue&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt; -- 
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25965109&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-dev@...&lt;/a&gt; as: 
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25965109&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary.weaver@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt; To unsubscribe, change settings or access archives, see 
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-dev&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25965109&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-dev@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25965109&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---Developer-f22545.html&quot; embed=&quot;fixTarget[22545]&quot; target=&quot;_top&quot; &gt;uPortal - Developer&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-jasig-ue--portlet-UI-design-guidelines--tp25931057p25965109.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25962591</id>
	<title>Re: Mobility documentation?</title>
	<published>2009-10-19T10:46:16Z</published>
	<updated>2009-10-19T10:46:16Z</updated>
	<author>
		<name>Jen Bourey-2</name>
	</author>
	<content type="html">I&amp;#39;ve just committed a fix that restricts the new mobile theme to a set of specific mobile browsers, so desktop Safari should now receive the normal uPortal Universality theme.  If you do an update and &amp;quot;ant deploy-war&amp;quot; your portal should pick up the new change.&lt;br&gt;
&lt;br&gt;If you&amp;#39;d still like to disable the new theme even for mobile devices, open up uportal-impl/src/main/resources/properties/browser.mappings and comment out all the lines directing browsers to the &amp;quot;mobileDefault&amp;quot; theme.&lt;br&gt;
&lt;br&gt;- Jen&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;On Mon, Oct 19, 2009 at 1:28 PM, Domazlicky, Eric &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25962591&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;edomazlicky@...&lt;/a&gt;&amp;gt;&lt;/span&gt; wrote:&lt;br&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;









&lt;div link=&quot;blue&quot; vlink=&quot;purple&quot; lang=&quot;EN-US&quot;&gt;

&lt;div&gt;

&lt;p class=&quot;MsoNormal&quot;&gt;Is there any info on the new uPortal Mobile support in
Trunk. I recently upgraded my trunk and now Safari is getting the Mobile
version. How can this be turned off?&lt;/p&gt;

&lt;/div&gt;


&lt;pre&gt;-- &lt;font color=&quot;#888888&quot;&gt;&lt;br&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25962591&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25962591&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jennifer.bourey@...&lt;/a&gt;&lt;br&gt;
To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;/font&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;&lt;br clear=&quot;all&quot;&gt;&lt;br&gt;-- &lt;br&gt;Jen Bourey&lt;br&gt;

&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25962591&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25962591&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/pre&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Mobility-documentation--tp25962329p25962591.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25962329</id>
	<title>Mobility documentation?</title>
	<published>2009-10-19T10:28:49Z</published>
	<updated>2009-10-19T10:28:49Z</updated>
	<author>
		<name>Domazlicky, Eric</name>
	</author>
	<content type="html">&lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot; xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot; xmlns:w=&quot;urn:schemas-microsoft-com:office:word&quot; xmlns:x=&quot;urn:schemas-microsoft-com:office:excel&quot; xmlns:p=&quot;urn:schemas-microsoft-com:office:powerpoint&quot; xmlns:a=&quot;urn:schemas-microsoft-com:office:access&quot; xmlns:dt=&quot;uuid:C2F41010-65B3-11d1-A29F-00AA00C14882&quot; xmlns:s=&quot;uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882&quot; xmlns:rs=&quot;urn:schemas-microsoft-com:rowset&quot; xmlns:Z=&quot;urn:schemas-microsoft-com:&quot; xmlns:b=&quot;urn:schemas-microsoft-com:office:publisher&quot; xmlns:ss=&quot;urn:schemas-microsoft-com:office:spreadsheet&quot; xmlns:c=&quot;urn:schemas-microsoft-com:office:component:spreadsheet&quot; xmlns:odc=&quot;urn:schemas-microsoft-com:office:odc&quot; xmlns:oa=&quot;urn:schemas-microsoft-com:office:activation&quot; xmlns:html=&quot;http://www.w3.org/TR/REC-html40&quot; xmlns:q=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot; xmlns:rtc=&quot;http://microsoft.com/officenet/conferencing&quot; xmlns:D=&quot;DAV:&quot; xmlns:Repl=&quot;http://schemas.microsoft.com/repl/&quot; xmlns:mt=&quot;http://schemas.microsoft.com/sharepoint/soap/meetings/&quot; xmlns:x2=&quot;http://schemas.microsoft.com/office/excel/2003/xml&quot; xmlns:ppda=&quot;http://www.passport.com/NameSpace.xsd&quot; xmlns:ois=&quot;http://schemas.microsoft.com/sharepoint/soap/ois/&quot; xmlns:dir=&quot;http://schemas.microsoft.com/sharepoint/soap/directory/&quot; xmlns:ds=&quot;http://www.w3.org/2000/09/xmldsig#&quot; xmlns:dsp=&quot;http://schemas.microsoft.com/sharepoint/dsp&quot; xmlns:udc=&quot;http://schemas.microsoft.com/data/udc&quot; xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot; xmlns:sub=&quot;http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/&quot; xmlns:ec=&quot;http://www.w3.org/2001/04/xmlenc#&quot; xmlns:sp=&quot;http://schemas.microsoft.com/sharepoint/&quot; xmlns:sps=&quot;http://schemas.microsoft.com/sharepoint/soap/&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:udcs=&quot;http://schemas.microsoft.com/data/udc/soap&quot; xmlns:udcxf=&quot;http://schemas.microsoft.com/data/udc/xmlfile&quot; xmlns:udcp2p=&quot;http://schemas.microsoft.com/data/udc/parttopart&quot; xmlns:wf=&quot;http://schemas.microsoft.com/sharepoint/soap/workflow/&quot; xmlns:dsss=&quot;http://schemas.microsoft.com/office/2006/digsig-setup&quot; xmlns:dssi=&quot;http://schemas.microsoft.com/office/2006/digsig&quot; xmlns:mdssi=&quot;http://schemas.openxmlformats.org/package/2006/digital-signature&quot; xmlns:mver=&quot;http://schemas.openxmlformats.org/markup-compatibility/2006&quot; xmlns:m=&quot;http://schemas.microsoft.com/office/2004/12/omml&quot; xmlns:mrels=&quot;http://schemas.openxmlformats.org/package/2006/relationships&quot; xmlns:spwp=&quot;http://microsoft.com/sharepoint/webpartpages&quot; xmlns:ex12t=&quot;http://schemas.microsoft.com/exchange/services/2006/types&quot; xmlns:ex12m=&quot;http://schemas.microsoft.com/exchange/services/2006/messages&quot; xmlns:pptsl=&quot;http://schemas.microsoft.com/sharepoint/soap/SlideLibrary/&quot; xmlns:spsl=&quot;http://microsoft.com/webservices/SharePointPortalServer/PublishedLinksService&quot; xmlns:st=&quot;&amp;#1;&quot; xmlns=&quot;http://www.w3.org/TR/REC-html40&quot;&gt;

&lt;head&gt;
&lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; charset=us-ascii&quot;&gt;
&lt;meta name=Generator content=&quot;Microsoft Word 12 (filtered medium)&quot;&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot; /&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot; /&gt;
 &lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body lang=EN-US link=blue vlink=purple&gt;

&lt;div class=Section1&gt;

&lt;p class=MsoNormal&gt;Is there any info on the new uPortal Mobile support in
Trunk. I recently upgraded my trunk and now Safari is getting the Mobile
version. How can this be turned off?&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;


&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25962329&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25962329&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/pre&gt;
&lt;/BODY&gt;

&lt;/html&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Mobility-documentation--tp25962329p25962329.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25960660</id>
	<title>Re: [jasig-ue] portlet UI design guidelines?</title>
	<published>2009-10-19T08:45:15Z</published>
	<updated>2009-10-19T08:45:15Z</updated>
	<author>
		<name>Gary Weaver</name>
	</author>
	<content type="html">Gary T.,
&lt;br&gt;&lt;br&gt;Thanks so much! That will really help and I will look into using your 
&lt;br&gt;example and including part of the FSS styling in our uPortal if possible 
&lt;br&gt;so that the portlet (in theory) might be used in both uP 3.1.1+ and uP 
&lt;br&gt;2.5.3.
&lt;br&gt;&lt;br&gt;As a note on your example usage of portlet-menu, what is especially 
&lt;br&gt;confusing to me about the specs related to the menu is that in JSR-286 
&lt;br&gt;they provided a graphical example in PLT.C of how portlet-menu-* classes 
&lt;br&gt;should be used which is basically about styling popout menus.
&lt;br&gt;&lt;br&gt;I really (!) like the portlet markup template that you wrote as well as 
&lt;br&gt;your example below: 
&lt;br&gt;&lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/Portlet+Markup+Template&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/Portlet+Markup+Template&lt;/a&gt;&lt;br&gt;&lt;br&gt;Thanks!
&lt;br&gt;Gary
&lt;br&gt;&lt;br&gt;&lt;br&gt;BTW- If it helps anyone at all, seeing some of the stuff that Gary T. 
&lt;br&gt;wrote triggered me to fix/update my JSR-168/JSR-286 portlet styling 
&lt;br&gt;quick reference to just include text directly from the JSR's because 
&lt;br&gt;otherwise the paraphrasing I did (as well as some mistakes in 
&lt;br&gt;accidentally referring to/basing it on older versions of the specs and 
&lt;br&gt;attributing the menu classes to JSR-286 rather than JSR-168 :( !!) 
&lt;br&gt;probably did more harm than good :( :
&lt;br&gt;&lt;a href=&quot;http://www.scribd.com/doc/11978144/Portlet-Styling-Quick-Reference&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.scribd.com/doc/11978144/Portlet-Styling-Quick-Reference&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Gary Thompson wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Gary,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; (Great name, BTW.)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I am glad you asked. &amp;nbsp;Having standards for portlet markup and CSS is 
&lt;br&gt;&amp;gt; significant in developing portlets efficiently and that result in good 
&lt;br&gt;&amp;gt; user experiences. 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; In developing the new Portlet Administration 
&lt;br&gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/Portlet+Administration+Portlet&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/Portlet+Administration+Portlet&lt;/a&gt;&amp;gt; 
&lt;br&gt;&amp;gt; (PA) portlet user experience for uPortal via Unicon's Cooperative 
&lt;br&gt;&amp;gt; Support program &amp;lt;&lt;a href=&quot;http://www.unicon.net/support/cooperative&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.unicon.net/support/cooperative&lt;/a&gt;&amp;gt;, I had the 
&lt;br&gt;&amp;gt; opportunity to give some focused thought and attention to such 
&lt;br&gt;&amp;gt; standards. &amp;nbsp;The results of that work are built into the PA portlet and 
&lt;br&gt;&amp;gt; documented (to some degree) here:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; * &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/User+Interface&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/User+Interface&lt;/a&gt;&lt;br&gt;&amp;gt; * &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/Markup+and+CSS+Naming+Conventions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/Markup+and+CSS+Naming+Conventions&lt;/a&gt;&lt;br&gt;&amp;gt; * &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/Portlet+Markup+Template&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/Portlet+Markup+Template&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; It's not perfect, but it's a start. &amp;nbsp;Please feel empowered and 
&lt;br&gt;&amp;gt; encouraged to contribute to refining it.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Let me summarize a few high-level strategic thoughts and then try to 
&lt;br&gt;&amp;gt; answer a few of your more specific, tactical questions around the Mail 
&lt;br&gt;&amp;gt; portlet.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; S1. JSR-168 CSS specification
&lt;br&gt;&amp;gt; Having many years of both broad and deep involvement in portal and 
&lt;br&gt;&amp;gt; portlet user interface design and development, my assessment is that 
&lt;br&gt;&amp;gt; the JSR-168 portlet CSS specification 
&lt;br&gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/JSR-168+PLT.C+CSS+Style+Definitions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/JSR-168+PLT.C+CSS+Style+Definitions&lt;/a&gt;&amp;gt; 
&lt;br&gt;&amp;gt; is poorly designed, poorly defined, and woefully inadequate for modern 
&lt;br&gt;&amp;gt; portlet development. &amp;nbsp;It also has not been updated in many years. &amp;nbsp;
&lt;br&gt;&amp;gt; This results in it being mostly useless as a standard, and therefore 
&lt;br&gt;&amp;gt; not worthy of significant effort to maintain as such in the Jasig 
&lt;br&gt;&amp;gt; community. &amp;nbsp;For clarification, I am speaking of the CSS part of the 
&lt;br&gt;&amp;gt; JSR-168 specification, not the specification as a whole. &amp;nbsp;Having 
&lt;br&gt;&amp;gt; concluded that it is a poor markup/CSS standard, that is not to say 
&lt;br&gt;&amp;gt; that it should be totally ignored or discarded - it is indeed still in 
&lt;br&gt;&amp;gt; use in uPortal and a few parts of it are usable. &amp;nbsp;However, as a 
&lt;br&gt;&amp;gt; community we cannot base current and future efforts on it - it is not 
&lt;br&gt;&amp;gt; sufficient.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; S2. Portlet user interface spans major releases of uPortal
&lt;br&gt;&amp;gt; I admire your efforts to achieve this, however I believe that you will 
&lt;br&gt;&amp;gt; find this effort not worthwhile when speaking of 2.5.x and 3.1.x. &amp;nbsp;
&lt;br&gt;&amp;gt; Especially in regards to the user interface layer, the differences 
&lt;br&gt;&amp;gt; between the two releases are rather un-spannable. &amp;nbsp;Not impossible, but 
&lt;br&gt;&amp;gt; probably not worth the effort. &amp;nbsp;I'll demonstrate this below in regards 
&lt;br&gt;&amp;gt; to your question about converting an unordered list into tabs. &amp;nbsp;My 
&lt;br&gt;&amp;gt; recommendation is to press forward where possible - in most senses, 
&lt;br&gt;&amp;gt; uPortal and Jasig portlets are only now beginning to achieve the user 
&lt;br&gt;&amp;gt; experience standards that are prevalent conventions (and continuing to 
&lt;br&gt;&amp;gt; press forward) in the Web. &amp;nbsp;We need not abandon the past, but we do 
&lt;br&gt;&amp;gt; need to press forward - that is where most of our energy and effort 
&lt;br&gt;&amp;gt; needs to be for our portal and portlets to remain viable.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; S3. As much as we are able, let's not create our own standard
&lt;br&gt;&amp;gt; We can't sustain it, and if isolated to Jasig/uPortal, that doesn't 
&lt;br&gt;&amp;gt; make it much of a standard. &amp;nbsp;However, I am of the opinion that Jasig 
&lt;br&gt;&amp;gt; should and must set some standards in this area where other standards 
&lt;br&gt;&amp;gt; are not sufficient. &amp;nbsp;I am also of the opinion that where possible, we 
&lt;br&gt;&amp;gt; should push those needs into other open standards, like Fluid (see next).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; S4. Fluid Skinning System
&lt;br&gt;&amp;gt; Incorporated into uPortal 3.1.x, the Fluid Skinning System 
&lt;br&gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://wiki.fluidproject.org/x/96M7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://wiki.fluidproject.org/x/96M7&lt;/a&gt;&amp;gt; is a CSS standard that uPortal 
&lt;br&gt;&amp;gt; (and Sakai, and several newer portlets) have adopted. &amp;nbsp;Fluid also has 
&lt;br&gt;&amp;gt; a growing component library of many useful user interface &amp;quot;widgets&amp;quot; 
&lt;br&gt;&amp;gt; like Pagers, Reorderers, and Inline Editors 
&lt;br&gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://wiki.fluidproject.org/x/PAAF&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://wiki.fluidproject.org/x/PAAF&lt;/a&gt;&amp;gt;. &amp;nbsp;The Fluid Project community 
&lt;br&gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://fluidproject.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://fluidproject.org/&lt;/a&gt;&amp;gt; is a well-balanced mix of both designers 
&lt;br&gt;&amp;gt; and developers, and their processes result in friendly frameworks that 
&lt;br&gt;&amp;gt; accomplish modern best practices in programming, usability, and 
&lt;br&gt;&amp;gt; accessibility. &amp;nbsp;As a Fluid Project community participant and member, 
&lt;br&gt;&amp;gt; and hands-on user of the FSS, I can say that from personal 
&lt;br&gt;&amp;gt; experience. &amp;nbsp;Since the community is active and growing, the Jasig 
&lt;br&gt;&amp;gt; community is welcome and encouraged to participate in the growth of 
&lt;br&gt;&amp;gt; the standard, yet does not have to solely bear the burden of 
&lt;br&gt;&amp;gt; maintaining the standard. &amp;nbsp;My recommendation, therefore, is to 
&lt;br&gt;&amp;gt; continue to standardize on Fluid and related good frameworks like jQuery.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; S5. Portability
&lt;br&gt;&amp;gt; The hallmark of the JSR-168 portlet spec is portability - the concept 
&lt;br&gt;&amp;gt; that a portlet can be taken from one portal context and dropped into 
&lt;br&gt;&amp;gt; wholly different portal context and operate the same. &amp;nbsp;Theoretically, 
&lt;br&gt;&amp;gt; it's an interesting concept, but frankly, I have never seen this work 
&lt;br&gt;&amp;gt; practically. &amp;nbsp;Maybe it is an easier achievement with the technology 
&lt;br&gt;&amp;gt; (though my experience is that doesn't work well either), but on the 
&lt;br&gt;&amp;gt; user experience front, it fails miserably. &amp;nbsp;Because in user 
&lt;br&gt;&amp;gt; experience, CONTEXT is critical. &amp;nbsp;Let me give an example of a singer. &amp;nbsp;
&lt;br&gt;&amp;gt; A singer being someone who can sing music. &amp;nbsp;But a singer can be as 
&lt;br&gt;&amp;gt; different as Britney Spears is from Bob Dylan is from Bob Marley is 
&lt;br&gt;&amp;gt; from Mick Jagger is from Snoop Dogg is from Luciano Pavarotti is from 
&lt;br&gt;&amp;gt; Elvis Presley is from Willie Nelson. &amp;nbsp;If the Opera needs a singer, you 
&lt;br&gt;&amp;gt; can't just unplug Snoop Dogg from rap and send him to the Opera. &amp;nbsp;He 
&lt;br&gt;&amp;gt; doesn't FIT. &amp;nbsp;Especially when they were expecting the Fat Lady for 
&lt;br&gt;&amp;gt; costuming. &amp;nbsp;So like singers in different contexts, we are trying to 
&lt;br&gt;&amp;gt; pass around portlets to different portal contexts, with similar 
&lt;br&gt;&amp;gt; results. &amp;nbsp;They don't naturally fit the new context without a lot of 
&lt;br&gt;&amp;gt; re-work and makeup applied - and even then they are easily identified 
&lt;br&gt;&amp;gt; as counterfeit. &amp;nbsp;So far I have seen portlet portability fall into one 
&lt;br&gt;&amp;gt; of two strategies. &amp;nbsp;In one, the portlet is packaged with its context 
&lt;br&gt;&amp;gt; (interactions, interfaces, styling, etc.), so that it ALWAYS is an 
&lt;br&gt;&amp;gt; Opera singer, for example. &amp;nbsp;That works well in the Opera, but clearly 
&lt;br&gt;&amp;gt; fails at the rock concert. &amp;nbsp;The other strategy is to make the portlet 
&lt;br&gt;&amp;gt; as generic as possible. &amp;nbsp;This is the equivalent of sending a B-rate 
&lt;br&gt;&amp;gt; singer (has to be because he can't focus on any one context) in his 
&lt;br&gt;&amp;gt; underwear to whatever gig comes up, hoping that there will be the 
&lt;br&gt;&amp;gt; appropriate, fitting clothes waiting for him. &amp;nbsp;This also fails (except 
&lt;br&gt;&amp;gt; for maybe the rock concert, where pretty much every singer is B-rate 
&lt;br&gt;&amp;gt; and in his underwear) for pretty obvious reasons. &amp;nbsp;From the user 
&lt;br&gt;&amp;gt; interface/user experience perspective, portlets are particularly 
&lt;br&gt;&amp;gt; troubling that way. &amp;nbsp;The Jasig community is great about being open 
&lt;br&gt;&amp;gt; when building portlets, but that often comes at a price of generic 
&lt;br&gt;&amp;gt; (B-rate, shows-up-in-his-underwear) quality, even when placed in its 
&lt;br&gt;&amp;gt; own uPortal. &amp;nbsp;As far as I have experienced, this issue has yet to be 
&lt;br&gt;&amp;gt; solved. &amp;nbsp;There isn't a good way to package and include all of the 
&lt;br&gt;&amp;gt; resources - markup, CSS, images, js, etc. - into every portlet so that 
&lt;br&gt;&amp;gt; it can be portable; that defeats many other best practices, standards, 
&lt;br&gt;&amp;gt; and maintainability. &amp;nbsp;Howver, there is neither a good way to ensure 
&lt;br&gt;&amp;gt; that those resources are available from the portal context, and in a 
&lt;br&gt;&amp;gt; way that the portlet needs them to be functional and a good user 
&lt;br&gt;&amp;gt; experience. &amp;nbsp;We have need of solving this issue.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Now on to more tactical specifics.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; T1. Portlet Administraton
&lt;br&gt;&amp;gt; The PA portlet in the 3.1 trunk is probably the best current, go 
&lt;br&gt;&amp;gt; forward example. &amp;nbsp;It is not perfect, but shows how an older uPortal 
&lt;br&gt;&amp;gt; channel has been converted into a shiny, modern portlet. &amp;nbsp;You should 
&lt;br&gt;&amp;gt; also refer to this CSS file in trunk for portlet development (which 
&lt;br&gt;&amp;gt; includes the JSR-168 spec and is amply commented):
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; \uportal-war\src\main\webapp\media\skins\universality\uportal3\uportal3_portlet.css
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; T2. FSS for grids and layout
&lt;br&gt;&amp;gt; FSS (included in uPortal) comes with an excellent layout/grid 
&lt;br&gt;&amp;gt; framework. &amp;nbsp;The FSS layout framework is being used to render the main 
&lt;br&gt;&amp;gt; uPortal UI layout (multi-column and sidebars - all without tables!). &amp;nbsp;
&lt;br&gt;&amp;gt; Refer to this FSS primer: &lt;a href=&quot;http://wiki.fluidproject.org/x/-gBS&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://wiki.fluidproject.org/x/-gBS&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; T3. Making an unordered list into tabs
&lt;br&gt;&amp;gt; On the 3.1.x release with FSS, this is simple and quick (rather 
&lt;br&gt;&amp;gt; beautiful overall). &amp;nbsp;Simply take your semantic unordered list markup 
&lt;br&gt;&amp;gt; and sprinkle in a few FSS classes (I would also encourage some 
&lt;br&gt;&amp;gt; meaningful ARIA roles for accessibility):
&lt;br&gt;&amp;gt; &amp;lt;div class=&amp;quot;fl-container-flex&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;ul role=&amp;quot;tablist&amp;quot; class=&amp;quot;fl-tabs fl-tabs-left&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;fl-activeTab&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Active Tab&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab #2&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab #3&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/ul&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;div role=&amp;quot;tabpanel&amp;quot; class=&amp;quot;fl-tab-content&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; Content
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt; Viola! &amp;nbsp;And you don't have to edit CSS at all. &amp;nbsp;FSS layout makes the 
&lt;br&gt;&amp;gt; unordered list into tabs, and FSS themes (uPortal skins) style the 
&lt;br&gt;&amp;gt; tabs to match the currently selected skin.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Sadly, this will produce no tangible result in uPortal 2.5.3 - you'll 
&lt;br&gt;&amp;gt; still have a basic, unordered list in the user interface. &amp;nbsp;What to 
&lt;br&gt;&amp;gt; do? &amp;nbsp;Here's where we clearly demonstrate the shortcomings of the 
&lt;br&gt;&amp;gt; JSR-168 CSS specification (I'll try not to be overly sarcastic in my 
&lt;br&gt;&amp;gt; example).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; CSS classes are free (or at least cheap), so in most senses, there is 
&lt;br&gt;&amp;gt; no harm in layering on additional CSS classes into the markup. &amp;nbsp;So 
&lt;br&gt;&amp;gt; let's think about layering in JSR-168 CSS classes to support non-FSS 
&lt;br&gt;&amp;gt; implementations. &amp;nbsp;First, let's consult the JSR-168 spec to see what is 
&lt;br&gt;&amp;gt; available. &amp;nbsp;After perusal, it looks like this section makes sense:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; PLT.C.6. Menus
&lt;br&gt;&amp;gt; &amp;quot;Menu styles define the look-and-feel of the text and background of a 
&lt;br&gt;&amp;gt; menu structure. This structure may be embedded in the aggregated page 
&lt;br&gt;&amp;gt; or may appear as a context sensitive popup menu.&amp;quot;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Umm, okay, that definition makes it clear how I am supposed to use the 
&lt;br&gt;&amp;gt; spec... or not. &amp;nbsp;Let's see if we can make sense of the classes they 
&lt;br&gt;&amp;gt; give us:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; portlet-menu 	General menu settings such as background color, margins, 
&lt;br&gt;&amp;gt; etc.
&lt;br&gt;&amp;gt; portlet-menu-item 	Normal, unselected menu item.
&lt;br&gt;&amp;gt; portlet-menu-item-selected 	Selected menu item.
&lt;br&gt;&amp;gt; portlet-menu-item-hover 	Normal, unselected menu item when the mouse 
&lt;br&gt;&amp;gt; hovers over it.
&lt;br&gt;&amp;gt; portlet-menu-item-hover-selected 	Selected menu item when the mouse 
&lt;br&gt;&amp;gt; hovers over it.
&lt;br&gt;&amp;gt; portlet-menu-cascade-item 	Normal, unselected menu item that has 
&lt;br&gt;&amp;gt; submenus.
&lt;br&gt;&amp;gt; portlet-menu-cascade-item-selected 	Selected sub-menu item that has 
&lt;br&gt;&amp;gt; sub-menus.
&lt;br&gt;&amp;gt; portlet-menu-description 	Descriptive text for the menu (e.g. in a 
&lt;br&gt;&amp;gt; help context below the menu).
&lt;br&gt;&amp;gt; portlet-menu-caption 	Menu caption.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Why we need to specifically delineate &amp;quot;portlet-menu-item&amp;quot; on the &amp;lt;li&amp;gt; 
&lt;br&gt;&amp;gt; (when the &amp;lt;li&amp;gt; is contained in a &amp;lt;ul&amp;gt; already specified as a 
&lt;br&gt;&amp;gt; &amp;quot;portlet-menu&amp;quot;) is lost on me, but okay. &amp;nbsp;And we're supposed to put in 
&lt;br&gt;&amp;gt; a CSS class &amp;quot;portlet-menu-item-hover&amp;quot; for mouse-hover? &amp;nbsp;Isn't there 
&lt;br&gt;&amp;gt; such a thing as :hover in the CSS spec itself? &amp;nbsp;There's some stuff in 
&lt;br&gt;&amp;gt; there that could be used (though a Menu caption? &amp;nbsp;Really? &amp;nbsp;And the 
&lt;br&gt;&amp;gt; desciption is so helpful.), but the point is that even something as 
&lt;br&gt;&amp;gt; basic as a menu is not well designed or defined in the JSR-168 CSS 
&lt;br&gt;&amp;gt; spec. &amp;nbsp;And note there is no JSR-168 class for the associated tabpanel. 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Taking these classes we could add in the following to our markup:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;div class=&amp;quot;fl-container-flex&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;ul role=&amp;quot;tablist&amp;quot; class=&amp;quot;fl-tabs fl-tabs-left portlet-menu&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;fl-activeTab portlet-menu-item-selected&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Active Tab&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;portlet-menu-item&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab #2&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;portlet-menu-item&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab #3&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/ul&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;div role=&amp;quot;tabpanel&amp;quot; class=&amp;quot;fl-tab-content&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; Content
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt; And we would discover that this has done very little to our UI result 
&lt;br&gt;&amp;gt; in 2.5.3. &amp;nbsp;Still no tabs, just an unordered list with maybe a bit of 
&lt;br&gt;&amp;gt; styling applied. &amp;nbsp;Why? &amp;nbsp;Because there is no context. &amp;nbsp;What KIND of 
&lt;br&gt;&amp;gt; menu is this? &amp;nbsp;Nothing in the JSR-168 spec specifies this as a TAB 
&lt;br&gt;&amp;gt; menu. &amp;nbsp;Well, we could define that in the CSS by making all 
&lt;br&gt;&amp;gt; .portlet-menu .portlet-menu-item elements inline or floated and so 
&lt;br&gt;&amp;gt; forth. &amp;nbsp;Super! (except that you had to figure out and test that across 
&lt;br&gt;&amp;gt; browsers on your own effort, which is painful, trust me). &amp;nbsp;Now we have 
&lt;br&gt;&amp;gt; tabs from our unordered list. &amp;nbsp;But wait - now EVERYWHERE that these 
&lt;br&gt;&amp;gt; classes are used will be converted to TABS, whether they are 
&lt;br&gt;&amp;gt; contextually tabs or not. &amp;nbsp;The JSR-168 spec does not give us classes 
&lt;br&gt;&amp;gt; to define the context.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; So, okay, we could add the context to the container &amp;lt;div&amp;gt;, like so:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;div class=&amp;quot;fl-container-flex portlet-menu-tabs&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;ul role=&amp;quot;tablist&amp;quot; class=&amp;quot;fl-tabs fl-tabs-left portlet-menu&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;fl-activeTab portlet-menu-item-selected&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Active Tab&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;portlet-menu-item&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab #2&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;li role=&amp;quot;tab&amp;quot; class=&amp;quot;portlet-menu-item&amp;quot;&amp;gt;&amp;lt;a href=&amp;quot;#_bottom&amp;quot;&amp;gt;Tab #3&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/ul&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;div role=&amp;quot;tabpanel&amp;quot; class=&amp;quot;fl-tab-content&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; Content
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;&amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;/div&amp;gt;
&lt;br&gt;&amp;gt; And then solve the problem in the CSS with selectors like:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; .portlet-menu-tabs .portlet-menu .portlet-menu-item {}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; So that only those specifications are applied to make an unordered 
&lt;br&gt;&amp;gt; list into tabs when the parent .portlet-menu-tabs class is present. &amp;nbsp;
&lt;br&gt;&amp;gt; However, now we have broken the standard. &amp;nbsp;No one will get the benefit 
&lt;br&gt;&amp;gt; of using these classes to achieve tabs from an unordered list without 
&lt;br&gt;&amp;gt; knowing to put the .portlet-menu-tabs class on the containing 
&lt;br&gt;&amp;gt; element. &amp;nbsp;And even if that class is on the containing element, if you 
&lt;br&gt;&amp;gt; take the portlet out of uPortal and try to use it elsewhere, it will 
&lt;br&gt;&amp;gt; revert to an undesireable, plain unordered list. &amp;nbsp;You could say the 
&lt;br&gt;&amp;gt; same about FSS (that it isn't portable), but it IS easily includable 
&lt;br&gt;&amp;gt; and relieves us from having to solve the problem, test the solution, 
&lt;br&gt;&amp;gt; and maintain the standard.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; My recommendation: include FSS into your CSS includes in your 2.5.3 
&lt;br&gt;&amp;gt; skin (minimally fss-layout.css), and you will at least get the basic 
&lt;br&gt;&amp;gt; structural benefits without doing any extra work and without 
&lt;br&gt;&amp;gt; complicating the markup with the JSR-168 classes. &amp;nbsp;Besides, after 
&lt;br&gt;&amp;gt; including the JSR-168 classes, if you were to stumble on this markup, 
&lt;br&gt;&amp;gt; which classes do you use/modify? &amp;nbsp;The FSS ones, or the JSR-168 ones? &amp;nbsp;
&lt;br&gt;&amp;gt; And if they are both (FSS and JSR-168) trying to make tabs out of an 
&lt;br&gt;&amp;gt; unordered list, you are going to get some ugly CSS conflicts. &amp;nbsp;I like 
&lt;br&gt;&amp;gt; to Keep It Simple. &amp;nbsp;The FSS markup is much cleaner, and does the job 
&lt;br&gt;&amp;gt; much better, with little effort required on your part as the implementor.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Hope that helps. &amp;nbsp;I welcome more discussion on these matters.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Gary Thompson
&lt;br&gt;&amp;gt; User Experience Leader
&lt;br&gt;&amp;gt; Unicon | www.unicon.net
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ----- Original Message -----
&lt;br&gt;&amp;gt; From: &amp;quot;Gary Weaver&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960660&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary.weaver@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960660&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jasig-ue@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Sent: Thursday, October 15, 2009 10:51:42 AM GMT -07:00 U.S. Mountain 
&lt;br&gt;&amp;gt; Time (Arizona)
&lt;br&gt;&amp;gt; Subject: Re:[jasig-ue] portlet UI design guidelines?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I should probably clarify that in the MailPortlet when you click on a
&lt;br&gt;&amp;gt; tab, that it when it queries the pop3/imap server for mail, so I'm not
&lt;br&gt;&amp;gt; looking for a show/hide div type of thing, but rather either the
&lt;br&gt;&amp;gt; standard CSS classes that display line-items horizontally (in a way
&lt;br&gt;&amp;gt; friendly to various existing skins in both uPortal 2.5.3 and uPortal
&lt;br&gt;&amp;gt; 3.1.1) or something (that I'm not guessing would be a simple?) that not
&lt;br&gt;&amp;gt; only display tabs but would use Ajax to load the chosen tab in the
&lt;br&gt;&amp;gt; background and to do this in a skin-friendly way (specifically in the
&lt;br&gt;&amp;gt; formatting of the tabs) that hopefully could work without much problem
&lt;br&gt;&amp;gt; in both uPortal 2.5.3 and 3.1.1. The following is basically what I'm
&lt;br&gt;&amp;gt; showing for tabs atop the mail message list table (I made up the class
&lt;br&gt;&amp;gt; names to show what I'm looking for):
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;ul
&lt;br&gt;&amp;gt; class=&amp;quot;some-well-used-skin-class-to-indicate-these-are-tabs-and-therefore-this-unordered-list-should-be-composed-of-blocked-bordered-and-backgrounded-inline-line-items&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;lt;li&amp;gt;...&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;lt;li
&lt;br&gt;&amp;gt; class=&amp;quot;some-well-used-skin-class-to-indicate-this-inline-line-item-tab-is-selected&amp;quot;&amp;gt;...&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;lt;li&amp;gt;...&amp;lt;/li&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;/ul&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; It looks like maybe the thing to use in uPortal 3.1.1 is fl-tabs as the
&lt;br&gt;&amp;gt; class name and fl-activeTab for the selected tab. But can I just define
&lt;br&gt;&amp;gt; those in the portlet's CSS so that it works in older versions without it
&lt;br&gt;&amp;gt; overriding the newer stuff in uPortal 3.1.1?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; And for table formatting, I was just checking to see what the best way
&lt;br&gt;&amp;gt; to define the table and its classes are or what you would say is a
&lt;br&gt;&amp;gt; uPortal 2.5.3 and 3.1.1 friendly way to define a table in a portlet. I
&lt;br&gt;&amp;gt; currently have the following for the display of mail messages, but I'm
&lt;br&gt;&amp;gt; guessing I could do better?:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;%-- is there any nice column-resizing
&lt;br&gt;&amp;gt; javascript deal available via uP 3.1 and if so could we include that in
&lt;br&gt;&amp;gt; the portlet so that it could be used in both earlier and later versions
&lt;br&gt;&amp;gt; of uPortal? %--&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;table
&lt;br&gt;&amp;gt; class=&amp;quot;is-there-some-sort-of-standard-uportal-skin-class-that-should-be-used-here-that-might-add-a-border-or-similar&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;tbody&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;c:forEach
&lt;br&gt;&amp;gt; items=&amp;quot;${selectedMailAccountDetails.stubs}&amp;quot; var=&amp;quot;stub&amp;quot; 
&lt;br&gt;&amp;gt; varStatus=&amp;quot;counter&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;c:set var=&amp;quot;className&amp;quot;&amp;gt;${ (counter.index
&lt;br&gt;&amp;gt; % 2 == 0) ? 'portlet-section-body' : 'portlet-section-alternate'}
&lt;br&gt;&amp;gt; ${stub.seen ? 'mailportlet-read-message' :
&lt;br&gt;&amp;gt; 'mailportlet-unread-message'}&amp;lt;/c:set&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;tr class=&amp;quot;${className}&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;td&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;c:if test=&amp;quot;${stub.flagged}&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;%-- am guessing maybe there
&lt;br&gt;&amp;gt; are famfamfam icons for these, but then should resource-server be a
&lt;br&gt;&amp;gt; requirement since it serves those in 3.1 or should they be included in
&lt;br&gt;&amp;gt; the portlet to be compatible with older uPortal versions? --%&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;img
&lt;br&gt;&amp;gt; src=&amp;quot;&amp;lt;%=request.getContextPath()%&amp;gt;/images/star.png&amp;quot;/&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/c:if&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;c:if test=&amp;quot;${stub.answered}&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;img
&lt;br&gt;&amp;gt; src=&amp;quot;&amp;lt;%=request.getContextPath()%&amp;gt;/images/answered.png&amp;quot;/&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/c:if&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;c:if test=&amp;quot;${not stub.flagged
&lt;br&gt;&amp;gt; &amp;&amp; not stub.answered}&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;%-- it just looks bad when
&lt;br&gt;&amp;gt; there are no flags on any messages. assuming this column have some sort
&lt;br&gt;&amp;gt; of minimum width. --%&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/c:if&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/td&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;td&amp;gt;&amp;lt;span class=${stub.deleted ?
&lt;br&gt;&amp;gt; 'mailportlet-deleted-message' : ''}&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;a
&lt;br&gt;&amp;gt; href=&amp;quot;${selectedMailAccountDetails.link}&amp;quot;&amp;gt;&amp;lt;c:choose&amp;gt;&amp;lt;c:when
&lt;br&gt;&amp;gt; test=&amp;quot;${empty stub.from}&amp;quot;&amp;gt;&amp;lt;fmt:message
&lt;br&gt;&amp;gt; key=&amp;quot;noSender&amp;quot;/&amp;gt;&amp;lt;/c:when&amp;gt;&amp;lt;c:otherwise&amp;gt;&amp;lt;c:out
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt; value=&amp;quot;${stub.from}&amp;quot;/&amp;gt;&amp;lt;/c:otherwise&amp;gt;&amp;lt;/c:choose&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;td&amp;gt;&amp;lt;span class=${stub.deleted ?
&lt;br&gt;&amp;gt; 'mailportlet-deleted-message' : ''}&amp;gt;&amp;lt;a
&lt;br&gt;&amp;gt; href=&amp;quot;${selectedMailAccountDetails.link}&amp;quot;&amp;gt;&amp;lt;c:choose&amp;gt;&amp;lt;c:when
&lt;br&gt;&amp;gt; test=&amp;quot;${empty stub.subject}&amp;quot;&amp;gt;&amp;lt;fmt:message
&lt;br&gt;&amp;gt; key=&amp;quot;noSubject&amp;quot;/&amp;gt;&amp;lt;/c:when&amp;gt;&amp;lt;c:otherwise&amp;gt;&amp;lt;c:out
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt; value=&amp;quot;${stub.subject}&amp;quot;/&amp;gt;&amp;lt;/c:otherwise&amp;gt;&amp;lt;/c:choose&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;td&amp;gt;&amp;lt;span class=${stub.deleted ?
&lt;br&gt;&amp;gt; 'mailportlet-deleted-message' : ''}&amp;gt;&amp;lt;a
&lt;br&gt;&amp;gt; href=&amp;quot;${selectedMailAccountDetails.link}&amp;quot;&amp;gt;&amp;lt;c:choose&amp;gt;&amp;lt;c:when
&lt;br&gt;&amp;gt; test=&amp;quot;${empty stub.received}&amp;quot;&amp;gt;&amp;lt;fmt:message
&lt;br&gt;&amp;gt; key=&amp;quot;noDate&amp;quot;/&amp;gt;&amp;lt;/c:when&amp;gt;&amp;lt;c:otherwise&amp;gt;&amp;lt;c:out
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt; value=&amp;quot;${stub.received}&amp;quot;/&amp;gt;&amp;lt;/c:otherwise&amp;gt;&amp;lt;/c:choose&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/tr&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/c:forEach&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/tbody&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/table&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt; Gary
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Gary Weaver wrote:
&lt;br&gt;&amp;gt; &amp;gt; (sorry to cross-post, but I don't know where to send this)
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Am having a little bit of a dilemma working on the MailPortlet UI and
&lt;br&gt;&amp;gt; &amp;gt; thought maybe someone could provide some guidance.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; * I want to use what I can of what standards I should from PLT.C CSS
&lt;br&gt;&amp;gt; &amp;gt; classes of JSR-168, and am trying to make it utilize the classes as
&lt;br&gt;&amp;gt; &amp;gt; defined in the default skin of uPortal 3.1.1 for reference
&lt;br&gt;&amp;gt; &amp;gt; (skins/universality/uportal3/jsr168_portlet_spec.css) just to have a
&lt;br&gt;&amp;gt; &amp;gt; better feel for what it would look like in the future if we were to
&lt;br&gt;&amp;gt; &amp;gt; upgrade uPortal 3.1+. I know that these classes were also defined in
&lt;br&gt;&amp;gt; &amp;gt; uPortal 2.5.3 skins, but I haven't looked at how those would look yet.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; * Those classes in the default skin of uP 3.1.1 at least seem to just
&lt;br&gt;&amp;gt; &amp;gt; define background color, border color, change a few font sizes/bold a
&lt;br&gt;&amp;gt; &amp;gt; few things, and do some light padding/margin changes.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; * Things like portlet-section-header, portlet-section-subheader, and
&lt;br&gt;&amp;gt; &amp;gt; portlet-form-label aren't defining &amp;quot;display: block;&amp;quot; and therefore
&lt;br&gt;&amp;gt; &amp;gt; also not defining margins/padding, so I'm unclear as to whether those
&lt;br&gt;&amp;gt; &amp;gt; should be headers (h3, h4, ...) or label elements (all seem like they
&lt;br&gt;&amp;gt; &amp;gt; should be headers I guess).
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; * I need other CSS classes to make nice (list item) tabs across the
&lt;br&gt;&amp;gt; &amp;gt; top of the main MailPortlet view
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; * I need other CSS classes to do some better formatting of the table
&lt;br&gt;&amp;gt; &amp;gt; containing the list of the most recent email messages for a specific
&lt;br&gt;&amp;gt; &amp;gt; account (which has columns for flags, sender, subject, and date like
&lt;br&gt;&amp;gt; &amp;gt; you'd expect in the main message list view a mail client)
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; * It would be great (but not totally necessary) to have resizeable
&lt;br&gt;&amp;gt; &amp;gt; columns in the table (so some standard javascript to assist with that
&lt;br&gt;&amp;gt; &amp;gt; might be nice) or at the very least to have it defined the table
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; My questions are:
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; * Were there CSS classes that did that in the standard skins that came
&lt;br&gt;&amp;gt; &amp;gt; with uPortal 2.5.3 (I'm looking through them now- not sure)? Do those
&lt;br&gt;&amp;gt; &amp;gt; still apply for uP 3.1.1?
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; * Could you point me at specific examples of portlets or other places
&lt;br&gt;&amp;gt; &amp;gt; in uPortal 3.1.1 that do a good job (list item) tabs and grid/table
&lt;br&gt;&amp;gt; &amp;gt; formatting like I'm talking about in a uPortal-skin friendly way?
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; * What level of header should portlet-section-header,
&lt;br&gt;&amp;gt; &amp;gt; portlet-section-subheader, and portlet-form-label be to have
&lt;br&gt;&amp;gt; &amp;gt; consistency throughout portlets and if they should be labels, what
&lt;br&gt;&amp;gt; &amp;gt; additional classes should be used if any to define that they should be
&lt;br&gt;&amp;gt; &amp;gt; display:block and to define their margins/padding?
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; * Do you think that ResourceServer should be a requirement for
&lt;br&gt;&amp;gt; &amp;gt; portlets to display correctly from here on out, and if so, do you know
&lt;br&gt;&amp;gt; &amp;gt; of anyone using it with older versions of uPortal?
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; I completely understand that at some point the past has to be left
&lt;br&gt;&amp;gt; &amp;gt; behind and newer portlets should only work with uPortal 3.1+, but for
&lt;br&gt;&amp;gt; &amp;gt; those of us that want to contribute in such a way that portlets can be
&lt;br&gt;&amp;gt; &amp;gt; used in both uPortal 3.1.1+ and uPortal 2.5.3, I want to make sure
&lt;br&gt;&amp;gt; &amp;gt; that I'm defining things correctly and defining portlet-specific CSS
&lt;br&gt;&amp;gt; &amp;gt; and/or reusing skin CSS in a way that is kosher for both environments
&lt;br&gt;&amp;gt; &amp;gt; (at least for now, if it makes sense).
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Thanks!
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Gary
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -- 
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960660&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jasig-ue@...&lt;/a&gt; as: 
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960660&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see 
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/jasig-ue&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/jasig-ue&lt;/a&gt;&lt;br&gt;&amp;gt; -- 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960660&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-dev@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960660&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary.weaver@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-dev&lt;/a&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960660&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-dev@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960660&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---Developer-f22545.html&quot; embed=&quot;fixTarget[22545]&quot; target=&quot;_top&quot; &gt;uPortal - Developer&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-jasig-ue--portlet-UI-design-guidelines--tp25931057p25960660.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25960137</id>
	<title>Re: access to a tab on startup (up3.1)</title>
	<published>2009-10-19T08:15:44Z</published>
	<updated>2009-10-19T08:15:44Z</updated>
	<author>
		<name>Leblanc Christophe</name>
	</author>
	<content type="html">Thanks for your reply, it works fine and solve my problem.
&lt;br&gt;&lt;br&gt;2009/10/13 Eric Dalquist &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960137&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eric.dalquist@...&lt;/a&gt;&amp;gt;:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; This has been fixed for 3.2 by &lt;a href=&quot;http://www.ja-sig.org/issues/browse/UP-2426&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/issues/browse/UP-2426&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The changes are very simple so if you want to try applying it to your 3.1
&lt;br&gt;&amp;gt; code you can see the patch here:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://developer.jasig.org/source/rdiff/jasigsvn?csid=45860&amp;u&amp;N&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://developer.jasig.org/source/rdiff/jasigsvn?csid=45860&amp;u&amp;N&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -Eric
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Leblanc Christophe wrote:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I wan't my guests users to access the tab they want via an url. I use
&lt;br&gt;&amp;gt;&amp;gt; externalid url looks like this :
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://localhost:8080/uPortal/render.userLayoutRootNode.uP?uP_root=root&amp;uP_sparam=activeTab&amp;activeTab=welcome&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://localhost:8080/uPortal/render.userLayoutRootNode.uP?uP_root=root&amp;uP_sparam=activeTab&amp;activeTab=welcome&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt; or
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://localhost:8080/uPortal/render.userLayoutRootNode.uP?uP_root=root&amp;uP_sparam=activeTab&amp;activeTab=news&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://localhost:8080/uPortal/render.userLayoutRootNode.uP?uP_root=root&amp;uP_sparam=activeTab&amp;activeTab=news&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; But when the user first access the portal, he is redirected to the main
&lt;br&gt;&amp;gt;&amp;gt; page
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://localhost:8080/uPortal/render.userLayoutRootNode.uP&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://localhost:8080/uPortal/render.userLayoutRootNode.uP&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Is it possible to stop this redirection and view the good tab ?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Thanks
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Christophe Leblanc
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; --- You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960137&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960137&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eric.dalquist@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt; To unsubscribe, change settings or access archives, see
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960137&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25960137&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/access-to-a-tab-on-startup-%28up3.1%29-tp25824259p25960137.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25958071</id>
	<title>uPortal2.6 - Bad Request 400 Error</title>
	<published>2009-10-19T06:05:36Z</published>
	<updated>2009-10-19T06:05:36Z</updated>
	<author>
		<name>Hakan Tekinaslan</name>
	</author>
	<content type="html">Hello,&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Some of our uPortal users faced 400 - Bad Request error while tryin to view our uPortal installation. It happened on different browsers and problem was fixed by cleaning cookies and cache. Did anyone else face with this? Is there any way to prevent this?&lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Thanks a lot, have a nice day...&lt;/div&gt;&lt;div&gt;--- &lt;br&gt;Hakan Tekinaslan&lt;br&gt;SABANCI UNIVERSITY&lt;br&gt;Software Development Specialist&lt;br&gt;+90 (216) 483 9195&lt;br&gt;
&lt;/div&gt;

&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25958071&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25958071&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/pre&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/uPortal2.6---Bad-Request-400-Error-tp25958071p25958071.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25952324</id>
	<title>Re: trouble with jndi database resource, uportal    3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-18T18:50:32Z</published>
	<updated>2009-10-18T18:50:32Z</updated>
	<author>
		<name>Susan Bramhall</name>
	</author>
	<content type="html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;
&lt;html&gt;
&lt;head&gt;
  &lt;meta content=&quot;text/html;charset=ISO-8859-1&quot; http-equiv=&quot;Content-Type&quot;&gt;
&lt;/head&gt;
&lt;body bgcolor=&quot;#ffffff&quot; text=&quot;#000000&quot;&gt;
We're running Tomcat Version 6.0.18 and using Oracle drivers.&amp;nbsp; Resource
defined in conf/contenxt.xml looks like this:&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;lt;Resource name=&quot;jdbc/uPortalDB&quot; auth=&quot;Container&quot;
type=&quot;javax.sql.DataSource&quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
factory='org.apache.commons.dbcp.BasicDataSourceFactory'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; username=&quot;user&quot; password=&quot;pw&quot;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; driverClassName=&quot;oracle.jdbc.OracleDriver&quot; &lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; url=&quot;jdbc:oracle:thin:@server:1521:SID&quot;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; maxActive='50' maxIdle='10' maxWait='5000'&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; poolPreparedStatements='true'&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; testOnBorrow='true'&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; validationQuery='Select user from dual'&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; removeAbandoned='true'&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; logAbandoned='true' &lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
connectionProperties=&quot;oracle.jdbc.ReadTimeout=10000;oracle.net.CONNECT_TIMEOUT=2000&quot;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /&amp;gt;&lt;br&gt;
&lt;br&gt;
As I said, the portal uses this connection for all database access as
do a few portlets.&amp;nbsp; Hope this helps.&lt;br&gt;
Susan&lt;br&gt;
&lt;br&gt;
Curtis Garman wrote:
&lt;blockquote cite=&quot;mid:70ca076d0910161300s7f4b32b3j8d1eb10b6d910c2@mail.gmail.com&quot; type=&quot;cite&quot;&gt;
  &lt;pre wrap=&quot;&quot;&gt;Susan what version of tomcat are you guys running? I'm sure that it
has nothing to do with that at all...since the error that I am getting
is all over the internet...but I'm curious anyway. I'm playing with
6.0.20

The error I'm getting seems to indicate that I haven't clearly stated
where it should look for the connection information or that it is
ignoring the application context.xml...I'm not sure how else to
configure it...the maddening thing is that the same configuration
works on our current portal :)

On Fri, Oct 16, 2009 at 2:18 PM, Susan Bramhall &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt; wrote:
  &lt;/pre&gt;
  &lt;blockquote type=&quot;cite&quot;&gt;
    &lt;pre wrap=&quot;&quot;&gt;We've been using jndi datasources successfully ever since we went to 3.1
with no problems... We have a shared pool used by several portlets and the
portal itself.&amp;nbsp; It would be hard for us to do it without jndi since
developers don't have access to those credentials.&amp;nbsp; They are all using
Spring.&amp;nbsp; Not sure what we are doing right that others have stumbled on.
Sample snippet from a portlet context:

&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean id=&quot;dataSource&quot;
class=&quot;org.springframework.jndi.JndiObjectFactoryBean&quot;&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name=&quot;jndiName&quot; value=&quot;java:comp/env/jdbc/uPortalDB&quot;/&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/bean&amp;gt;

I'd be curious to know what your problems have been.
Susan

Eric Dalquist wrote:

This isn't very helpful for your current problem but we haven't used JNDI
managed DataSources in uPortal or our portlets since upgrading to 3.0. They
always seem to have some sort of issue and a locally declared DBCP
DataSource in the Spring app context seems to work much better.

-Eric

Curtis Garman wrote:

Since the connection pool is only used by a single portlet and there
is no need for any other webapp to see it, I placed my Resource in the
the context.xml of my application (portlet)...I had tried placing my
driver in the shared/lib too but that didn't help.

On Fri, Oct 16, 2009 at 1:06 PM, Susan Bramhall &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;
wrote:


Are you putting the jndi information in the server context.xml or in the
applicationContext.xml?&amp;nbsp; It has to be in the server context to allow all the
portlets to share the connections.&amp;nbsp; And the jdbc library has to be shared as
well.
Susan

Curtis Garman wrote:

Does anyone have experience using jndi database resources for portlets
that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
are running via jndi connection pooling in our uportal 2.6.1
environment on tomcat 5.5.25 and while they work great for 2.6.1, I
can't get the portlets to run on 3.1.1 unless I hard-code the
connection information into the portlets.  The portlets are not
spring-based at this point. I keep getting the following exception

javax.naming.NameNotFoundException: Name jdbc is not bound in this Context

My context.xml configuration is as follows

	&amp;lt;Resource name=&quot;jdbc/cancellation&quot; auth=&quot;Container&quot;
type=&quot;javax.sql.DataSource&quot;
	  username=&quot;user&quot; password=&quot;password&quot;
	  driverClassName=&quot;net.sourceforge.jtds.jdbc.Driver&quot;
url=&quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&quot;
	  maxActive=&quot;10&quot; maxIdle=&quot;5&quot; maxWait=&quot;1000&quot;
	  poolPreparedStatements=&quot;true&quot;
	  removeAbandoned=&quot;true&quot;
	  removeAbandonedTimeout=&quot;300&quot;
	  logAbandoned=&quot;true&quot;
	/&amp;gt;

I usually do not use the web.xml resource-ref...it seems to work without
it...

 &amp;lt;resource-ref&amp;gt;
      &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
      &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
      &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
      &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
  &amp;lt;/resource-ref&amp;gt;

...and it actually starts throwing a different error when I include it

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
driver of class '' for connect URL 'null'

I tried moving my context.xml to conf/Catalina/localhost and changing
the name of the file to appname.xml and this gave me yet another error

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
driver class 'net.sourceforge.jtds.jdbc.Driver'

Does anyone have any ideas?



--

Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;amp;P)
Yale University Information Technology Services (ITS)
25 Science Park, 150 Munson St, New Haven, CT 06520
Phone: &amp;nbsp;203 432 6697

--

You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
To unsubscribe, change settings or access archives, see
&lt;a class=&quot;moz-txt-link-freetext&quot; href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;




--

Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;amp;P)
Yale University Information Technology Services (ITS)
25 Science Park, 150 Munson St, New Haven, CT 06520
Phone: &amp;nbsp;203 432 6697

--

You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
To unsubscribe, change settings or access archives, see
&lt;a class=&quot;moz-txt-link-freetext&quot; href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;
    &lt;/pre&gt;
  &lt;/blockquote&gt;
  &lt;pre wrap=&quot;&quot;&gt;&lt;!----&gt;


  &lt;/pre&gt;
&lt;/blockquote&gt;
&lt;br&gt;
&lt;div class=&quot;moz-signature&quot;&gt;-- &lt;br&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; &quot;&gt;
&lt;meta name=&quot;Generator&quot; content=&quot;Microsoft Word 12 (filtered)&quot;&gt;

&lt;div class=&quot;Section1&quot;&gt;
&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;Susan Bramhall&lt;/span&gt; (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=8&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)&lt;br&gt;
Senior Developer, Infrastructure Systems and Architecture (formerly
T&amp;amp;P)&lt;br&gt;
Yale University Information Technology Services (ITS)&lt;br&gt;
25 Science Park, 150 Munson St, New Haven, CT 06520&lt;br&gt;
Phone: &amp;nbsp;203 432 6697&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=9&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25952324&amp;i=10&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/pre&gt;
&lt;/BODY&gt;
&lt;/html&gt;

&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25952324.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25940115</id>
	<title>some question about the &quot;default&quot;</title>
	<published>2009-10-17T10:06:53Z</published>
	<updated>2009-10-17T10:06:53Z</updated>
	<author>
		<name>cet6</name>
	</author>
	<content type="html">&lt;DIV&gt;In up3.1 the new user would&amp;nbsp;be added to the default group named &quot;PAGS&quot; and the new fragment owner defined in dlm.xml would&amp;nbsp;be added&amp;nbsp;to the default group named &quot;Fragment Owners&quot;&amp;nbsp;.&lt;/DIV&gt;
&lt;DIV&gt;1.What about the up2.5? And a new user must be at&amp;nbsp;a group?&lt;/DIV&gt;
&lt;DIV&gt;2.what will happen if the import done and the old data don't contain these group in up3.1? Is it defined in some properties to use the default group?&lt;/DIV&gt;
&lt;DIV&gt;3.Does the group_key of up_group_fragment&amp;nbsp;match with member_service and the member_key of up_group_membership?&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Thanks, all.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;br&gt;&lt;br&gt;&lt;span title=&quot;neteasefooter&quot; /&gt;&lt;hr /&gt;
&lt;a href=&quot;http://allyes.nie.163.com/main/adfclick?db=afanie&amp;bid=1254,611,23&amp;cid=145,4,1&amp;sid=1351&amp;show=ignore&amp;url=http://tx2.163.com/fab.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;0�����晋3D������������������������������������&lt;/a&gt;
&lt;/span&gt;
&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25940115&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25940115&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/pre&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/some-question-about-the-%22default%22-tp25940115p25940115.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25932793</id>
	<title>Re: trouble with jndi database resource, uportal     3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-16T14:41:11Z</published>
	<updated>2009-10-16T14:41:11Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">hmm...I know you have to enable jmxremote
&lt;br&gt;(-Dcom.sun.management.jmxremote) in tomcat to get the jdni resources
&lt;br&gt;to show up in probe but I'm assuming that is a specific part of
&lt;br&gt;jmx...I really don't know anything about it.
&lt;br&gt;&lt;br&gt;Also while I was peeking at jmxContext, I noticed jndiContext...any
&lt;br&gt;idea what that does?
&lt;br&gt;&lt;br&gt;On Fri, Oct 16, 2009 at 2:07 PM, Eric Dalquist
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932793&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eric.dalquist@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Actually that is somewhat helpful because I've noticed others in the
&lt;br&gt;&amp;gt; community are doing the same thing...I could easily enough convert the
&lt;br&gt;&amp;gt; before mentioned portlets to spring...however spring development
&lt;br&gt;&amp;gt; hasn't quite been sanctioned here yet. What you just said will be
&lt;br&gt;&amp;gt; helpful in lobbying for it :)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Glad to help ;)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; One reason why I am interested in using jndi over an internal pool is
&lt;br&gt;&amp;gt; because we use lamba probe to help monitor things and it provides a
&lt;br&gt;&amp;gt; nice web interface to be able to view jndi connection pools and how
&lt;br&gt;&amp;gt; many open connections there are for each. I really don't want to lose
&lt;br&gt;&amp;gt; that if possible.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You can take a look at jmxContext.xml in uPortal to see an example of using
&lt;br&gt;&amp;gt; Spring to easily expose things such as local DataSource pools via JMX. Not
&lt;br&gt;&amp;gt; sure if lamba prob can talk JMX but uPortal exposes a whole bunch of data
&lt;br&gt;&amp;gt; that way.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Another thing that makes the jndi thing problematic is that related to
&lt;br&gt;&amp;gt; another thread I started too...I set up a portlet overlay to apply all
&lt;br&gt;&amp;gt; customizations to our portlets...but it seemes to loose all
&lt;br&gt;&amp;gt; context.xml files from the META-INF directory...which obviously hurts
&lt;br&gt;&amp;gt; when using this file to link to or provide credentials to your
&lt;br&gt;&amp;gt; datasource.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does the default overlay configuration include any &amp;lt;excluded&amp;gt; paths? That
&lt;br&gt;&amp;gt; would be my first guess in diagnosing that. Perhaps add an explicit include
&lt;br&gt;&amp;gt; in the overlay config?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Fri, Oct 16, 2009 at 1:51 PM, Eric Dalquist
&lt;br&gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932793&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eric.dalquist@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This isn't very helpful for your current problem but we haven't used JNDI
&lt;br&gt;&amp;gt; managed DataSources in uPortal or our portlets since upgrading to 3.0. They
&lt;br&gt;&amp;gt; always seem to have some sort of issue and a locally declared DBCP
&lt;br&gt;&amp;gt; DataSource in the Spring app context seems to work much better.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -Eric
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Since the connection pool is only used by a single portlet and there
&lt;br&gt;&amp;gt; is no need for any other webapp to see it, I placed my Resource in the
&lt;br&gt;&amp;gt; the context.xml of my application (portlet)...I had tried placing my
&lt;br&gt;&amp;gt; driver in the shared/lib too but that didn't help.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Fri, Oct 16, 2009 at 1:06 PM, Susan Bramhall &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932793&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Are you putting the jndi information in the server context.xml or in the
&lt;br&gt;&amp;gt; applicationContext.xml?  It has to be in the server context to allow all the
&lt;br&gt;&amp;gt; portlets to share the connections.  And the jdbc library has to be shared as
&lt;br&gt;&amp;gt; well.
&lt;br&gt;&amp;gt; Susan
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does anyone have experience using jndi database resources for portlets
&lt;br&gt;&amp;gt; that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
&lt;br&gt;&amp;gt; are running via jndi connection pooling in our uportal 2.6.1
&lt;br&gt;&amp;gt; environment on tomcat 5.5.25 and while they work great for 2.6.1, I
&lt;br&gt;&amp;gt; can't get the portlets to run on 3.1.1 unless I hard-code the
&lt;br&gt;&amp;gt; connection information into the portlets. &amp;nbsp;The portlets are not
&lt;br&gt;&amp;gt; spring-based at this point. I keep getting the following exception
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; My context.xml configuration is as follows
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 	&amp;lt;Resource name=&amp;quot;jdbc/cancellation&amp;quot; auth=&amp;quot;Container&amp;quot;
&lt;br&gt;&amp;gt; type=&amp;quot;javax.sql.DataSource&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;username=&amp;quot;user&amp;quot; password=&amp;quot;password&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;driverClassName=&amp;quot;net.sourceforge.jtds.jdbc.Driver&amp;quot;
&lt;br&gt;&amp;gt; url=&amp;quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;maxActive=&amp;quot;10&amp;quot; maxIdle=&amp;quot;5&amp;quot; maxWait=&amp;quot;1000&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;poolPreparedStatements=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;removeAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;removeAbandonedTimeout=&amp;quot;300&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;logAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	/&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I usually do not use the web.xml resource-ref...it seems to work without
&lt;br&gt;&amp;gt; it...
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;lt;resource-ref&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;lt;/resource-ref&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ...and it actually starts throwing a different error when I include it
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
&lt;br&gt;&amp;gt; driver of class '' for connect URL 'null'
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I tried moving my context.xml to conf/Catalina/localhost and changing
&lt;br&gt;&amp;gt; the name of the file to appname.xml and this gave me yet another error
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
&lt;br&gt;&amp;gt; driver class 'net.sourceforge.jtds.jdbc.Driver'
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does anyone have any ideas?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932793&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
&lt;br&gt;&amp;gt; Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;P)
&lt;br&gt;&amp;gt; Yale University Information Technology Services (ITS)
&lt;br&gt;&amp;gt; 25 Science Park, 150 Munson St, New Haven, CT 06520
&lt;br&gt;&amp;gt; Phone:  203 432 6697
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932793&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932793&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932793&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932793&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25932793.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25932012</id>
	<title>RE: Evaluating uPortal</title>
	<published>2009-10-16T13:39:03Z</published>
	<updated>2009-10-16T13:39:03Z</updated>
	<author>
		<name>Dwight Raum</name>
	</author>
	<content type="html">Fang,
&lt;br&gt;&lt;br&gt;I have to agree with some of the sentiments you've expressed. &amp;nbsp;We see the era of portals as a heavy application stack coming to an end too. &amp;nbsp;As much as possible, we've modeled our implementation of uPortal (myJohnsHopkins) to minimize heavyweight dependencies, and to use uPortal as more of a lightweight container for personalization and aggregation. &amp;nbsp;To that end, here are some key things we've done:
&lt;br&gt;&lt;br&gt;* Integration: &amp;nbsp;We rely heavily upon existing services within the enterprise -- this includes our enterprise directory, groups management (Active Directory), content management (SiteExecutive), institutional calendar (ActiveData Calendar), and SSO (CA SiteMinder). &amp;nbsp;uPortal is pretty good at doing this, especially on the directory side of things. &amp;nbsp;We have configured the SmartLdapGroupStore against our Active Directory, and we also use PAGS extensively for dynamic group mappings, and as a result have become largely independent of uPortal's local groups management structures altogether.
&lt;br&gt;&lt;br&gt;Also, we pretty much avoid using proper JSR-168 portlets, particularly since they must live within the same JVM as uPortal. &amp;nbsp;Early on we experienced stability problems with the uPortal environment due to independent issues within a specific homegrown portlet. &amp;nbsp;This lack of compartmentalization between the portal and portlets is significant, and affects not only reliability but also scalability.
&lt;br&gt;&lt;br&gt;Instead, we make extensive use of the WebProxy portlet -- this is absolutely key to our content and apps strategy. &amp;nbsp;We've developed a custom pre-interceptor for WebProxyPortlet to pass along person-attributes through the proxied requests. &amp;nbsp;The reliance on WebProxyPortlet also allows us to scale our apps and content their source. &amp;nbsp;There is still burden on uPortal to personalize and aggregate, but a resource intensive application has little effect on the overall performance of uPortal. &amp;nbsp;The tradeoffs are that apps are not intimately intertwined with the portal stack, and can be 'limited' in their UI. &amp;nbsp;By devolving our content/apps to most basic forms, we've effectively diminished our dependencies so we're not 'locked' into a portal framework.
&lt;br&gt;&lt;br&gt;* Delegated administration: &amp;nbsp;Hopkins is a very decentralized place -- apps and content are administered all over the place. &amp;nbsp;It would be impossible, organizationally, to centralize administration of content for our audiences. &amp;nbsp;With the Portal, our ultimate end goal is to pass off the drudgeries of simple content and layout management to non-technical &amp;quot;content owners&amp;quot; of each sub-section within our portal. &amp;nbsp;Because we're trying to leverage our existing services for directory, groupings, apps and content, it made little sense to pull their administration into uPortal. &amp;nbsp;Our constituent services already have a reasonable set of tools for delegated administration, and by relying on them to provide their services to uPortal we've sidestepped some administration issues. &amp;nbsp;One area where we couldn't sidestep uPortal is DLM Fragment Administration; however, working with Unicon we've implemented tools within uPortal that allow for better delegated management. &amp;nbsp;These tools are used extensively by our communities to manage and maintain their respective areas of myJohnsHopkins.
&lt;br&gt;&lt;br&gt;* URL based personalization: Since we're so decentralized, we've extended our single instance of uPortal to support multiple identities. &amp;nbsp;So for example:
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://my.jhmi.edu&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://my.jhmi.edu&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://my.jhu.edu&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://my.jhu.edu&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://insider.sais-jhu.edu&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://insider.sais-jhu.edu&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://myep.jhu.edu&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://myep.jhu.edu&lt;/a&gt;&lt;br&gt;These are all actually part of the same instance of uPortal, but the environment is flexible enough that we can deliver a unique experience based upon entry URL. &amp;nbsp;We also employ uPortal template users to dynamically apply the initial user skin setting derived from enterprise directory data.
&lt;br&gt;&lt;br&gt;So, like many technology answers &amp;quot;it depends&amp;quot;. &amp;nbsp;We've been very successful in using uPortal as a lightweight framework to personalize and aggregate content &amp; applications. &amp;nbsp;We also have a lot of the services necessary to implement a portal in our environment, and little desire to re-invent the wheel. &amp;nbsp;The model for personalization and use of groups for uPortal is quite good, and when coupled with delegation is incredibly powerful.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;&lt;br&gt;Dwight Raum
&lt;br&gt;Director Enterprise Services, Johns Hopkins
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;draum@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8018404-5729417@...&lt;/a&gt; [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8018404-5729417@...&lt;/a&gt;] On Behalf Of Fang Lin
&lt;br&gt;Sent: Wednesday, October 14, 2009 1:12 PM
&lt;br&gt;To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt;
&lt;br&gt;Subject: RE: [uportal-user] Evaluating uPortal
&lt;br&gt;&lt;br&gt;Gary,
&lt;br&gt;&lt;br&gt;Personally I do have some concerns about how long the conventional enterprise web portal will last. UW just adopted Google Apps Education Edition (GAEE). We did a brief investigation to see if iGoogle can be used as the portal platform; it is summarized below:
&lt;br&gt;&lt;br&gt;&amp;quot;GAEE has no conventional enterprise portal. Alternatively, Google Sites are where we present personalized contents to users and have total control of the user interface. The personal contents are delivered on Google Sites via Google Gadgets, which may be further configured by the users. The users may add the gadgets onto their iGoogle pages where they have the total control. But users can not change the layout of the Google Sites.
&lt;br&gt;Google Sites can be configured to allow only authorized users to access to the content and gadgets.&amp;quot;
&lt;br&gt;&lt;br&gt;When we finish our evaluation we will be happy to share our report here.
&lt;br&gt;&lt;br&gt;Warm regards,
&lt;br&gt;-Fang
&lt;br&gt;&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8017258-5729242@...&lt;/a&gt; [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8017258-5729242@...&lt;/a&gt;] On Behalf Of Gary Weaver
&lt;br&gt;Sent: Wednesday, October 14, 2009 7:42 AM
&lt;br&gt;To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt;
&lt;br&gt;Subject: Re: [uportal-user] Evaluating uPortal
&lt;br&gt;&lt;br&gt;Fang,
&lt;br&gt;&lt;br&gt;Glad that helped. I definitely was not suggesting for UW to abandon the
&lt;br&gt;concept of a portal. I was just trying to present both sides. Thanks for
&lt;br&gt;passing on the great post by Oren!
&lt;br&gt;&lt;br&gt;The less people that people talk about something, the more that people
&lt;br&gt;will think it is not worth talking about. It would be great to hear some
&lt;br&gt;feedback on what the rest of the Jasig community thinks about uPortal
&lt;br&gt;vs. Liferay vs. other portals. Perhaps this could help identify
&lt;br&gt;features/enhancements that might benefit from more focus of development
&lt;br&gt;over others. I could be wrong though.
&lt;br&gt;&lt;br&gt;Take care,
&lt;br&gt;&lt;br&gt;Gary
&lt;br&gt;&lt;br&gt;&lt;br&gt;Fang Lin wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi Gray,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I will share your inputs with my team, thank you!!
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On UW campus there are still a lot of expectations on the conventional enterprise web portal. It seems too early to let go with it.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; We also realize that the portal won't meet all the needs. See Oren Sreebny's blog:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://blog.orenblog.org/2009/10/12/take-out-or-dine-in-considering-the-future-of-the-enterprise-portal/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://blog.orenblog.org/2009/10/12/take-out-or-dine-in-considering-the-future-of-the-enterprise-portal/&lt;/a&gt;&amp;nbsp;and comments made by David Lassner, CIO of University of Hawaii, and &amp;nbsp;Cliff Frost, their chief tech architect.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -Fang
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -----Original Message-----
&lt;br&gt;&amp;gt; From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8011050-5729242@...&lt;/a&gt; [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=8&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bounce-8011050-5729242@...&lt;/a&gt;] On Behalf Of Gary Weaver
&lt;br&gt;&amp;gt; Sent: Tuesday, October 13, 2009 7:37 AM
&lt;br&gt;&amp;gt; To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=9&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Cc: Janice C. Granberg; Leman Chung
&lt;br&gt;&amp;gt; Subject: Re: [uportal-user] Evaluating uPortal
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Fang,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Here is a comparison (I'm not an expert on either, but this is what I've
&lt;br&gt;&amp;gt; noticed- others please jump in if I've left out anything or if what I'm
&lt;br&gt;&amp;gt; saying is incorrect):
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; uPortal
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Miscellaneous:
&lt;br&gt;&amp;gt; * By default uPortal uses CAS for authN. Some info for how to get
&lt;br&gt;&amp;gt; Shibboleth setup is here:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPM31/03+Shibboleth&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPM31/03+Shibboleth&lt;/a&gt;&amp;nbsp;and James Hong is
&lt;br&gt;&amp;gt; the last one to indicate that he Shibbolized a recent version. We plan
&lt;br&gt;&amp;gt; to eventually move to uP 3.1.1 (or later) and shibbolize it, but I just
&lt;br&gt;&amp;gt; did a quick spike (test) of shibbing it (I wasn't able to keep it from
&lt;br&gt;&amp;gt; hitting Login even on the guest view, but I'm guessing I was doing
&lt;br&gt;&amp;gt; something wrong). If you have any trouble Shibbolizing, let the list
&lt;br&gt;&amp;gt; know and maybe James can assist.
&lt;br&gt;&amp;gt; * uPortal has handful of portlets &amp;quot;under its wing&amp;quot; here:
&lt;br&gt;&amp;gt; &lt;a href=&quot;https://www.ja-sig.org/svn/portlets/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://www.ja-sig.org/svn/portlets/&lt;/a&gt;&lt;br&gt;&amp;gt; (note that not all of the portlets in the list at
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.jasig.org/portlets&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.jasig.org/portlets&lt;/a&gt;&amp;nbsp;are functional/have been tested in uPortal
&lt;br&gt;&amp;gt; 3.1.1, but I assume the ones in &lt;a href=&quot;https://www.ja-sig.org/svn/portlets/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://www.ja-sig.org/svn/portlets/&lt;/a&gt;&lt;br&gt;&amp;gt; have although I'm not sure totally. There are also a few built-in to the
&lt;br&gt;&amp;gt; uPortal codebase itself (for administration, etc.).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Pros:
&lt;br&gt;&amp;gt; * Community is more University/school focused: I think there are many
&lt;br&gt;&amp;gt; more universities/schools using uPortal vs. those using Liferay, but it
&lt;br&gt;&amp;gt; not strictly used by universities.
&lt;br&gt;&amp;gt; * Has a Jasig portlet adoption process so that if you do contribute
&lt;br&gt;&amp;gt; something that you can help get to the point where it meets standards
&lt;br&gt;&amp;gt; (including being Apache-licensed), you should have some help in
&lt;br&gt;&amp;gt; maintaining it.
&lt;br&gt;&amp;gt; * Works closely with Fluid group, so there is innovation in development
&lt;br&gt;&amp;gt; of UI that first was shown in uP 3.1.
&lt;br&gt;&amp;gt; * CAS is built-in. Since many use CAS, this is good for them!
&lt;br&gt;&amp;gt; * Webproxy portlet can be used to share existing/new web applications
&lt;br&gt;&amp;gt; and web content in the portal (but you'd need to use CSS classes
&lt;br&gt;&amp;gt; implemented in your uPortal skin(s)).
&lt;br&gt;&amp;gt; * They offer free use of their Jira, Confluence, and Subversion for
&lt;br&gt;&amp;gt; portlet and uPortal-related project development and community frequently
&lt;br&gt;&amp;gt; will work together on portlets.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cons:
&lt;br&gt;&amp;gt; * Not fully up-to-date on latest portlet standard: Although support was
&lt;br&gt;&amp;gt; added in preparation for JSR-286, the latest release version of uPortal
&lt;br&gt;&amp;gt; still uses JSR-168.
&lt;br&gt;&amp;gt; * Upgrades are non-trivial: Upgrades have been stated to be non-trivial
&lt;br&gt;&amp;gt; and probably will run into things that are not-documented, but recently
&lt;br&gt;&amp;gt; code was provided that should assist greatly in uP 2.5.3 and uP 2.6.1
&lt;br&gt;&amp;gt; upgrades to uPortal 3.x, and the community and developers are willing to
&lt;br&gt;&amp;gt; assist.
&lt;br&gt;&amp;gt; * Configuration/Usage/Development may be more difficult: From what I
&lt;br&gt;&amp;gt; read and hear from others, uPortal is just more difficult to use than
&lt;br&gt;&amp;gt; Liferay, however there is much greater support from the uPortal
&lt;br&gt;&amp;gt; community to help you through it.
&lt;br&gt;&amp;gt; * CAS is built-in. If you don't use CAS, it might not be as well-tested
&lt;br&gt;&amp;gt; with your type of authN.
&lt;br&gt;&amp;gt; * Wiki documentation is sometimes out-of-date and lacking. They welcome
&lt;br&gt;&amp;gt; anyone to assist with documentation that wants to help though.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Liferay:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Pros:
&lt;br&gt;&amp;gt; * Sun contributes to Liferay (Sun basically gave up with OpenPortal
&lt;br&gt;&amp;gt; project and took on Liferay).
&lt;br&gt;&amp;gt; * The latest release version of Liferay uses the latest portlet spec JSR286.
&lt;br&gt;&amp;gt; * Default portal is pretty slick/feels polished: while the UI of uPortal
&lt;br&gt;&amp;gt; quickstart has certainly greatly improved, Liferay's default
&lt;br&gt;&amp;gt; version/skin/UI of the portal feels more polished. However, this
&lt;br&gt;&amp;gt; probably doesn't mean much because you will end up needing to reskin it
&lt;br&gt;&amp;gt; for your implementation.
&lt;br&gt;&amp;gt; * There is a project for those interested in developing portlets using
&lt;br&gt;&amp;gt; JRuby on Rails (but it is Liferay and JSR-286 specific even though they
&lt;br&gt;&amp;gt; welcome development to make it work with other portals):
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://rails-portlet.rubyforge.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://rails-portlet.rubyforge.org/&lt;/a&gt;&lt;br&gt;&amp;gt; * There is a project for those interested in developing portlets using
&lt;br&gt;&amp;gt; Grails (may be is Liferay specific and I think still only supports
&lt;br&gt;&amp;gt; JSR-168): &lt;a href=&quot;http://grails.org/plugin/portlets&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://grails.org/plugin/portlets&lt;/a&gt;&lt;br&gt;&amp;gt; * There are probably more portlets available in Liferay and I think they
&lt;br&gt;&amp;gt; have more developers working on the project and more users, but am not sure.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cons:
&lt;br&gt;&amp;gt; * Community is less university/school focused
&lt;br&gt;&amp;gt; * CAS not built-in (if you are using CAS).
&lt;br&gt;&amp;gt; * Community/forums not nearly as helpful for universities or in-general
&lt;br&gt;&amp;gt; as responsive at getting people up-to-speed (at least that is from what
&lt;br&gt;&amp;gt; I hear. I can say for certain that the uPortal developers and community
&lt;br&gt;&amp;gt; are very helpful.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Unsure:
&lt;br&gt;&amp;gt; * Don't know anything about ease of Liferay upgrades.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Pros of both uPortal and Liferay:
&lt;br&gt;&amp;gt; * Both portals are Java-based: Integration with existing/new Java
&lt;br&gt;&amp;gt; libraries is easier. Since Java has a very large userbase and there is a
&lt;br&gt;&amp;gt; lot written in Java, you can develop portlets to do just about anything
&lt;br&gt;&amp;gt; you can think of and reuse existing libraries from Apache/Jakarta,
&lt;br&gt;&amp;gt; Sourceforge, Codehaus, Springsource, Hibernate, etc. along with plugins
&lt;br&gt;&amp;gt; for Maven 2, tasks for Ant, etc.
&lt;br&gt;&amp;gt; * Both are standards-based and have active development and user communities.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cons of both uPortal and Liferay:
&lt;br&gt;&amp;gt; * Portals in-general aren't as hot as they were years ago. There has
&lt;br&gt;&amp;gt; been a lot of movement towards applications that make it easier to
&lt;br&gt;&amp;gt; publish communication (Confluence/MediaWiki, Drupal/Joomla) or just in
&lt;br&gt;&amp;gt; web applications that are faster to develop ((J/C)Ruby on Rails, etc.).
&lt;br&gt;&amp;gt; However, there is still a place for them and the ability for users to
&lt;br&gt;&amp;gt; customize them and what content they see is a great asset, and as long
&lt;br&gt;&amp;gt; as you focus on continuing to provide things that the users actually
&lt;br&gt;&amp;gt; want and need (even things outside of the institution's normal realm),
&lt;br&gt;&amp;gt; the implementation will likely do well.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Hope that helps,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Gary
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Fang Lin wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Dear uPortal Community,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; At University of Washington we are about to start an evaluation
&lt;br&gt;&amp;gt;&amp;gt; project of portal frameworks as the replacement of our home-grown
&lt;br&gt;&amp;gt;&amp;gt; portal &amp;nbsp;&lt;a href=&quot;http://myuw.washington.edu/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://myuw.washington.edu/&lt;/a&gt;). &amp;nbsp;The two candidates that will be
&lt;br&gt;&amp;gt;&amp;gt; evaluated are uPortal 3.1.1 and Liferay 5.2.5. We would be very
&lt;br&gt;&amp;gt;&amp;gt; grateful if folks have gone through the portal evaluation process can
&lt;br&gt;&amp;gt;&amp;gt; provide some advices.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Our implementation platform will be Linux, Apache, Tomcat or Jetty,
&lt;br&gt;&amp;gt;&amp;gt; and the Shibboleth SP software for SSO support. &amp;nbsp;Should we set up the
&lt;br&gt;&amp;gt;&amp;gt; evaluation portal using the portal only installation or the Quick
&lt;br&gt;&amp;gt;&amp;gt; Start version? What might be the limitations of using the Quick Start
&lt;br&gt;&amp;gt;&amp;gt; version for evaluation?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Has there been any comparative analysis of uPortal 3.x with Liferay 5.x?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Thanks!
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Fang Lin
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Email: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=10&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;fanglin@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; UW Technology, University of Washington
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; --
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=11&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=12&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary.weaver@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt; To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=13&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=14&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;fanglin@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ---
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=15&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=16&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary.weaver@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;---
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=17&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=18&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;fanglin@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;---
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=19&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=20&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;draum@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=21&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25932012&amp;i=22&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Evaluating-uPortal-tp25864895p25932012.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25931444</id>
	<title>Re: trouble with jndi database resource, uportal     3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-16T13:00:01Z</published>
	<updated>2009-10-16T13:00:01Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">Susan what version of tomcat are you guys running? I'm sure that it
&lt;br&gt;has nothing to do with that at all...since the error that I am getting
&lt;br&gt;is all over the internet...but I'm curious anyway. I'm playing with
&lt;br&gt;6.0.20
&lt;br&gt;&lt;br&gt;The error I'm getting seems to indicate that I haven't clearly stated
&lt;br&gt;where it should look for the connection information or that it is
&lt;br&gt;ignoring the application context.xml...I'm not sure how else to
&lt;br&gt;configure it...the maddening thing is that the same configuration
&lt;br&gt;works on our current portal :)
&lt;br&gt;&lt;br&gt;On Fri, Oct 16, 2009 at 2:18 PM, Susan Bramhall &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931444&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; We've been using jndi datasources successfully ever since we went to 3.1
&lt;br&gt;&amp;gt; with no problems... We have a shared pool used by several portlets and the
&lt;br&gt;&amp;gt; portal itself.  It would be hard for us to do it without jndi since
&lt;br&gt;&amp;gt; developers don't have access to those credentials.  They are all using
&lt;br&gt;&amp;gt; Spring.  Not sure what we are doing right that others have stumbled on.
&lt;br&gt;&amp;gt; Sample snippet from a portlet context:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;     &amp;lt;bean id=&amp;quot;dataSource&amp;quot;
&lt;br&gt;&amp;gt; class=&amp;quot;org.springframework.jndi.JndiObjectFactoryBean&amp;quot;&amp;gt;
&lt;br&gt;&amp;gt;         &amp;lt;property name=&amp;quot;jndiName&amp;quot; value=&amp;quot;java:comp/env/jdbc/uPortalDB&amp;quot;/&amp;gt;
&lt;br&gt;&amp;gt;     &amp;lt;/bean&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I'd be curious to know what your problems have been.
&lt;br&gt;&amp;gt; Susan
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Eric Dalquist wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This isn't very helpful for your current problem but we haven't used JNDI
&lt;br&gt;&amp;gt; managed DataSources in uPortal or our portlets since upgrading to 3.0. They
&lt;br&gt;&amp;gt; always seem to have some sort of issue and a locally declared DBCP
&lt;br&gt;&amp;gt; DataSource in the Spring app context seems to work much better.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -Eric
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Since the connection pool is only used by a single portlet and there
&lt;br&gt;&amp;gt; is no need for any other webapp to see it, I placed my Resource in the
&lt;br&gt;&amp;gt; the context.xml of my application (portlet)...I had tried placing my
&lt;br&gt;&amp;gt; driver in the shared/lib too but that didn't help.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Fri, Oct 16, 2009 at 1:06 PM, Susan Bramhall &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931444&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Are you putting the jndi information in the server context.xml or in the
&lt;br&gt;&amp;gt; applicationContext.xml?  It has to be in the server context to allow all the
&lt;br&gt;&amp;gt; portlets to share the connections.  And the jdbc library has to be shared as
&lt;br&gt;&amp;gt; well.
&lt;br&gt;&amp;gt; Susan
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does anyone have experience using jndi database resources for portlets
&lt;br&gt;&amp;gt; that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
&lt;br&gt;&amp;gt; are running via jndi connection pooling in our uportal 2.6.1
&lt;br&gt;&amp;gt; environment on tomcat 5.5.25 and while they work great for 2.6.1, I
&lt;br&gt;&amp;gt; can't get the portlets to run on 3.1.1 unless I hard-code the
&lt;br&gt;&amp;gt; connection information into the portlets. &amp;nbsp;The portlets are not
&lt;br&gt;&amp;gt; spring-based at this point. I keep getting the following exception
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; My context.xml configuration is as follows
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 	&amp;lt;Resource name=&amp;quot;jdbc/cancellation&amp;quot; auth=&amp;quot;Container&amp;quot;
&lt;br&gt;&amp;gt; type=&amp;quot;javax.sql.DataSource&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;username=&amp;quot;user&amp;quot; password=&amp;quot;password&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;driverClassName=&amp;quot;net.sourceforge.jtds.jdbc.Driver&amp;quot;
&lt;br&gt;&amp;gt; url=&amp;quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;maxActive=&amp;quot;10&amp;quot; maxIdle=&amp;quot;5&amp;quot; maxWait=&amp;quot;1000&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;poolPreparedStatements=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;removeAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;removeAbandonedTimeout=&amp;quot;300&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;logAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	/&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I usually do not use the web.xml resource-ref...it seems to work without
&lt;br&gt;&amp;gt; it...
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;lt;resource-ref&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;lt;/resource-ref&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ...and it actually starts throwing a different error when I include it
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
&lt;br&gt;&amp;gt; driver of class '' for connect URL 'null'
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I tried moving my context.xml to conf/Catalina/localhost and changing
&lt;br&gt;&amp;gt; the name of the file to appname.xml and this gave me yet another error
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
&lt;br&gt;&amp;gt; driver class 'net.sourceforge.jtds.jdbc.Driver'
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does anyone have any ideas?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931444&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
&lt;br&gt;&amp;gt; Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;P)
&lt;br&gt;&amp;gt; Yale University Information Technology Services (ITS)
&lt;br&gt;&amp;gt; 25 Science Park, 150 Munson St, New Haven, CT 06520
&lt;br&gt;&amp;gt; Phone:  203 432 6697
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931444&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931444&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931444&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
&lt;br&gt;&amp;gt; Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;P)
&lt;br&gt;&amp;gt; Yale University Information Technology Services (ITS)
&lt;br&gt;&amp;gt; 25 Science Park, 150 Munson St, New Haven, CT 06520
&lt;br&gt;&amp;gt; Phone:  203 432 6697
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931444&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931444&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931444&amp;i=8&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931444&amp;i=9&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25931444.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25931281</id>
	<title>Re: trouble with jndi database resource, uportal     3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-16T12:48:10Z</published>
	<updated>2009-10-16T12:48:10Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">It's quite possible that I missed something. I attached one of my
&lt;br&gt;overlay pom.xml files...there is nothing to it. I found a page Jen
&lt;br&gt;Bourey and Susan created and looked at how the other overlay portlets
&lt;br&gt;were set up. I assumed that since the only thing I'm &amp;nbsp;really
&lt;br&gt;overriding anything is my log4j.properties file that everything in
&lt;br&gt;META-INF should be copied from the war file dependency
&lt;br&gt;&lt;br&gt;Curtis
&lt;br&gt;&lt;br&gt;On Fri, Oct 16, 2009 at 2:07 PM, Eric Dalquist
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931281&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eric.dalquist@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Actually that is somewhat helpful because I've noticed others in the
&lt;br&gt;&amp;gt; community are doing the same thing...I could easily enough convert the
&lt;br&gt;&amp;gt; before mentioned portlets to spring...however spring development
&lt;br&gt;&amp;gt; hasn't quite been sanctioned here yet. What you just said will be
&lt;br&gt;&amp;gt; helpful in lobbying for it :)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Glad to help ;)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; One reason why I am interested in using jndi over an internal pool is
&lt;br&gt;&amp;gt; because we use lamba probe to help monitor things and it provides a
&lt;br&gt;&amp;gt; nice web interface to be able to view jndi connection pools and how
&lt;br&gt;&amp;gt; many open connections there are for each. I really don't want to lose
&lt;br&gt;&amp;gt; that if possible.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You can take a look at jmxContext.xml in uPortal to see an example of using
&lt;br&gt;&amp;gt; Spring to easily expose things such as local DataSource pools via JMX. Not
&lt;br&gt;&amp;gt; sure if lamba prob can talk JMX but uPortal exposes a whole bunch of data
&lt;br&gt;&amp;gt; that way.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Another thing that makes the jndi thing problematic is that related to
&lt;br&gt;&amp;gt; another thread I started too...I set up a portlet overlay to apply all
&lt;br&gt;&amp;gt; customizations to our portlets...but it seemes to loose all
&lt;br&gt;&amp;gt; context.xml files from the META-INF directory...which obviously hurts
&lt;br&gt;&amp;gt; when using this file to link to or provide credentials to your
&lt;br&gt;&amp;gt; datasource.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does the default overlay configuration include any &amp;lt;excluded&amp;gt; paths? That
&lt;br&gt;&amp;gt; would be my first guess in diagnosing that. Perhaps add an explicit include
&lt;br&gt;&amp;gt; in the overlay config?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Fri, Oct 16, 2009 at 1:51 PM, Eric Dalquist
&lt;br&gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931281&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eric.dalquist@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This isn't very helpful for your current problem but we haven't used JNDI
&lt;br&gt;&amp;gt; managed DataSources in uPortal or our portlets since upgrading to 3.0. They
&lt;br&gt;&amp;gt; always seem to have some sort of issue and a locally declared DBCP
&lt;br&gt;&amp;gt; DataSource in the Spring app context seems to work much better.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -Eric
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Since the connection pool is only used by a single portlet and there
&lt;br&gt;&amp;gt; is no need for any other webapp to see it, I placed my Resource in the
&lt;br&gt;&amp;gt; the context.xml of my application (portlet)...I had tried placing my
&lt;br&gt;&amp;gt; driver in the shared/lib too but that didn't help.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Fri, Oct 16, 2009 at 1:06 PM, Susan Bramhall &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931281&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Are you putting the jndi information in the server context.xml or in the
&lt;br&gt;&amp;gt; applicationContext.xml?  It has to be in the server context to allow all the
&lt;br&gt;&amp;gt; portlets to share the connections.  And the jdbc library has to be shared as
&lt;br&gt;&amp;gt; well.
&lt;br&gt;&amp;gt; Susan
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does anyone have experience using jndi database resources for portlets
&lt;br&gt;&amp;gt; that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
&lt;br&gt;&amp;gt; are running via jndi connection pooling in our uportal 2.6.1
&lt;br&gt;&amp;gt; environment on tomcat 5.5.25 and while they work great for 2.6.1, I
&lt;br&gt;&amp;gt; can't get the portlets to run on 3.1.1 unless I hard-code the
&lt;br&gt;&amp;gt; connection information into the portlets. &amp;nbsp;The portlets are not
&lt;br&gt;&amp;gt; spring-based at this point. I keep getting the following exception
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; My context.xml configuration is as follows
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 	&amp;lt;Resource name=&amp;quot;jdbc/cancellation&amp;quot; auth=&amp;quot;Container&amp;quot;
&lt;br&gt;&amp;gt; type=&amp;quot;javax.sql.DataSource&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;username=&amp;quot;user&amp;quot; password=&amp;quot;password&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;driverClassName=&amp;quot;net.sourceforge.jtds.jdbc.Driver&amp;quot;
&lt;br&gt;&amp;gt; url=&amp;quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;maxActive=&amp;quot;10&amp;quot; maxIdle=&amp;quot;5&amp;quot; maxWait=&amp;quot;1000&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;poolPreparedStatements=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;removeAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;removeAbandonedTimeout=&amp;quot;300&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;logAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	/&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I usually do not use the web.xml resource-ref...it seems to work without
&lt;br&gt;&amp;gt; it...
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;lt;resource-ref&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;lt;/resource-ref&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ...and it actually starts throwing a different error when I include it
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
&lt;br&gt;&amp;gt; driver of class '' for connect URL 'null'
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I tried moving my context.xml to conf/Catalina/localhost and changing
&lt;br&gt;&amp;gt; the name of the file to appname.xml and this gave me yet another error
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
&lt;br&gt;&amp;gt; driver class 'net.sourceforge.jtds.jdbc.Driver'
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does anyone have any ideas?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931281&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
&lt;br&gt;&amp;gt; Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;P)
&lt;br&gt;&amp;gt; Yale University Information Technology Services (ITS)
&lt;br&gt;&amp;gt; 25 Science Park, 150 Munson St, New Haven, CT 06520
&lt;br&gt;&amp;gt; Phone:  203 432 6697
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931281&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931281&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931281&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931281&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br /&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;
&lt;br&gt;&amp;lt;project xmlns=&amp;quot;&lt;a href=&quot;http://maven.apache.org/POM/4.0.0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://maven.apache.org/POM/4.0.0&lt;/a&gt;&amp;quot; xmlns:xsi=&amp;quot;&lt;a href=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.w3.org/2001/XMLSchema-instance&lt;/a&gt;&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; xsi:schemaLocation=&amp;quot;&lt;a href=&quot;http://maven.apache.org/POM/4.0.0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://maven.apache.org/POM/4.0.0&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://maven.apache.org/maven-v4_0_0.xsd&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://maven.apache.org/maven-v4_0_0.xsd&lt;/a&gt;&amp;quot;&amp;gt;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;parent&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;groupId&amp;gt;org.jasig.portal.portlets-overlay&amp;lt;/groupId&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;artifactId&amp;gt;uportal-portlets-overlay-parent&amp;lt;/artifactId&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;version&amp;gt;3.1.1&amp;lt;/version&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/parent&amp;gt;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;modelVersion&amp;gt;4.0.0&amp;lt;/modelVersion&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;artifactId&amp;gt;heartland-text-portlet&amp;lt;/artifactId&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;packaging&amp;gt;war&amp;lt;/packaging&amp;gt;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;name&amp;gt;heartland-text-portlet&amp;lt;/name&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;description&amp;gt;Overlay on heartland-text-portlet.&amp;lt;/description&amp;gt;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;dependencies&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;dependency&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;groupId&amp;gt;edu.heartland.portlet&amp;lt;/groupId&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;artifactId&amp;gt;heartland-text-portlet&amp;lt;/artifactId&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;version&amp;gt;${heartland.text.portlet.version}&amp;lt;/version&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;type&amp;gt;war&amp;lt;/type&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/dependency&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/dependencies&amp;gt;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;build&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;plugins&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;plugin&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;groupId&amp;gt;org.apache.pluto&amp;lt;/groupId&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;artifactId&amp;gt;maven-pluto-plugin&amp;lt;/artifactId&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/plugin&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/plugins&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/build&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;lt;/project&amp;gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25931281.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25931057</id>
	<title>Re:[jasig-ue] portlet UI design guidelines?</title>
	<published>2009-10-16T12:31:47Z</published>
	<updated>2009-10-16T12:31:47Z</updated>
	<author>
		<name>Gary Thompson-4</name>
	</author>
	<content type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;div style='font-family: Verdana; font-size: 12pt; color: #000000'&gt;&lt;div style=&quot;font-family: Verdana; font-size: 12pt; color: rgb(0, 0, 0);&quot;&gt;&lt;div style=&quot;font-family: Verdana; font-size: 12pt; color: rgb(0, 0, 0);&quot;&gt;&lt;div style=&quot;font-family: Verdana; font-size: 12pt; color: rgb(0, 0, 0);&quot;&gt;Gary,&lt;br&gt;&lt;br&gt;(Great name, BTW.)&lt;br&gt;&lt;br&gt;I am glad you asked.&amp;nbsp; Having standards for portlet markup and CSS is significant in developing portlets efficiently and that result in good user experiences.&amp;nbsp; &lt;br&gt;&lt;br&gt;In developing the new &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/Portlet+Administration+Portlet&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;Portlet Administration&lt;/a&gt; (PA) portlet user experience for uPortal via Unicon's &lt;a href=&quot;http://www.unicon.net/support/cooperative&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;Cooperative Support program&lt;/a&gt;, I had the opportunity to give some focused thought and attention to such standards.&amp;nbsp; The results of that work are built into the PA portlet and documented (to some degree) here:&lt;br&gt;&lt;br&gt;* &lt;span class=&quot;Object&quot; id=&quot;OBJ_PREFIX_DWT540&quot;&gt;&lt;span class=&quot;Object&quot; id=&quot;OBJ_PREFIX_DWT541&quot;&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://www.ja-sig.org/wiki/display/UPC/User+Interface&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/User+Interface&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br&gt;* &lt;span class=&quot;Object&quot; id=&quot;OBJ_PREFIX_DWT542&quot;&gt;&lt;span class=&quot;Object&quot; id=&quot;OBJ_PREFIX_DWT543&quot;&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://www.ja-sig.org/wiki/display/UPC/Markup+and+CSS+Naming+Conventions&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/Markup+and+CSS+Naming+Conventions&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br&gt;* &lt;span class=&quot;Object&quot; id=&quot;OBJ_PREFIX_DWT544&quot;&gt;&lt;span class=&quot;Object&quot; id=&quot;OBJ_PREFIX_DWT545&quot;&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://www.ja-sig.org/wiki/display/UPC/Portlet+Markup+Template&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/UPC/Portlet+Markup+Template&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br&gt;&lt;br&gt;It's not perfect, but it's a start.&amp;nbsp; Please feel empowered and encouraged to contribute to refining it.&lt;br&gt;&lt;br&gt;Let me summarize a few high-level strategic thoughts and then try to answer a few of your more specific, tactical questions around the Mail portlet.&lt;br&gt;&lt;br&gt;S1. JSR-168 CSS specification&lt;br&gt;Having many years of both broad and deep involvement in portal and portlet user interface design and development, my assessment is that the &lt;a href=&quot;http://www.ja-sig.org/wiki/display/UPC/JSR-168+PLT.C+CSS+Style+Definitions&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;JSR-168 portlet CSS specification&lt;/a&gt; is poorly designed, poorly defined, and woefully inadequate for modern portlet development.&amp;nbsp; It also has not been updated in many years.&amp;nbsp; This results in it being mostly useless as a standard, and therefore not worthy of significant effort to maintain as such in the Jasig community.&amp;nbsp; For clarification, I am speaking of the CSS part of the JSR-168 specification, not the specification as a whole.&amp;nbsp; Having concluded that it is a poor markup/CSS standard, that is not to say that it should be totally ignored or discarded - it is indeed still in use in uPortal and a few parts of it are usable.&amp;nbsp; However, as a community we cannot base current and future efforts on it - it is not sufficient.&lt;br&gt;&lt;br&gt;S2. Portlet user interface spans major releases of uPortal&lt;br&gt;I admire your efforts to achieve this, however I believe that you will find this effort not worthwhile when speaking of 2.5.x and 3.1.x.&amp;nbsp; Especially in regards to the user interface layer, the differences between the two releases are rather un-spannable.&amp;nbsp; Not impossible, but probably not worth the effort.&amp;nbsp; I'll demonstrate this below in regards to your question about converting an unordered list into tabs.&amp;nbsp; My recommendation is to press forward where possible - in most senses, uPortal and Jasig portlets are only now beginning to achieve the user experience standards that are prevalent conventions (and continuing to press forward) in the Web.&amp;nbsp; We need not abandon the past, but we do need to press forward - that is where most of our energy and effort needs to be for our portal and portlets to remain viable.&lt;br&gt;&lt;br&gt;S3. As much as we are able, let's not create our own standard&lt;br&gt;We can't sustain it, and if isolated to Jasig/uPortal, that doesn't make it much of a standard.&amp;nbsp; However, I am of the opinion that Jasig should and must set some standards in this area where other standards are not sufficient.&amp;nbsp; I am also of the opinion that where possible, we should push those needs into other open standards, like Fluid (see next).&lt;br&gt;&lt;br&gt;S4. Fluid Skinning System&lt;br&gt;Incorporated into uPortal 3.1.x, the &lt;a href=&quot;http://wiki.fluidproject.org/x/96M7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Fluid Skinning System&lt;/a&gt; is a CSS standard that uPortal (and Sakai, and several newer portlets) have adopted.&amp;nbsp; Fluid also has a growing component library of many useful user interface &quot;widgets&quot; like &lt;a href=&quot;http://wiki.fluidproject.org/x/PAAF&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Pagers, Reorderers, and Inline Editors&lt;/a&gt;.&amp;nbsp; The &lt;a href=&quot;http://fluidproject.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Fluid Project community&lt;/a&gt; is a well-balanced mix of both designers and developers, and their processes result in friendly frameworks that accomplish modern best practices in programming, usability, and accessibility.&amp;nbsp; As a Fluid Project community participant and member, and hands-on user of the FSS, I can say that from personal experience.&amp;nbsp; Since the community is active and growing, the Jasig community is welcome and encouraged to participate in the growth of the standard, yet does not have to solely bear the burden of maintaining the standard.&amp;nbsp; My recommendation, therefore, is to continue to standardize on Fluid and related good frameworks like jQuery.&lt;br&gt;&lt;br&gt;S5. Portability&lt;br&gt;The hallmark of the JSR-168 portlet spec is portability - the concept that a portlet can be taken from one portal context and dropped into wholly different portal context and operate the same.&amp;nbsp; Theoretically, it's an interesting concept, but frankly, I have never seen this work practically.&amp;nbsp; Maybe it is an easier achievement with the technology (though my experience is that doesn't work well either), but on the user experience front, it fails miserably.&amp;nbsp; Because in user experience, CONTEXT is critical.&amp;nbsp; Let me give an example of a singer.&amp;nbsp; A singer being someone who can sing music.&amp;nbsp; But a singer can be as different as Britney Spears is from Bob Dylan is from Bob Marley is from Mick Jagger is from Snoop Dogg is from Luciano Pavarotti is from Elvis Presley is from Willie Nelson.&amp;nbsp; If the Opera needs a singer, you can't just unplug Snoop Dogg from rap and send him to the Opera.&amp;nbsp; He doesn't FIT.&amp;nbsp; Especially when they were expecting the Fat Lady for costuming.&amp;nbsp; So like singers in different contexts, we are trying to pass around portlets to different portal contexts, with similar results.&amp;nbsp; They don't naturally fit the new context without a lot of re-work and makeup applied - and even then they are easily identified as counterfeit.&amp;nbsp; So far I have seen portlet portability fall into one of two strategies.&amp;nbsp; In one, the portlet is packaged with its context (interactions, interfaces, styling, etc.), so that it ALWAYS is an Opera singer, for example.&amp;nbsp; That works well in the Opera, but clearly fails at the rock concert.&amp;nbsp; The other strategy is to make the portlet as generic as possible.&amp;nbsp; This is the equivalent of sending a B-rate singer (has to be because he can't focus on any one context) in his underwear to whatever gig comes up, hoping that there will be the appropriate, fitting clothes waiting for him.&amp;nbsp; This also fails (except for maybe the rock concert, where pretty much every singer is B-rate and in his underwear) for pretty obvious reasons.&amp;nbsp; From the user interface/user experience perspective, portlets are particularly troubling that way.&amp;nbsp; The Jasig community is great about being open when building portlets, but that often comes at a price of generic (B-rate, shows-up-in-his-underwear) quality, even when placed in its own uPortal.&amp;nbsp; As far as I have experienced, this issue has yet to be solved.&amp;nbsp; There isn't a good way to package and include all of the resources - markup, CSS, images, js, etc. - into every portlet so that it can be portable; that defeats many other best practices, standards, and maintainability.&amp;nbsp; Howver, there is neither a good way to ensure that those resources are available from the portal context, and in a way that the portlet needs them to be functional and a good user experience.&amp;nbsp; We have need of solving this issue.&lt;br&gt;&lt;br&gt;Now on to more tactical specifics.&lt;br&gt;&lt;br&gt;T1. Portlet Administraton&lt;br&gt;The PA portlet in the 3.1 trunk is probably the best current, go forward example.&amp;nbsp; It is not perfect, but shows how an older uPortal channel has been converted into a shiny, modern portlet.&amp;nbsp; You should also refer to this CSS file in trunk for portlet development (which includes the JSR-168 spec and is amply commented):&lt;br&gt;&lt;br&gt;\uportal-war\src\main\webapp\media\skins\universality\uportal3\uportal3_portlet.css&lt;br&gt;&lt;br&gt;T2. FSS for grids and layout&lt;br&gt;FSS (included in uPortal) comes with an excellent layout/grid framework.&amp;nbsp; The FSS layout framework is being used to render the main uPortal UI layout (multi-column and sidebars - all without tables!).&amp;nbsp; Refer to this FSS primer: &lt;a href=&quot;http://wiki.fluidproject.org/x/-gBS&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://wiki.fluidproject.org/x/-gBS&lt;/a&gt;&lt;br&gt;&lt;br&gt;T3. Making an unordered list into tabs&lt;br&gt;On the 3.1.x release with FSS, this is simple and quick (rather beautiful overall).&amp;nbsp; Simply take your semantic unordered list markup and sprinkle in a few FSS classes (I would also encourage some meaningful ARIA roles for accessibility):&lt;br&gt;&lt;pre class=&quot;code-html&quot;&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;div class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-container-flex&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;ul&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt; role=&quot;tablist&quot;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt; class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-tabs fl-tabs-left&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;      &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;li role=&quot;tab&quot; class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-activeTab&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;a href=&lt;span class=&quot;code-quote&quot;&gt;&quot;#_bottom&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;Active Tab&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;br&gt;      &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;li role=&quot;tab&quot;&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;a href=&lt;span class=&quot;code-quote&quot;&gt;&quot;#_bottom&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;Tab #2&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;br&gt;      &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;li role=&quot;tab&quot;&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;a href=&lt;span class=&quot;code-quote&quot;&gt;&quot;#_bottom&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;Tab #3&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/ul&amp;gt;&lt;/span&gt;&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;div role=&quot;tabpanel&quot; class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-tab-content&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;      Content&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&lt;br&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&lt;br&gt;&lt;/pre&gt;Viola!&amp;nbsp; And you don't have to edit CSS at all.&amp;nbsp; FSS layout makes the unordered list into tabs, and FSS themes (uPortal skins) style the tabs to match the currently selected skin.&lt;br&gt;&lt;br&gt;Sadly, this will produce no tangible result in uPortal 2.5.3 - you'll still have a basic, unordered list in the user interface.&amp;nbsp; What to do?&amp;nbsp; Here's where we clearly demonstrate the shortcomings of the JSR-168 CSS specification (I'll try not to be overly sarcastic in my example).&lt;br&gt;&lt;br&gt;CSS classes are free (or at least cheap), so in most senses, there is no harm in layering on additional CSS classes into the markup.&amp;nbsp; So let's think about layering in JSR-168 CSS classes to support non-FSS implementations.&amp;nbsp; First, let's consult the JSR-168 spec to see what is available.&amp;nbsp; After perusal, it looks like this section makes sense:&lt;br&gt;&lt;br&gt;PLT.C.6. Menus&lt;br&gt;&quot;Menu styles define the look-and-feel of the text and background of a
menu structure. This structure may be embedded in the aggregated page
or may appear as a context sensitive popup menu.&quot;&lt;br&gt;&lt;br&gt;Umm, okay, that definition makes it clear how I am supposed to use the spec... or not.&amp;nbsp; Let's see if we can make sense of the classes they give us:&lt;br&gt;&lt;br&gt;&lt;table class=&quot;confluenceTable&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class=&quot;confluenceTd&quot;&gt;portlet-menu&lt;/td&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;General menu settings such as background color, margins, etc.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;portlet-menu-item&lt;/td&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;Normal, unselected menu item.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;portlet-menu-item-selected&lt;/td&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;Selected menu item.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;portlet-menu-item-hover&lt;/td&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;Normal, unselected menu item when the mouse hovers over it.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;portlet-menu-item-hover-selected&lt;/td&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;Selected menu item when the mouse hovers over it.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;portlet-menu-cascade-item&lt;/td&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;Normal, unselected menu item that has submenus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;portlet-menu-cascade-item-selected&lt;/td&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;Selected sub-menu item that has sub-menus.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;portlet-menu-description&lt;/td&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;Descriptive text for the menu (e.g. in a help context below the menu).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;portlet-menu-caption&lt;/td&gt;
&lt;td class=&quot;confluenceTd&quot;&gt;Menu caption.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br&gt;Why we need to specifically delineate &quot;portlet-menu-item&quot; on the &amp;lt;li&amp;gt; (when the &amp;lt;li&amp;gt; is contained in a &amp;lt;ul&amp;gt; already specified as a &quot;portlet-menu&quot;) is lost on me, but okay.&amp;nbsp; And we're supposed to put in a CSS class &quot;portlet-menu-item-hover&quot; for mouse-hover?&amp;nbsp; Isn't there such a thing as :hover in the CSS spec itself?&amp;nbsp; There's some stuff in there that could be used (though a Menu caption?&amp;nbsp; Really?&amp;nbsp; And the desciption is so helpful.), but the point is that even something as basic as a menu is not well designed or defined in the JSR-168 CSS spec.&amp;nbsp; And note there is no JSR-168 class for the associated tabpanel.&amp;nbsp; &lt;br&gt;&lt;br&gt;Taking these classes we could add in the following to our markup:&lt;br&gt;&lt;br&gt;&lt;pre class=&quot;code-html&quot;&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;div class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-container-flex&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;ul&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt; role=&quot;tablist&quot;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt; class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-tabs fl-tabs-left portlet-menu&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;      &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;li role=&quot;tab&quot; class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-activeTab portlet-menu-item-selected&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;a href=&lt;span class=&quot;code-quote&quot;&gt;&quot;#_bottom&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;Active Tab&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;br&gt;      &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;li role=&quot;tab&quot; class=&quot;portlet-menu-item&quot;&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;a href=&lt;span class=&quot;code-quote&quot;&gt;&quot;#_bottom&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;Tab #2&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;br&gt;      &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;li role=&quot;tab&quot;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt; class=&quot;portlet-menu-item&quot;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;a href=&lt;span class=&quot;code-quote&quot;&gt;&quot;#_bottom&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;Tab #3&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/ul&amp;gt;&lt;/span&gt;&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;div role=&quot;tabpanel&quot; class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-tab-content&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;      Content&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&lt;br&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&lt;/pre&gt;
And we would discover that this has done very little to our UI result in 2.5.3.&amp;nbsp; Still no tabs, just an unordered list with maybe a bit of styling applied.&amp;nbsp; Why?&amp;nbsp; Because there is no context.&amp;nbsp; What KIND of menu is this?&amp;nbsp; Nothing in the JSR-168 spec specifies this as a TAB menu.&amp;nbsp; Well, we could define that in the CSS by making all .portlet-menu .portlet-menu-item elements inline or floated and so forth.&amp;nbsp; Super! (except that you had to figure out and test that across browsers on your own effort, which is painful, trust me).&amp;nbsp; Now we have tabs from our unordered list.&amp;nbsp; But wait - now EVERYWHERE that these classes are used will be converted to TABS, whether they are contextually tabs or not.&amp;nbsp; The JSR-168 spec does not give us classes to define the context.&lt;br&gt;&lt;br&gt;So, okay, we could add the context to the container &amp;lt;div&amp;gt;, like so:&lt;br&gt;&lt;br&gt;&lt;pre class=&quot;code-html&quot;&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;div class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-container-flex portlet-menu-tabs&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;ul&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt; role=&quot;tablist&quot;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt; class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-tabs fl-tabs-left portlet-menu&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;      &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;li role=&quot;tab&quot; class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-activeTab portlet-menu-item-selected&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;a href=&lt;span class=&quot;code-quote&quot;&gt;&quot;#_bottom&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;Active Tab&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;br&gt;      &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;li role=&quot;tab&quot; class=&quot;portlet-menu-item&quot;&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;a href=&lt;span class=&quot;code-quote&quot;&gt;&quot;#_bottom&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;Tab #2&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;br&gt;      &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;li role=&quot;tab&quot;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt; class=&quot;portlet-menu-item&quot;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;a href=&lt;span class=&quot;code-quote&quot;&gt;&quot;#_bottom&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;Tab #3&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/ul&amp;gt;&lt;/span&gt;&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;div role=&quot;tabpanel&quot; class=&lt;span class=&quot;code-quote&quot;&gt;&quot;fl-tab-content&quot;&lt;/span&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;      Content&lt;br&gt;   &lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&lt;br&gt;&lt;span class=&quot;code-tag&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&lt;/pre&gt;
And then solve the problem in the CSS with selectors like:&lt;br&gt;&lt;br&gt;.portlet-menu-tabs .portlet-menu .portlet-menu-item {}&lt;br&gt;&lt;br&gt;So that only those specifications are applied to make an unordered list into tabs when the parent .portlet-menu-tabs class is present.&amp;nbsp; However, now we have broken the standard.&amp;nbsp; No one will get the benefit of using these classes to achieve tabs from an unordered list without knowing to put the .portlet-menu-tabs class on the containing element.&amp;nbsp; And even if that class is on the containing element, if you take the portlet out of uPortal and try to use it elsewhere, it will revert to an undesireable, plain unordered list.&amp;nbsp; You could say the same about FSS (that it isn't portable), but it IS easily includable and relieves us from having to solve the problem, test the solution, and maintain the standard.&lt;br&gt;&lt;br&gt;My recommendation: include FSS into your CSS includes in your 2.5.3 skin (minimally fss-layout.css), and you will at least get the basic structural benefits without doing any extra work and without complicating the markup with the JSR-168 classes.&amp;nbsp; Besides, after including the JSR-168 classes, if you were to stumble on this markup, which classes do you use/modify?&amp;nbsp; The FSS ones, or the JSR-168 ones?&amp;nbsp; And if they are both (FSS and JSR-168) trying to make tabs out of an unordered list, you are going to get some ugly CSS conflicts.&amp;nbsp; I like to Keep It Simple.&amp;nbsp; The FSS markup is much cleaner, and does the job much better, with little effort required on your part as the implementor.&lt;br&gt;&lt;br&gt;Hope that helps.&amp;nbsp; I welcome more discussion on these matters.&lt;br&gt;&lt;br&gt;&lt;br&gt;Gary Thompson&lt;br&gt;User Experience Leader&lt;br&gt;Unicon | www.unicon.net&lt;br&gt;&lt;br&gt;&lt;br&gt;----- Original Message -----&lt;br&gt;From: &quot;Gary Weaver&quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931057&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary.weaver@...&lt;/a&gt;&amp;gt;&lt;br&gt;To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931057&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jasig-ue@...&lt;/a&gt;&lt;br&gt;Sent: Thursday, October 15, 2009 10:51:42 AM GMT -07:00 U.S. Mountain Time (Arizona)&lt;br&gt;Subject: Re:[jasig-ue] portlet UI design guidelines?&lt;br&gt;&lt;br&gt;I should probably clarify that in the MailPortlet when you click on a &lt;br&gt;tab, that it when it queries the pop3/imap server for mail, so I'm not &lt;br&gt;looking for a show/hide div type of thing, but rather either the &lt;br&gt;standard CSS classes that display line-items horizontally (in a way &lt;br&gt;friendly to various existing skins in both uPortal 2.5.3 and uPortal &lt;br&gt;3.1.1) or something (that I'm not guessing would be a simple?) that not &lt;br&gt;only display tabs but would use Ajax to load the chosen tab in the &lt;br&gt;background and to do this in a skin-friendly way (specifically in the &lt;br&gt;formatting of the tabs) that hopefully could work without much problem &lt;br&gt;in both uPortal 2.5.3 and 3.1.1. The following is basically what I'm &lt;br&gt;showing for tabs atop the mail message list table (I made up the class &lt;br&gt;names to show what I'm looking for):&lt;br&gt;&lt;br&gt;&amp;lt;ul &lt;br&gt;class=&quot;some-well-used-skin-class-to-indicate-these-are-tabs-and-therefore-this-unordered-list-should-be-composed-of-blocked-bordered-and-backgrounded-inline-line-items&quot;&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;li&amp;gt;...&amp;lt;/li&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;li &lt;br&gt;class=&quot;some-well-used-skin-class-to-indicate-this-inline-line-item-tab-is-selected&quot;&amp;gt;...&amp;lt;/li&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;li&amp;gt;...&amp;lt;/li&amp;gt;&lt;br&gt;&amp;lt;/ul&amp;gt;&lt;br&gt;&lt;br&gt;It looks like maybe the thing to use in uPortal 3.1.1 is fl-tabs as the &lt;br&gt;class name and fl-activeTab for the selected tab. But can I just define &lt;br&gt;those in the portlet's CSS so that it works in older versions without it &lt;br&gt;overriding the newer stuff in uPortal 3.1.1?&lt;br&gt;&lt;br&gt;And for table formatting, I was just checking to see what the best way &lt;br&gt;to define the table and its classes are or what you would say is a &lt;br&gt;uPortal 2.5.3 and 3.1.1 friendly way to define a table in a portlet. I &lt;br&gt;currently have the following for the display of mail messages, but I'm &lt;br&gt;guessing I could do better?:&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;%-- is there any nice column-resizing &lt;br&gt;javascript deal available via uP 3.1 and if so could we include that in &lt;br&gt;the portlet so that it could be used in both earlier and later versions &lt;br&gt;of uPortal? %--&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;table &lt;br&gt;class=&quot;is-there-some-sort-of-standard-uportal-skin-class-that-should-be-used-here-that-might-add-a-border-or-similar&quot;&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;tbody&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;c:forEach &lt;br&gt;items=&quot;${selectedMailAccountDetails.stubs}&quot; var=&quot;stub&quot; varStatus=&quot;counter&quot;&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;c:set var=&quot;className&quot;&amp;gt;${ (counter.index &lt;br&gt;% 2 == 0) ? 'portlet-section-body' : 'portlet-section-alternate'} &lt;br&gt;${stub.seen ? 'mailportlet-read-message' : &lt;br&gt;'mailportlet-unread-message'}&amp;lt;/c:set&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;tr class=&quot;${className}&quot;&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;td&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;c:if test=&quot;${stub.flagged}&quot;&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;%-- am guessing maybe there &lt;br&gt;are famfamfam icons for these, but then should resource-server be a &lt;br&gt;requirement since it serves those in 3.1 or should they be included in &lt;br&gt;the portlet to be compatible with older uPortal versions? --%&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;img &lt;br&gt;src=&quot;&amp;lt;%=request.getContextPath()%&amp;gt;/images/star.png&quot;/&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/c:if&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;c:if test=&quot;${stub.answered}&quot;&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;img &lt;br&gt;src=&quot;&amp;lt;%=request.getContextPath()%&amp;gt;/images/answered.png&quot;/&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/c:if&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;c:if test=&quot;${not stub.flagged &lt;br&gt;&amp;amp;&amp;amp; not stub.answered}&quot;&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;%-- it just looks bad when &lt;br&gt;there are no flags on any messages. assuming this column have some sort &lt;br&gt;of minimum width. --%&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;amp;nbsp;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/c:if&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/td&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;td&amp;gt;&amp;lt;span class=${stub.deleted ? &lt;br&gt;'mailportlet-deleted-message' : ''}&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;a &lt;br&gt;href=&quot;${selectedMailAccountDetails.link}&quot;&amp;gt;&amp;lt;c:choose&amp;gt;&amp;lt;c:when &lt;br&gt;test=&quot;${empty stub.from}&quot;&amp;gt;&amp;lt;fmt:message &lt;br&gt;key=&quot;noSender&quot;/&amp;gt;&amp;lt;/c:when&amp;gt;&amp;lt;c:otherwise&amp;gt;&amp;lt;c:out&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br&gt;value=&quot;${stub.from}&quot;/&amp;gt;&amp;lt;/c:otherwise&amp;gt;&amp;lt;/c:choose&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;td&amp;gt;&amp;lt;span class=${stub.deleted ? &lt;br&gt;'mailportlet-deleted-message' : ''}&amp;gt;&amp;lt;a &lt;br&gt;href=&quot;${selectedMailAccountDetails.link}&quot;&amp;gt;&amp;lt;c:choose&amp;gt;&amp;lt;c:when &lt;br&gt;test=&quot;${empty stub.subject}&quot;&amp;gt;&amp;lt;fmt:message &lt;br&gt;key=&quot;noSubject&quot;/&amp;gt;&amp;lt;/c:when&amp;gt;&amp;lt;c:otherwise&amp;gt;&amp;lt;c:out&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br&gt;value=&quot;${stub.subject}&quot;/&amp;gt;&amp;lt;/c:otherwise&amp;gt;&amp;lt;/c:choose&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;td&amp;gt;&amp;lt;span class=${stub.deleted ? &lt;br&gt;'mailportlet-deleted-message' : ''}&amp;gt;&amp;lt;a &lt;br&gt;href=&quot;${selectedMailAccountDetails.link}&quot;&amp;gt;&amp;lt;c:choose&amp;gt;&amp;lt;c:when &lt;br&gt;test=&quot;${empty stub.received}&quot;&amp;gt;&amp;lt;fmt:message &lt;br&gt;key=&quot;noDate&quot;/&amp;gt;&amp;lt;/c:when&amp;gt;&amp;lt;c:otherwise&amp;gt;&amp;lt;c:out&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br&gt;value=&quot;${stub.received}&quot;/&amp;gt;&amp;lt;/c:otherwise&amp;gt;&amp;lt;/c:choose&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/tr&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/c:forEach&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/tbody&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/table&amp;gt;&lt;br&gt;&lt;br&gt;Thanks,&lt;br&gt;Gary&lt;br&gt;&lt;br&gt;&lt;br&gt;Gary Weaver wrote:&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; (sorry to cross-post, but I don't know where to send this)&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; Am having a little bit of a dilemma working on the MailPortlet UI and &lt;br&gt;&amp;gt; thought maybe someone could provide some guidance.&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; * I want to use what I can of what standards I should from PLT.C CSS &lt;br&gt;&amp;gt; classes of JSR-168, and am trying to make it utilize the classes as &lt;br&gt;&amp;gt; defined in the default skin of uPortal 3.1.1 for reference &lt;br&gt;&amp;gt; (skins/universality/uportal3/jsr168_portlet_spec.css) just to have a &lt;br&gt;&amp;gt; better feel for what it would look like in the future if we were to &lt;br&gt;&amp;gt; upgrade uPortal 3.1+. I know that these classes were also defined in &lt;br&gt;&amp;gt; uPortal 2.5.3 skins, but I haven't looked at how those would look yet.&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; * Those classes in the default skin of uP 3.1.1 at least seem to just &lt;br&gt;&amp;gt; define background color, border color, change a few font sizes/bold a &lt;br&gt;&amp;gt; few things, and do some light padding/margin changes.&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; * Things like portlet-section-header, portlet-section-subheader, and &lt;br&gt;&amp;gt; portlet-form-label aren't defining &quot;display: block;&quot; and therefore &lt;br&gt;&amp;gt; also not defining margins/padding, so I'm unclear as to whether those &lt;br&gt;&amp;gt; should be headers (h3, h4, ...) or label elements (all seem like they &lt;br&gt;&amp;gt; should be headers I guess).&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; * I need other CSS classes to make nice (list item) tabs across the &lt;br&gt;&amp;gt; top of the main MailPortlet view&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; * I need other CSS classes to do some better formatting of the table &lt;br&gt;&amp;gt; containing the list of the most recent email messages for a specific &lt;br&gt;&amp;gt; account (which has columns for flags, sender, subject, and date like &lt;br&gt;&amp;gt; you'd expect in the main message list view a mail client)&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; * It would be great (but not totally necessary) to have resizeable &lt;br&gt;&amp;gt; columns in the table (so some standard javascript to assist with that &lt;br&gt;&amp;gt; might be nice) or at the very least to have it defined the table&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; My questions are:&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; * Were there CSS classes that did that in the standard skins that came &lt;br&gt;&amp;gt; with uPortal 2.5.3 (I'm looking through them now- not sure)? Do those &lt;br&gt;&amp;gt; still apply for uP 3.1.1?&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; * Could you point me at specific examples of portlets or other places &lt;br&gt;&amp;gt; in uPortal 3.1.1 that do a good job (list item) tabs and grid/table &lt;br&gt;&amp;gt; formatting like I'm talking about in a uPortal-skin friendly way?&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; * What level of header should portlet-section-header, &lt;br&gt;&amp;gt; portlet-section-subheader, and portlet-form-label be to have &lt;br&gt;&amp;gt; consistency throughout portlets and if they should be labels, what &lt;br&gt;&amp;gt; additional classes should be used if any to define that they should be &lt;br&gt;&amp;gt; display:block and to define their margins/padding?&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; * Do you think that ResourceServer should be a requirement for &lt;br&gt;&amp;gt; portlets to display correctly from here on out, and if so, do you know &lt;br&gt;&amp;gt; of anyone using it with older versions of uPortal?&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; I completely understand that at some point the past has to be left &lt;br&gt;&amp;gt; behind and newer portlets should only work with uPortal 3.1+, but for &lt;br&gt;&amp;gt; those of us that want to contribute in such a way that portlets can be &lt;br&gt;&amp;gt; used in both uPortal 3.1.1+ and uPortal 2.5.3, I want to make sure &lt;br&gt;&amp;gt; that I'm defining things correctly and defining portlet-specific CSS &lt;br&gt;&amp;gt; and/or reusing skin CSS in a way that is kosher for both environments &lt;br&gt;&amp;gt; (at least for now, if it makes sense).&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; Thanks!&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt; Gary&lt;br&gt;&amp;gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;-- &lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931057&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jasig-ue@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931057&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gary@...&lt;/a&gt;&lt;br&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/jasig-ue&lt;br&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931057&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-dev@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25931057&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-dev&lt;/pre&gt;
&lt;/BODY&gt;&lt;/html&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---Developer-f22545.html&quot; embed=&quot;fixTarget[22545]&quot; target=&quot;_top&quot; &gt;uPortal - Developer&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-jasig-ue--portlet-UI-design-guidelines--tp25931057p25931057.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25930869</id>
	<title>Re: trouble with jndi database resource, uportal   3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-16T12:18:31Z</published>
	<updated>2009-10-16T12:18:31Z</updated>
	<author>
		<name>Susan Bramhall</name>
	</author>
	<content type="html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;
&lt;html&gt;
&lt;head&gt;
  &lt;meta content=&quot;text/html;charset=ISO-8859-1&quot; http-equiv=&quot;Content-Type&quot;&gt;
&lt;/head&gt;
&lt;body bgcolor=&quot;#ffffff&quot; text=&quot;#000000&quot;&gt;
We've been using jndi datasources successfully ever since we went to
3.1 with no problems... We have a shared pool used by several portlets
and the portal itself.&amp;nbsp; It would be hard for us to do it without jndi
since developers don't have access to those credentials.&amp;nbsp; They are all
using Spring.&amp;nbsp; Not sure what we are doing right that others have
stumbled on.&amp;nbsp; Sample snippet from a portlet context:&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean id=&quot;dataSource&quot;
class=&quot;org.springframework.jndi.JndiObjectFactoryBean&quot;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name=&quot;jndiName&quot;
value=&quot;java:comp/env/jdbc/uPortalDB&quot;/&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/bean&amp;gt;&lt;br&gt;
&lt;br&gt;
I'd be curious to know what your problems have been.&lt;br&gt;
Susan&lt;br&gt;
&lt;br&gt;
Eric Dalquist wrote:
&lt;blockquote cite=&quot;mid:4AD8C0C9.2090604@doit.wisc.edu&quot; type=&quot;cite&quot;&gt;
  &lt;meta content=&quot;text/html;charset=ISO-8859-1&quot; http-equiv=&quot;Content-Type&quot;&gt;
This isn't very helpful for your current problem but we haven't used
JNDI managed DataSources in uPortal or our portlets since upgrading to
3.0. They always seem to have some sort of issue and a locally declared
DBCP DataSource in the Spring app context seems to work much better.&lt;br&gt;
  &lt;br&gt;
-Eric&lt;br&gt;
  &lt;br&gt;
Curtis Garman wrote:
  &lt;blockquote cite=&quot;mid:17959_1255719027_ZZg0H3xk0xqrZ.00_70ca076d0910161150o31279f6dwb6ca36af45e81b71@mail.gmail.com&quot; type=&quot;cite&quot;&gt;
    &lt;pre wrap=&quot;&quot;&gt;Since the connection pool is only used by a single portlet and there
is no need for any other webapp to see it, I placed my Resource in the
the context.xml of my application (portlet)...I had tried placing my
driver in the shared/lib too but that didn't help.

On Fri, Oct 16, 2009 at 1:06 PM, Susan Bramhall &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930869&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt; wrote:
  &lt;/pre&gt;
    &lt;blockquote type=&quot;cite&quot;&gt;
      &lt;pre wrap=&quot;&quot;&gt;Are you putting the jndi information in the server context.xml or in the
applicationContext.xml?&amp;nbsp; It has to be in the server context to allow all the
portlets to share the connections.&amp;nbsp; And the jdbc library has to be shared as
well.
Susan

Curtis Garman wrote:

Does anyone have experience using jndi database resources for portlets
that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
are running via jndi connection pooling in our uportal 2.6.1
environment on tomcat 5.5.25 and while they work great for 2.6.1, I
can't get the portlets to run on 3.1.1 unless I hard-code the
connection information into the portlets.  The portlets are not
spring-based at this point. I keep getting the following exception

javax.naming.NameNotFoundException: Name jdbc is not bound in this Context

My context.xml configuration is as follows

	&amp;lt;Resource name=&quot;jdbc/cancellation&quot; auth=&quot;Container&quot;
type=&quot;javax.sql.DataSource&quot;
	  username=&quot;user&quot; password=&quot;password&quot;
	  driverClassName=&quot;net.sourceforge.jtds.jdbc.Driver&quot;
url=&quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&quot;
	  maxActive=&quot;10&quot; maxIdle=&quot;5&quot; maxWait=&quot;1000&quot;
	  poolPreparedStatements=&quot;true&quot;
	  removeAbandoned=&quot;true&quot;
	  removeAbandonedTimeout=&quot;300&quot;
	  logAbandoned=&quot;true&quot;
	/&amp;gt;

I usually do not use the web.xml resource-ref...it seems to work without
it...

 &amp;lt;resource-ref&amp;gt;
      &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
      &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
      &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
      &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
  &amp;lt;/resource-ref&amp;gt;

...and it actually starts throwing a different error when I include it

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
driver of class '' for connect URL 'null'

I tried moving my context.xml to conf/Catalina/localhost and changing
the name of the file to appname.xml and this gave me yet another error

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
driver class 'net.sourceforge.jtds.jdbc.Driver'

Does anyone have any ideas?



--

Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930869&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;amp;P)
Yale University Information Technology Services (ITS)
25 Science Park, 150 Munson St, New Haven, CT 06520
Phone: &amp;nbsp;203 432 6697

--

You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930869&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930869&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
To unsubscribe, change settings or access archives, see
&lt;a moz-do-not-send=&quot;true&quot; class=&quot;moz-txt-link-freetext&quot; href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;
    &lt;/pre&gt;
    &lt;/blockquote&gt;
    &lt;pre wrap=&quot;&quot;&gt;&lt;!----&gt;


  &lt;/pre&gt;
  &lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;br&gt;
&lt;div class=&quot;moz-signature&quot;&gt;-- &lt;br&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; &quot;&gt;
&lt;meta name=&quot;Generator&quot; content=&quot;Microsoft Word 12 (filtered)&quot;&gt;

&lt;div class=&quot;Section1&quot;&gt;
&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;Susan Bramhall&lt;/span&gt; (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930869&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)&lt;br&gt;
Senior Developer, Infrastructure Systems and Architecture (formerly
T&amp;amp;P)&lt;br&gt;
Yale University Information Technology Services (ITS)&lt;br&gt;
25 Science Park, 150 Munson St, New Haven, CT 06520&lt;br&gt;
Phone: &amp;nbsp;203 432 6697&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930869&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930869&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/pre&gt;
&lt;/BODY&gt;
&lt;/html&gt;

&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25930869.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25930727</id>
	<title>Re: trouble with jndi database resource, uportal    3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-16T12:07:02Z</published>
	<updated>2009-10-16T12:07:02Z</updated>
	<author>
		<name>Eric Dalquist</name>
	</author>
	<content type="html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;
&lt;html&gt;
&lt;head&gt;
  &lt;meta content=&quot;text/html;charset=ISO-8859-1&quot; http-equiv=&quot;Content-Type&quot;&gt;
&lt;/head&gt;
&lt;body bgcolor=&quot;#ffffff&quot; text=&quot;#000000&quot;&gt;
Curtis Garman wrote:
&lt;blockquote cite=&quot;mid:18630_1255719839_ZZg0H3xs3yBAl.00_70ca076d0910161203s174e970dy1f404eb1df33ca25@mail.gmail.com&quot; type=&quot;cite&quot;&gt;
  &lt;pre wrap=&quot;&quot;&gt;Actually that is somewhat helpful because I've noticed others in the
community are doing the same thing...I could easily enough convert the
before mentioned portlets to spring...however spring development
hasn't quite been sanctioned here yet. What you just said will be
helpful in lobbying for it :)
  &lt;/pre&gt;
&lt;/blockquote&gt;
Glad to help ;)&lt;br&gt;
&lt;blockquote cite=&quot;mid:18630_1255719839_ZZg0H3xs3yBAl.00_70ca076d0910161203s174e970dy1f404eb1df33ca25@mail.gmail.com&quot; type=&quot;cite&quot;&gt;
  &lt;pre wrap=&quot;&quot;&gt;
One reason why I am interested in using jndi over an internal pool is
because we use lamba probe to help monitor things and it provides a
nice web interface to be able to view jndi connection pools and how
many open connections there are for each. I really don't want to lose
that if possible.
  &lt;/pre&gt;
&lt;/blockquote&gt;
You can take a look at jmxContext.xml in uPortal to see an example of
using Spring to easily expose things such as local DataSource pools via
JMX. Not sure if lamba prob can talk JMX but uPortal exposes a whole
bunch of data that way.&lt;br&gt;
&lt;blockquote cite=&quot;mid:18630_1255719839_ZZg0H3xs3yBAl.00_70ca076d0910161203s174e970dy1f404eb1df33ca25@mail.gmail.com&quot; type=&quot;cite&quot;&gt;
  &lt;pre wrap=&quot;&quot;&gt;
Another thing that makes the jndi thing problematic is that related to
another thread I started too...I set up a portlet overlay to apply all
customizations to our portlets...but it seemes to loose all
context.xml files from the META-INF directory...which obviously hurts
when using this file to link to or provide credentials to your
datasource.
  &lt;/pre&gt;
&lt;/blockquote&gt;
Does the default overlay configuration include any &amp;lt;excluded&amp;gt;
paths? That would be my first guess in diagnosing that. Perhaps add an
explicit include in the overlay config?&lt;br&gt;
&lt;blockquote cite=&quot;mid:18630_1255719839_ZZg0H3xs3yBAl.00_70ca076d0910161203s174e970dy1f404eb1df33ca25@mail.gmail.com&quot; type=&quot;cite&quot;&gt;
  &lt;pre wrap=&quot;&quot;&gt;
Curtis


On Fri, Oct 16, 2009 at 1:51 PM, Eric Dalquist
&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930727&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eric.dalquist@...&lt;/a&gt; wrote:
  &lt;/pre&gt;
  &lt;blockquote type=&quot;cite&quot;&gt;
    &lt;pre wrap=&quot;&quot;&gt;This isn't very helpful for your current problem but we haven't used JNDI
managed DataSources in uPortal or our portlets since upgrading to 3.0. They
always seem to have some sort of issue and a locally declared DBCP
DataSource in the Spring app context seems to work much better.

-Eric

Curtis Garman wrote:

Since the connection pool is only used by a single portlet and there
is no need for any other webapp to see it, I placed my Resource in the
the context.xml of my application (portlet)...I had tried placing my
driver in the shared/lib too but that didn't help.

On Fri, Oct 16, 2009 at 1:06 PM, Susan Bramhall &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930727&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;
wrote:


Are you putting the jndi information in the server context.xml or in the
applicationContext.xml?&amp;nbsp; It has to be in the server context to allow all the
portlets to share the connections.&amp;nbsp; And the jdbc library has to be shared as
well.
Susan

Curtis Garman wrote:

Does anyone have experience using jndi database resources for portlets
that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
are running via jndi connection pooling in our uportal 2.6.1
environment on tomcat 5.5.25 and while they work great for 2.6.1, I
can't get the portlets to run on 3.1.1 unless I hard-code the
connection information into the portlets.  The portlets are not
spring-based at this point. I keep getting the following exception

javax.naming.NameNotFoundException: Name jdbc is not bound in this Context

My context.xml configuration is as follows

	&amp;lt;Resource name=&quot;jdbc/cancellation&quot; auth=&quot;Container&quot;
type=&quot;javax.sql.DataSource&quot;
	  username=&quot;user&quot; password=&quot;password&quot;
	  driverClassName=&quot;net.sourceforge.jtds.jdbc.Driver&quot;
url=&quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&quot;
	  maxActive=&quot;10&quot; maxIdle=&quot;5&quot; maxWait=&quot;1000&quot;
	  poolPreparedStatements=&quot;true&quot;
	  removeAbandoned=&quot;true&quot;
	  removeAbandonedTimeout=&quot;300&quot;
	  logAbandoned=&quot;true&quot;
	/&amp;gt;

I usually do not use the web.xml resource-ref...it seems to work without
it...

 &amp;lt;resource-ref&amp;gt;
      &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
      &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
      &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
      &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
  &amp;lt;/resource-ref&amp;gt;

...and it actually starts throwing a different error when I include it

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
driver of class '' for connect URL 'null'

I tried moving my context.xml to conf/Catalina/localhost and changing
the name of the file to appname.xml and this gave me yet another error

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
driver class 'net.sourceforge.jtds.jdbc.Driver'

Does anyone have any ideas?



--

Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930727&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;amp;P)
Yale University Information Technology Services (ITS)
25 Science Park, 150 Munson St, New Haven, CT 06520
Phone: &amp;nbsp;203 432 6697

--

You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930727&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930727&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
To unsubscribe, change settings or access archives, see
&lt;a class=&quot;moz-txt-link-freetext&quot; href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;



    &lt;/pre&gt;
  &lt;/blockquote&gt;
  &lt;pre wrap=&quot;&quot;&gt;&lt;!----&gt;


  &lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/body&gt;
&lt;/html&gt;
&lt;br /&gt; &lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;smime.p7s&lt;/strong&gt; (4K) &lt;a href=&quot;http://old.nabble.com/attachment/25930727/0/smime.p7s&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25930727.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25930661</id>
	<title>Re: trouble with jndi database resource, uportal     3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-16T12:03:25Z</published>
	<updated>2009-10-16T12:03:25Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">Actually that is somewhat helpful because I've noticed others in the
&lt;br&gt;community are doing the same thing...I could easily enough convert the
&lt;br&gt;before mentioned portlets to spring...however spring development
&lt;br&gt;hasn't quite been sanctioned here yet. What you just said will be
&lt;br&gt;helpful in lobbying for it :)
&lt;br&gt;&lt;br&gt;One reason why I am interested in using jndi over an internal pool is
&lt;br&gt;because we use lamba probe to help monitor things and it provides a
&lt;br&gt;nice web interface to be able to view jndi connection pools and how
&lt;br&gt;many open connections there are for each. I really don't want to lose
&lt;br&gt;that if possible.
&lt;br&gt;&lt;br&gt;Another thing that makes the jndi thing problematic is that related to
&lt;br&gt;another thread I started too...I set up a portlet overlay to apply all
&lt;br&gt;customizations to our portlets...but it seemes to loose all
&lt;br&gt;context.xml files from the META-INF directory...which obviously hurts
&lt;br&gt;when using this file to link to or provide credentials to your
&lt;br&gt;datasource.
&lt;br&gt;&lt;br&gt;Curtis
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Fri, Oct 16, 2009 at 1:51 PM, Eric Dalquist
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930661&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eric.dalquist@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; This isn't very helpful for your current problem but we haven't used JNDI
&lt;br&gt;&amp;gt; managed DataSources in uPortal or our portlets since upgrading to 3.0. They
&lt;br&gt;&amp;gt; always seem to have some sort of issue and a locally declared DBCP
&lt;br&gt;&amp;gt; DataSource in the Spring app context seems to work much better.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -Eric
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Since the connection pool is only used by a single portlet and there
&lt;br&gt;&amp;gt; is no need for any other webapp to see it, I placed my Resource in the
&lt;br&gt;&amp;gt; the context.xml of my application (portlet)...I had tried placing my
&lt;br&gt;&amp;gt; driver in the shared/lib too but that didn't help.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Fri, Oct 16, 2009 at 1:06 PM, Susan Bramhall &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930661&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Are you putting the jndi information in the server context.xml or in the
&lt;br&gt;&amp;gt; applicationContext.xml?  It has to be in the server context to allow all the
&lt;br&gt;&amp;gt; portlets to share the connections.  And the jdbc library has to be shared as
&lt;br&gt;&amp;gt; well.
&lt;br&gt;&amp;gt; Susan
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does anyone have experience using jndi database resources for portlets
&lt;br&gt;&amp;gt; that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
&lt;br&gt;&amp;gt; are running via jndi connection pooling in our uportal 2.6.1
&lt;br&gt;&amp;gt; environment on tomcat 5.5.25 and while they work great for 2.6.1, I
&lt;br&gt;&amp;gt; can't get the portlets to run on 3.1.1 unless I hard-code the
&lt;br&gt;&amp;gt; connection information into the portlets. &amp;nbsp;The portlets are not
&lt;br&gt;&amp;gt; spring-based at this point. I keep getting the following exception
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; My context.xml configuration is as follows
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 	&amp;lt;Resource name=&amp;quot;jdbc/cancellation&amp;quot; auth=&amp;quot;Container&amp;quot;
&lt;br&gt;&amp;gt; type=&amp;quot;javax.sql.DataSource&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;username=&amp;quot;user&amp;quot; password=&amp;quot;password&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;driverClassName=&amp;quot;net.sourceforge.jtds.jdbc.Driver&amp;quot;
&lt;br&gt;&amp;gt; url=&amp;quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;maxActive=&amp;quot;10&amp;quot; maxIdle=&amp;quot;5&amp;quot; maxWait=&amp;quot;1000&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;poolPreparedStatements=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;removeAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;removeAbandonedTimeout=&amp;quot;300&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;logAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	/&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I usually do not use the web.xml resource-ref...it seems to work without
&lt;br&gt;&amp;gt; it...
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;lt;resource-ref&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;lt;/resource-ref&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ...and it actually starts throwing a different error when I include it
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
&lt;br&gt;&amp;gt; driver of class '' for connect URL 'null'
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I tried moving my context.xml to conf/Catalina/localhost and changing
&lt;br&gt;&amp;gt; the name of the file to appname.xml and this gave me yet another error
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
&lt;br&gt;&amp;gt; driver class 'net.sourceforge.jtds.jdbc.Driver'
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does anyone have any ideas?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930661&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
&lt;br&gt;&amp;gt; Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;P)
&lt;br&gt;&amp;gt; Yale University Information Technology Services (ITS)
&lt;br&gt;&amp;gt; 25 Science Park, 150 Munson St, New Haven, CT 06520
&lt;br&gt;&amp;gt; Phone:  203 432 6697
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930661&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930661&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930661&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930661&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25930661.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25930493</id>
	<title>Re: trouble with jndi database resource, uportal    3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-16T11:51:53Z</published>
	<updated>2009-10-16T11:51:53Z</updated>
	<author>
		<name>Eric Dalquist</name>
	</author>
	<content type="html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;
&lt;html&gt;
&lt;head&gt;
  &lt;meta content=&quot;text/html;charset=ISO-8859-1&quot; http-equiv=&quot;Content-Type&quot;&gt;
&lt;/head&gt;
&lt;body bgcolor=&quot;#ffffff&quot; text=&quot;#000000&quot;&gt;
This isn't very helpful for your current problem but we haven't used
JNDI managed DataSources in uPortal or our portlets since upgrading to
3.0. They always seem to have some sort of issue and a locally declared
DBCP DataSource in the Spring app context seems to work much better.&lt;br&gt;
&lt;br&gt;
-Eric&lt;br&gt;
&lt;br&gt;
Curtis Garman wrote:
&lt;blockquote cite=&quot;mid:17959_1255719027_ZZg0H3xk0xqrZ.00_70ca076d0910161150o31279f6dwb6ca36af45e81b71@mail.gmail.com&quot; type=&quot;cite&quot;&gt;
  &lt;pre wrap=&quot;&quot;&gt;Since the connection pool is only used by a single portlet and there
is no need for any other webapp to see it, I placed my Resource in the
the context.xml of my application (portlet)...I had tried placing my
driver in the shared/lib too but that didn't help.

On Fri, Oct 16, 2009 at 1:06 PM, Susan Bramhall &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930493&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt; wrote:
  &lt;/pre&gt;
  &lt;blockquote type=&quot;cite&quot;&gt;
    &lt;pre wrap=&quot;&quot;&gt;Are you putting the jndi information in the server context.xml or in the
applicationContext.xml?&amp;nbsp; It has to be in the server context to allow all the
portlets to share the connections.&amp;nbsp; And the jdbc library has to be shared as
well.
Susan

Curtis Garman wrote:

Does anyone have experience using jndi database resources for portlets
that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
are running via jndi connection pooling in our uportal 2.6.1
environment on tomcat 5.5.25 and while they work great for 2.6.1, I
can't get the portlets to run on 3.1.1 unless I hard-code the
connection information into the portlets.  The portlets are not
spring-based at this point. I keep getting the following exception

javax.naming.NameNotFoundException: Name jdbc is not bound in this Context

My context.xml configuration is as follows

	&amp;lt;Resource name=&quot;jdbc/cancellation&quot; auth=&quot;Container&quot;
type=&quot;javax.sql.DataSource&quot;
	  username=&quot;user&quot; password=&quot;password&quot;
	  driverClassName=&quot;net.sourceforge.jtds.jdbc.Driver&quot;
url=&quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&quot;
	  maxActive=&quot;10&quot; maxIdle=&quot;5&quot; maxWait=&quot;1000&quot;
	  poolPreparedStatements=&quot;true&quot;
	  removeAbandoned=&quot;true&quot;
	  removeAbandonedTimeout=&quot;300&quot;
	  logAbandoned=&quot;true&quot;
	/&amp;gt;

I usually do not use the web.xml resource-ref...it seems to work without
it...

 &amp;lt;resource-ref&amp;gt;
      &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
      &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
      &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
      &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
  &amp;lt;/resource-ref&amp;gt;

...and it actually starts throwing a different error when I include it

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
driver of class '' for connect URL 'null'

I tried moving my context.xml to conf/Catalina/localhost and changing
the name of the file to appname.xml and this gave me yet another error

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
driver class 'net.sourceforge.jtds.jdbc.Driver'

Does anyone have any ideas?



--

Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930493&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;amp;P)
Yale University Information Technology Services (ITS)
25 Science Park, 150 Munson St, New Haven, CT 06520
Phone: &amp;nbsp;203 432 6697

--

You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930493&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930493&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
To unsubscribe, change settings or access archives, see
&lt;a class=&quot;moz-txt-link-freetext&quot; href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;
    &lt;/pre&gt;
  &lt;/blockquote&gt;
  &lt;pre wrap=&quot;&quot;&gt;&lt;!----&gt;


  &lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/body&gt;
&lt;/html&gt;
&lt;br /&gt; &lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;smime.p7s&lt;/strong&gt; (4K) &lt;a href=&quot;http://old.nabble.com/attachment/25930493/0/smime.p7s&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25930493.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25930464</id>
	<title>Re: trouble with jndi database resource, uportal     3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-16T11:50:10Z</published>
	<updated>2009-10-16T11:50:10Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">Since the connection pool is only used by a single portlet and there
&lt;br&gt;is no need for any other webapp to see it, I placed my Resource in the
&lt;br&gt;the context.xml of my application (portlet)...I had tried placing my
&lt;br&gt;driver in the shared/lib too but that didn't help.
&lt;br&gt;&lt;br&gt;On Fri, Oct 16, 2009 at 1:06 PM, Susan Bramhall &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930464&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Are you putting the jndi information in the server context.xml or in the
&lt;br&gt;&amp;gt; applicationContext.xml?  It has to be in the server context to allow all the
&lt;br&gt;&amp;gt; portlets to share the connections.  And the jdbc library has to be shared as
&lt;br&gt;&amp;gt; well.
&lt;br&gt;&amp;gt; Susan
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does anyone have experience using jndi database resources for portlets
&lt;br&gt;&amp;gt; that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
&lt;br&gt;&amp;gt; are running via jndi connection pooling in our uportal 2.6.1
&lt;br&gt;&amp;gt; environment on tomcat 5.5.25 and while they work great for 2.6.1, I
&lt;br&gt;&amp;gt; can't get the portlets to run on 3.1.1 unless I hard-code the
&lt;br&gt;&amp;gt; connection information into the portlets. &amp;nbsp;The portlets are not
&lt;br&gt;&amp;gt; spring-based at this point. I keep getting the following exception
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; My context.xml configuration is as follows
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 	&amp;lt;Resource name=&amp;quot;jdbc/cancellation&amp;quot; auth=&amp;quot;Container&amp;quot;
&lt;br&gt;&amp;gt; type=&amp;quot;javax.sql.DataSource&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;username=&amp;quot;user&amp;quot; password=&amp;quot;password&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;driverClassName=&amp;quot;net.sourceforge.jtds.jdbc.Driver&amp;quot;
&lt;br&gt;&amp;gt; url=&amp;quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;maxActive=&amp;quot;10&amp;quot; maxIdle=&amp;quot;5&amp;quot; maxWait=&amp;quot;1000&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;poolPreparedStatements=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;removeAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;removeAbandonedTimeout=&amp;quot;300&amp;quot;
&lt;br&gt;&amp;gt; 	 &amp;nbsp;logAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;gt; 	/&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I usually do not use the web.xml resource-ref...it seems to work without
&lt;br&gt;&amp;gt; it...
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;lt;resource-ref&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;lt;/resource-ref&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ...and it actually starts throwing a different error when I include it
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
&lt;br&gt;&amp;gt; driver of class '' for connect URL 'null'
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I tried moving my context.xml to conf/Catalina/localhost and changing
&lt;br&gt;&amp;gt; the name of the file to appname.xml and this gave me yet another error
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
&lt;br&gt;&amp;gt; driver class 'net.sourceforge.jtds.jdbc.Driver'
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does anyone have any ideas?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Susan Bramhall (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930464&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)
&lt;br&gt;&amp;gt; Senior Developer, Infrastructure Systems and Architecture (formerly T&amp;P)
&lt;br&gt;&amp;gt; Yale University Information Technology Services (ITS)
&lt;br&gt;&amp;gt; 25 Science Park, 150 Munson St, New Haven, CT 06520
&lt;br&gt;&amp;gt; Phone:  203 432 6697
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930464&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930464&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;
&lt;br&gt;&amp;gt; To unsubscribe, change settings or access archives, see
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930464&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930464&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25930464.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25930007</id>
	<title>XSLT Cache Behavior</title>
	<published>2009-10-16T11:16:42Z</published>
	<updated>2009-10-16T11:16:42Z</updated>
	<author>
		<name>Arlo White</name>
	</author>
	<content type="html">portal.properties has the following section
&lt;br&gt;&lt;br&gt;# Controls whether or not pre-compiled stylesheets should be cached.
&lt;br&gt;# Setting this to &amp;quot;on&amp;quot; improves performance, but then changes to
&lt;br&gt;# any stylesheet files (.xsl) will not take effect until
&lt;br&gt;# the portal has been restarted.
&lt;br&gt;#
&lt;br&gt;org.jasig.portal.utils.XSLT.stylesheet_root_caching=on
&lt;br&gt;&lt;br&gt;This seems to indicate that .xsl files are cached permanently. However, 
&lt;br&gt;some of our that channels pull in xsl files externally seem to update 
&lt;br&gt;after a file change in about 4 hours. How does XSL caching work in the 
&lt;br&gt;portal? Does the caching behavior change depending on whether the xsl 
&lt;br&gt;files are local or external?
&lt;br&gt;&lt;br&gt;To be clear, I'm talking about native uPortal channels where the .ssl 
&lt;br&gt;file has external and/or internal urls, for example:
&lt;br&gt;&amp;lt;?xml-stylesheet title=&amp;quot;viewRecord&amp;quot; 
&lt;br&gt;href=&amp;quot;&lt;a href=&quot;http://calpoly.edu/some/external/source/file.xsl&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://calpoly.edu/some/external/source/file.xsl&lt;/a&gt;&amp;quot; type=&amp;quot;text/xsl&amp;quot; 
&lt;br&gt;media=&amp;quot;all&amp;quot;?&amp;gt;
&lt;br&gt;&amp;lt;?xml-stylesheet title=&amp;quot;viewHelp&amp;quot; 
&lt;br&gt;href=&amp;quot;/edu/calpoly/internal/channel/file.xsl&amp;quot; type=&amp;quot;text/xsl&amp;quot; 
&lt;br&gt;media=&amp;quot;netscape&amp;quot;?&amp;gt;
&lt;br&gt;&lt;br /&gt;&lt;tt&gt;[awhite.vcf]&lt;/tt&gt;&lt;br /&gt;&lt;hr align=&quot;left&quot; width=&quot;300&quot; /&gt;&lt;tt&gt;begin:vcard
&lt;br&gt;fn:Arlo White
&lt;br&gt;n:White;Arlo
&lt;br&gt;org:ITS;Application Integration
&lt;br&gt;adr;dom:Calpoly;;Chase Hall, Room 215;San Luis Obispo;CA
&lt;br&gt;email;internet:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25930007&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;awhite@...&lt;/a&gt;
&lt;br&gt;title:Analyst/Programmer
&lt;br&gt;tel;work:(805) 756-5211
&lt;br&gt;x-mozilla-html:TRUE
&lt;br&gt;version:2.1
&lt;br&gt;end:vcard
&lt;br&gt;&lt;br&gt;&lt;/tt&gt;&lt;hr align=&quot;left&quot; width=&quot;300&quot; /&gt;&lt;br /&gt; &lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;smime.p7s&lt;/strong&gt; (4K) &lt;a href=&quot;http://old.nabble.com/attachment/25930007/0/smime.p7s&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/XSLT-Cache-Behavior-tp25930007p25930007.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25929848</id>
	<title>Re: trouble with jndi database resource, uportal 3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-16T11:06:16Z</published>
	<updated>2009-10-16T11:06:16Z</updated>
	<author>
		<name>Susan Bramhall</name>
	</author>
	<content type="html">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;&gt;
&lt;html&gt;
&lt;head&gt;
  &lt;meta content=&quot;text/html;charset=ISO-8859-1&quot; http-equiv=&quot;Content-Type&quot;&gt;
&lt;/head&gt;
&lt;body bgcolor=&quot;#ffffff&quot; text=&quot;#000000&quot;&gt;
Are you putting the jndi information in the server context.xml or in
the applicationContext.xml?&amp;nbsp; It has to be in the server context to
allow all the portlets to share the connections.&amp;nbsp; And the jdbc library
has to be shared as well.&lt;br&gt;
Susan&lt;br&gt;
&lt;br&gt;
Curtis Garman wrote:
&lt;blockquote cite=&quot;mid:70ca076d0910161027i32922a1eqee9dd3c7a67686bc@mail.gmail.com&quot; type=&quot;cite&quot;&gt;
  &lt;pre wrap=&quot;&quot;&gt;Does anyone have experience using jndi database resources for portlets
that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
are running via jndi connection pooling in our uportal 2.6.1
environment on tomcat 5.5.25 and while they work great for 2.6.1, I
can't get the portlets to run on 3.1.1 unless I hard-code the
connection information into the portlets.  The portlets are not
spring-based at this point. I keep getting the following exception

javax.naming.NameNotFoundException: Name jdbc is not bound in this Context

My context.xml configuration is as follows

	&amp;lt;Resource name=&quot;jdbc/cancellation&quot; auth=&quot;Container&quot; type=&quot;javax.sql.DataSource&quot;
	  username=&quot;user&quot; password=&quot;password&quot;
	  driverClassName=&quot;net.sourceforge.jtds.jdbc.Driver&quot;
url=&quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&quot;
	  maxActive=&quot;10&quot; maxIdle=&quot;5&quot; maxWait=&quot;1000&quot;
	  poolPreparedStatements=&quot;true&quot;
	  removeAbandoned=&quot;true&quot;
	  removeAbandonedTimeout=&quot;300&quot;
	  logAbandoned=&quot;true&quot;
	/&amp;gt;

I usually do not use the web.xml resource-ref...it seems to work without it...

 &amp;lt;resource-ref&amp;gt;
      &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
      &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
      &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
      &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
  &amp;lt;/resource-ref&amp;gt;

...and it actually starts throwing a different error when I include it

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
driver of class '' for connect URL 'null'

I tried moving my context.xml to conf/Catalina/localhost and changing
the name of the file to appname.xml and this gave me yet another error

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
driver class 'net.sourceforge.jtds.jdbc.Driver'

Does anyone have any ideas?

  &lt;/pre&gt;
&lt;/blockquote&gt;
&lt;br&gt;
&lt;div class=&quot;moz-signature&quot;&gt;-- &lt;br&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; &quot;&gt;
&lt;meta name=&quot;Generator&quot; content=&quot;Microsoft Word 12 (filtered)&quot;&gt;

&lt;div class=&quot;Section1&quot;&gt;
&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;Susan Bramhall&lt;/span&gt; (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25929848&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;susan.bramhall@...&lt;/a&gt;)&lt;br&gt;
Senior Developer, Infrastructure Systems and Architecture (formerly
T&amp;amp;P)&lt;br&gt;
Yale University Information Technology Services (ITS)&lt;br&gt;
25 Science Park, 150 Munson St, New Haven, CT 06520&lt;br&gt;
Phone: &amp;nbsp;203 432 6697&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25929848&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25929848&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/pre&gt;
&lt;/BODY&gt;
&lt;/html&gt;

&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25929848.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25929354</id>
	<title>portlet-overlay method and context.xml</title>
	<published>2009-10-16T10:33:19Z</published>
	<updated>2009-10-16T10:33:19Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">I seem to loose my META-INF/context.xml when deploying portlets via
&lt;br&gt;the portlet overlay method...has anyone else experienced this or know
&lt;br&gt;why this is the case?
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25929354&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25929354&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/portlet-overlay-method-and-context.xml-tp25929354p25929354.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25929244</id>
	<title>trouble with jndi database resource, uportal 3.1.1, and tomcat 6.0.20</title>
	<published>2009-10-16T10:27:20Z</published>
	<updated>2009-10-16T10:27:20Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">Does anyone have experience using jndi database resources for portlets
&lt;br&gt;that deploy in uportal 3.1.1 on tomcat 6. I've got some portlets we
&lt;br&gt;are running via jndi connection pooling in our uportal 2.6.1
&lt;br&gt;environment on tomcat 5.5.25 and while they work great for 2.6.1, I
&lt;br&gt;can't get the portlets to run on 3.1.1 unless I hard-code the
&lt;br&gt;connection information into the portlets. &amp;nbsp;The portlets are not
&lt;br&gt;spring-based at this point. I keep getting the following exception
&lt;br&gt;&lt;br&gt;javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
&lt;br&gt;&lt;br&gt;My context.xml configuration is as follows
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;Resource name=&amp;quot;jdbc/cancellation&amp;quot; auth=&amp;quot;Container&amp;quot; type=&amp;quot;javax.sql.DataSource&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; username=&amp;quot;user&amp;quot; password=&amp;quot;password&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; driverClassName=&amp;quot;net.sourceforge.jtds.jdbc.Driver&amp;quot;
&lt;br&gt;url=&amp;quot;jdbc:jtds:sqlserver://server:1433;databaseName=database&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; maxActive=&amp;quot;10&amp;quot; maxIdle=&amp;quot;5&amp;quot; maxWait=&amp;quot;1000&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; poolPreparedStatements=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; removeAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; removeAbandonedTimeout=&amp;quot;300&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; logAbandoned=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /&amp;gt;
&lt;br&gt;&lt;br&gt;I usually do not use the web.xml resource-ref...it seems to work without it...
&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;lt;resource-ref&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;description&amp;gt;DB Connection&amp;lt;/description&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-ref-name&amp;gt;jdbc/cancellation&amp;lt;/res-ref-name&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;lt;/resource-ref&amp;gt;
&lt;br&gt;&lt;br&gt;...and it actually starts throwing a different error when I include it
&lt;br&gt;&lt;br&gt;org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC
&lt;br&gt;driver of class '' for connect URL 'null'
&lt;br&gt;&lt;br&gt;I tried moving my context.xml to conf/Catalina/localhost and changing
&lt;br&gt;the name of the file to appname.xml and this gave me yet another error
&lt;br&gt;&lt;br&gt;org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC
&lt;br&gt;driver class 'net.sourceforge.jtds.jdbc.Driver'
&lt;br&gt;&lt;br&gt;Does anyone have any ideas?
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25929244&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25929244&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trouble-with-jndi-database-resource%2C-uportal-3.1.1%2C-and-tomcat-6.0.20-tp25929244p25929244.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25928682</id>
	<title>Handling CAS timeouts and proxy tickets</title>
	<published>2009-10-16T09:53:46Z</published>
	<updated>2009-10-16T09:53:46Z</updated>
	<author>
		<name>Paul Gazda</name>
	</author>
	<content type="html">&lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot; xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot; xmlns:w=&quot;urn:schemas-microsoft-com:office:word&quot; xmlns:m=&quot;http://schemas.microsoft.com/office/2004/12/omml&quot; xmlns=&quot;http://www.w3.org/TR/REC-html40&quot;&gt;

&lt;head&gt;
&lt;meta http-equiv=Content-Type content=&quot;text/html; charset=us-ascii&quot;&gt;
&lt;meta name=Generator content=&quot;Microsoft Word 12 (filtered medium)&quot;&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot; /&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot; /&gt;
 &lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body lang=EN-US link=blue vlink=purple&gt;

&lt;div class=Section1&gt;

&lt;p class=MsoNormal&gt;We are running CAS 2 and will be updating to CAS 3. We have
a uPortal directory services channel backed by ldap that allows updates to
personal, department and group data that uses CAS proxy tickets to authenticate
to ldap. When CAS times out every 2 hours, proxy tickets cannot be obtained
until the user authenticates again. Sometimes the expiry can happen while the
user is entering data on an update page. When a submit button is finally
clicked, the CAS credentials have expired and the program&amp;#8217;s attempt to
get a proxy ticket can potentially fail, generating an error and requiring that
the user re-enter the data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;To avoid this, we have filter that traps the browser
request, determines if the CAS ticket is about to expire, and if it is, saves the
request, forces a re-authentication, then replays the request. The problem is
that this approach required significant modifications to the CAS code. We would
like to avoid having to make modifications to the CAS 3 code, but have not yet
come up with a way to either guarantee that a proxy ticket will be available
when a request is made, or seamlessly handle a CAS re-authentication and re-try
getting the proxy ticket to continue the processing stream.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;I would appreciate hearing how other institutions have dealt
with the problem of proxy tickets being unavailable in the midst of a
processing stream due to CAS credential expiration.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;Thanks.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;span style='font-size:10.0pt;font-family:&quot;Arial&quot;,&quot;sans-serif&quot;'&gt;Paul
Gazda&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;

&lt;/div&gt;


&lt;pre&gt;-- &lt;br /&gt;
You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25928682&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25928682&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;&lt;br /&gt;To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/pre&gt;
&lt;/BODY&gt;

&lt;/html&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Handling-CAS-timeouts-and-proxy-tickets-tp25928682p25928682.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25928276</id>
	<title>Re:Trunk 46830 will not deploy for me</title>
	<published>2009-10-16T09:15:55Z</published>
	<updated>2009-10-16T09:15:55Z</updated>
	<author>
		<name>Moore, William</name>
	</author>
	<content type="html">That worked OK. &amp;nbsp;Of course, then I didn't know for sure what I was supposed to do for the deployment. &amp;nbsp;I went ahead and ran ant deploy-ear (without a clean). &amp;nbsp;That also built correctly. &amp;nbsp;I have not yet initialized the database for this version and exported/imported--so that's as far as I can get.
&lt;br&gt;&lt;br&gt;I did go ahead and try to log in and it looks like CAS didn't clean. &amp;nbsp;It seems I often need to delete the cas directory in webapps when I apply significant changes to cas. &amp;nbsp;Is that 'normal'? &amp;nbsp;I did run an ant clean before I did anything today.
&lt;br&gt;&lt;br&gt;Is there somewhere that the targets are documented a bit more clearly?
&lt;br&gt;&lt;br&gt;Thanks much.
&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25928276&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25928276&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3ATrunk-46830-will-not-deploy-for-me-tp25928276p25928276.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25927982</id>
	<title>Re:minimize channels/portlets</title>
	<published>2009-10-16T09:06:56Z</published>
	<updated>2009-10-16T09:06:56Z</updated>
	<author>
		<name>Moore, William</name>
	</author>
	<content type="html">Can you provide a bit more context for this message about minimizing channels/portlets? &amp;nbsp;It looks like maybe it's in universality.xsl, but it still is not obvious to me where it goes.
&lt;br&gt;&lt;br&gt;Thanks.
&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927982&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927982&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3Aminimize-channels-portlets-tp25927982p25927982.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25927729</id>
	<title>Re: uportal 3.1.1 and build filtering</title>
	<published>2009-10-16T08:53:10Z</published>
	<updated>2009-10-16T08:53:10Z</updated>
	<author>
		<name>aaronbrown</name>
	</author>
	<content type="html">Curtis Garman wrote:
&lt;br&gt;&amp;gt; Aaron, one more question...you mentioned you have three servers...how
&lt;br&gt;&amp;gt; do you handle your project source code? Do you have a copy of the
&lt;br&gt;&amp;gt; project files on each server to be able to redeploy or do you have a
&lt;br&gt;&amp;gt; script or something that deploys across servers or what?
&lt;br&gt;&lt;br&gt;We have a test system, used by our QA team for final testing before
&lt;br&gt;release, which is as close a copy to our production system as possible.
&lt;br&gt;&amp;nbsp;We build our production code there (as .war files) and use a script to
&lt;br&gt;deploy to all the servers/tomcats. &amp;nbsp;We have more production servers than
&lt;br&gt;the ones I mentioned, but the others are VMs with one tomcat each -
&lt;br&gt;their performance isn't as good as a real hardware server, so they're
&lt;br&gt;mostly useful during peak usage times. &amp;nbsp;In all, it makes for quite a few
&lt;br&gt;tomcat instances, so we've been using deployment scripts for some time
&lt;br&gt;now and it works pretty well for us.
&lt;br&gt;&lt;br&gt;&amp;nbsp;- Aaron
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Aaron Brown (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927729&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt; | 785-864-0462)
&lt;br&gt;University of Kansas
&lt;br&gt;&amp;nbsp; Information Services
&lt;br&gt;&amp;nbsp; &amp;nbsp; System Design
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; Enterprise System Integration
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Developer
&lt;br&gt;&lt;br /&gt; &lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;smime.p7s&lt;/strong&gt; (9K) &lt;a href=&quot;http://old.nabble.com/attachment/25927729/0/smime.p7s&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/uportal-3.1.1-and-build-filtering-tp25910378p25927729.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25927573</id>
	<title>Re: uportal 3.1.1 and build filtering</title>
	<published>2009-10-16T08:42:45Z</published>
	<updated>2009-10-16T08:42:45Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">Aaron, one more question...you mentioned you have three servers...how
&lt;br&gt;do you handle your project source code? Do you have a copy of the
&lt;br&gt;project files on each server to be able to redeploy or do you have a
&lt;br&gt;script or something that deploys across servers or what?
&lt;br&gt;&lt;br&gt;Curtis
&lt;br&gt;&lt;br&gt;On Fri, Oct 16, 2009 at 10:29 AM, Curtis Garman &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927573&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Aaron, that worked beautifully...exactly what I was needing to
&lt;br&gt;&amp;gt; accomplish...I still may do some filtering too later too but that is
&lt;br&gt;&amp;gt; definitely a much cleaner way to handle the log4j config...seems to me
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; log4j.appender.R.File=${catalina.base}/logs/portal.log
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; should be the default config for the portal and all jasig
&lt;br&gt;&amp;gt; portlets...seems like a good &amp;quot;convention over configuration&amp;quot;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Thu, Oct 15, 2009 at 3:50 PM, Curtis Garman &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927573&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; hmm...ok, I'll try it...that's exactly what I'm trying to accomplish
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; On Thu, Oct 15, 2009 at 3:47 PM, Aaron Brown &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927573&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Are your tomcat instances on the same server or different servers?
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Mine are on the same server...so not sure that ${catalina.base} would
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; do it...each instance of tomcat would need it's own environment
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; variable wouldn't it?...I don't want my build dependent on a list of
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; environment variables that are dependent on one machine. If you can
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; explain your setup further, I would appreciate it.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; In our production environment, we have three servers with six tomcat
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; instances each.  They are each fully self-sufficient copies (no shared
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; files between them), and they all use identical log4j.properties files,
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; thanks to the ${catalina.base} property.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Here is the relevant snippet from our log4j.properties file, with some
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; placeholder names:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; log4j.appender.Whatever.File=${catalina.base}/logs/SomeLogFile.log
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Log4j is smart enough to detect the root of the tomcat which executed
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; it, and uses that for its path.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;  - Aaron
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; --
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Aaron Brown (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927573&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt; | 785-864-0462)
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; University of Kansas
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;  Information Services
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;    System Design
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;      Enterprise System Integration
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;        Developer
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; --
&lt;br&gt;&amp;gt;&amp;gt; Curtis Garman
&lt;br&gt;&amp;gt;&amp;gt; Web Programmer
&lt;br&gt;&amp;gt;&amp;gt; Heartland Community College
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt; Curtis Garman
&lt;br&gt;&amp;gt; Web Programmer
&lt;br&gt;&amp;gt; Heartland Community College
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927573&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927573&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/uportal-3.1.1-and-build-filtering-tp25910378p25927573.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25927311</id>
	<title>Re: uportal 3.1.1 and build filtering</title>
	<published>2009-10-16T08:29:06Z</published>
	<updated>2009-10-16T08:29:06Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">Aaron, that worked beautifully...exactly what I was needing to
&lt;br&gt;accomplish...I still may do some filtering too later too but that is
&lt;br&gt;definitely a much cleaner way to handle the log4j config...seems to me
&lt;br&gt;&lt;br&gt;log4j.appender.R.File=${catalina.base}/logs/portal.log
&lt;br&gt;&lt;br&gt;should be the default config for the portal and all jasig
&lt;br&gt;portlets...seems like a good &amp;quot;convention over configuration&amp;quot;
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Thu, Oct 15, 2009 at 3:50 PM, Curtis Garman &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927311&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;curt.garman@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; hmm...ok, I'll try it...that's exactly what I'm trying to accomplish
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Thu, Oct 15, 2009 at 3:47 PM, Aaron Brown &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927311&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Are your tomcat instances on the same server or different servers?
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Mine are on the same server...so not sure that ${catalina.base} would
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; do it...each instance of tomcat would need it's own environment
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; variable wouldn't it?...I don't want my build dependent on a list of
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; environment variables that are dependent on one machine. If you can
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; explain your setup further, I would appreciate it.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; In our production environment, we have three servers with six tomcat
&lt;br&gt;&amp;gt;&amp;gt; instances each.  They are each fully self-sufficient copies (no shared
&lt;br&gt;&amp;gt;&amp;gt; files between them), and they all use identical log4j.properties files,
&lt;br&gt;&amp;gt;&amp;gt; thanks to the ${catalina.base} property.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Here is the relevant snippet from our log4j.properties file, with some
&lt;br&gt;&amp;gt;&amp;gt; placeholder names:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; log4j.appender.Whatever.File=${catalina.base}/logs/SomeLogFile.log
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Log4j is smart enough to detect the root of the tomcat which executed
&lt;br&gt;&amp;gt;&amp;gt; it, and uses that for its path.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;  - Aaron
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; --
&lt;br&gt;&amp;gt;&amp;gt; Aaron Brown (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927311&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt; | 785-864-0462)
&lt;br&gt;&amp;gt;&amp;gt; University of Kansas
&lt;br&gt;&amp;gt;&amp;gt;  Information Services
&lt;br&gt;&amp;gt;&amp;gt;    System Design
&lt;br&gt;&amp;gt;&amp;gt;      Enterprise System Integration
&lt;br&gt;&amp;gt;&amp;gt;        Developer
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt; Curtis Garman
&lt;br&gt;&amp;gt; Web Programmer
&lt;br&gt;&amp;gt; Heartland Community College
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927311&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25927311&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/uportal-3.1.1-and-build-filtering-tp25910378p25927311.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25915823</id>
	<title>Re: uportal 3.1.1 and build filtering</title>
	<published>2009-10-15T13:50:37Z</published>
	<updated>2009-10-15T13:50:37Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">hmm...ok, I'll try it...that's exactly what I'm trying to accomplish
&lt;br&gt;&lt;br&gt;On Thu, Oct 15, 2009 at 3:47 PM, Aaron Brown &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25915823&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;&amp;gt; Are your tomcat instances on the same server or different servers?
&lt;br&gt;&amp;gt;&amp;gt; Mine are on the same server...so not sure that ${catalina.base} would
&lt;br&gt;&amp;gt;&amp;gt; do it...each instance of tomcat would need it's own environment
&lt;br&gt;&amp;gt;&amp;gt; variable wouldn't it?...I don't want my build dependent on a list of
&lt;br&gt;&amp;gt;&amp;gt; environment variables that are dependent on one machine. If you can
&lt;br&gt;&amp;gt;&amp;gt; explain your setup further, I would appreciate it.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; In our production environment, we have three servers with six tomcat
&lt;br&gt;&amp;gt; instances each.  They are each fully self-sufficient copies (no shared
&lt;br&gt;&amp;gt; files between them), and they all use identical log4j.properties files,
&lt;br&gt;&amp;gt; thanks to the ${catalina.base} property.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Here is the relevant snippet from our log4j.properties file, with some
&lt;br&gt;&amp;gt; placeholder names:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; log4j.appender.Whatever.File=${catalina.base}/logs/SomeLogFile.log
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Log4j is smart enough to detect the root of the tomcat which executed
&lt;br&gt;&amp;gt; it, and uses that for its path.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;  - Aaron
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt; Aaron Brown (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25915823&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt; | 785-864-0462)
&lt;br&gt;&amp;gt; University of Kansas
&lt;br&gt;&amp;gt;  Information Services
&lt;br&gt;&amp;gt;    System Design
&lt;br&gt;&amp;gt;      Enterprise System Integration
&lt;br&gt;&amp;gt;        Developer
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25915823&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25915823&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/uportal-3.1.1-and-build-filtering-tp25910378p25915823.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25915766</id>
	<title>Re: uportal 3.1.1 and build filtering</title>
	<published>2009-10-15T13:47:05Z</published>
	<updated>2009-10-15T13:47:05Z</updated>
	<author>
		<name>aaronbrown</name>
	</author>
	<content type="html">Curtis Garman wrote:
&lt;br&gt;&amp;gt; Are your tomcat instances on the same server or different servers?
&lt;br&gt;&amp;gt; Mine are on the same server...so not sure that ${catalina.base} would
&lt;br&gt;&amp;gt; do it...each instance of tomcat would need it's own environment
&lt;br&gt;&amp;gt; variable wouldn't it?...I don't want my build dependent on a list of
&lt;br&gt;&amp;gt; environment variables that are dependent on one machine. If you can
&lt;br&gt;&amp;gt; explain your setup further, I would appreciate it.
&lt;br&gt;&lt;br&gt;In our production environment, we have three servers with six tomcat
&lt;br&gt;instances each. &amp;nbsp;They are each fully self-sufficient copies (no shared
&lt;br&gt;files between them), and they all use identical log4j.properties files,
&lt;br&gt;thanks to the ${catalina.base} property.
&lt;br&gt;&lt;br&gt;Here is the relevant snippet from our log4j.properties file, with some
&lt;br&gt;placeholder names:
&lt;br&gt;&lt;br&gt;log4j.appender.Whatever.File=${catalina.base}/logs/SomeLogFile.log
&lt;br&gt;&lt;br&gt;Log4j is smart enough to detect the root of the tomcat which executed
&lt;br&gt;it, and uses that for its path.
&lt;br&gt;&lt;br&gt;&amp;nbsp;- Aaron
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Aaron Brown (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25915766&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt; | 785-864-0462)
&lt;br&gt;University of Kansas
&lt;br&gt;&amp;nbsp; Information Services
&lt;br&gt;&amp;nbsp; &amp;nbsp; System Design
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; Enterprise System Integration
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Developer
&lt;br&gt;&lt;br /&gt; &lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;smime.p7s&lt;/strong&gt; (9K) &lt;a href=&quot;http://old.nabble.com/attachment/25915766/0/smime.p7s&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/uportal-3.1.1-and-build-filtering-tp25910378p25915766.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25915340</id>
	<title>Re: uportal 3.1.1 and build filtering</title>
	<published>2009-10-15T13:18:41Z</published>
	<updated>2009-10-15T13:18:41Z</updated>
	<author>
		<name>Curtis Garman</name>
	</author>
	<content type="html">Aaron,
&lt;br&gt;&lt;br&gt;Are your tomcat instances on the same server or different servers?
&lt;br&gt;Mine are on the same server...so not sure that ${catalina.base} would
&lt;br&gt;do it...each instance of tomcat would need it's own environment
&lt;br&gt;variable wouldn't it?...I don't want my build dependent on a list of
&lt;br&gt;environment variables that are dependent on one machine. If you can
&lt;br&gt;explain your setup further, I would appreciate it.
&lt;br&gt;&lt;br&gt;Curtis
&lt;br&gt;&lt;br&gt;On Thu, Oct 15, 2009 at 1:38 PM, Aaron Brown &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25915340&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Curtis Garman wrote:
&lt;br&gt;&amp;gt;&amp;gt; I'm setting up an environment with multiple instances of tomcat per
&lt;br&gt;&amp;gt;&amp;gt; server and was wondering if someone can give me a tip on setting up my
&lt;br&gt;&amp;gt;&amp;gt; build to take my server.home defined in my build.properties and use
&lt;br&gt;&amp;gt;&amp;gt; this as the base path for my tomcat log4j configuration files via
&lt;br&gt;&amp;gt;&amp;gt; swapping it in in place of a variable or something so that literally
&lt;br&gt;&amp;gt;&amp;gt; the only thing I have to do to deploy the same configuration to each
&lt;br&gt;&amp;gt;&amp;gt; jvm is change the server.home value.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; What exactly do you need to customize in log4j configs for each tomcat?
&lt;br&gt;&amp;gt;  We use multiple tomcats per server and use log4j's built-in
&lt;br&gt;&amp;gt; ${catalina.base} property to automagically reference each individual
&lt;br&gt;&amp;gt; tomcat's root.  The same log4j config file is distributed to every
&lt;br&gt;&amp;gt; tomcat, and they all use their own &amp;quot;logs&amp;quot; directories.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;  - Aaron
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --
&lt;br&gt;&amp;gt; Aaron Brown (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25915340&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt; | 785-864-0462)
&lt;br&gt;&amp;gt; University of Kansas
&lt;br&gt;&amp;gt;  Information Services
&lt;br&gt;&amp;gt;    System Design
&lt;br&gt;&amp;gt;      Enterprise System Integration
&lt;br&gt;&amp;gt;        Developer
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Curtis Garman
&lt;br&gt;Web Programmer
&lt;br&gt;Heartland Community College
&lt;br&gt;&lt;br&gt;--- 
&lt;br&gt;You are currently subscribed to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25915340&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;uportal-user@...&lt;/a&gt; as: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25915340&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lists@...&lt;/a&gt;
&lt;br&gt;To unsubscribe, change settings or access archives, see &lt;a href=&quot;http://www.ja-sig.org/wiki/display/JSG/uportal-user&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ja-sig.org/wiki/display/JSG/uportal-user&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/uportal-3.1.1-and-build-filtering-tp25910378p25915340.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25915236</id>
	<title>Re: uportal 3.1.1 and build filtering</title>
	<published>2009-10-15T11:38:45Z</published>
	<updated>2009-10-15T11:38:45Z</updated>
	<author>
		<name>aaronbrown</name>
	</author>
	<content type="html">Curtis Garman wrote:
&lt;br&gt;&amp;gt; I'm setting up an environment with multiple instances of tomcat per
&lt;br&gt;&amp;gt; server and was wondering if someone can give me a tip on setting up my
&lt;br&gt;&amp;gt; build to take my server.home defined in my build.properties and use
&lt;br&gt;&amp;gt; this as the base path for my tomcat log4j configuration files via
&lt;br&gt;&amp;gt; swapping it in in place of a variable or something so that literally
&lt;br&gt;&amp;gt; the only thing I have to do to deploy the same configuration to each
&lt;br&gt;&amp;gt; jvm is change the server.home value.
&lt;br&gt;&lt;br&gt;What exactly do you need to customize in log4j configs for each tomcat?
&lt;br&gt;&amp;nbsp;We use multiple tomcats per server and use log4j's built-in
&lt;br&gt;${catalina.base} property to automagically reference each individual
&lt;br&gt;tomcat's root. &amp;nbsp;The same log4j config file is distributed to every
&lt;br&gt;tomcat, and they all use their own &amp;quot;logs&amp;quot; directories.
&lt;br&gt;&lt;br&gt;&amp;nbsp;- Aaron
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Aaron Brown (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25915236&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;aaronb@...&lt;/a&gt; | 785-864-0462)
&lt;br&gt;University of Kansas
&lt;br&gt;&amp;nbsp; Information Services
&lt;br&gt;&amp;nbsp; &amp;nbsp; System Design
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; Enterprise System Integration
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Developer
&lt;br&gt;&lt;br /&gt; &lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;smime.p7s&lt;/strong&gt; (9K) &lt;a href=&quot;http://old.nabble.com/attachment/25915236/0/smime.p7s&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/uPortal---User-f22547.html&quot; embed=&quot;fixTarget[22547]&quot; target=&quot;_top&quot; &gt;uPortal - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/uportal-3.1.1-and-build-filtering-tp25910378p25915236.html" />
</entry>

</feed>
