You will have to override getContent() method. Best regards,
Mark C. Orciuch Next Generation Solutions, Ltd. e-Mail: [EMAIL PROTECTED] web: http://www.ngsltd.com > -----Original Message----- > From: Jacob Kjome [mailto:[EMAIL PROTECTED] > Sent: Thursday, March 06, 2003 5:43 PM > To: Jetspeed Users List > Subject: RE: obtaining User object when overriding the IFramePortlet > getSource method??? > > > > Hmm... That's an interesting approach and I'll look into it. > However, this > should be able to just work without interaction by the user. The > project I > am working on requires this functionality with no outside > interaction. The > username and password in the environment needs to be used, automatically, > as the username and password for BASIC authentication in the IFrames. > > Is there no way to get a RunData object from within the getSource() > method? Seems to me that every method in a portlet ought to have > access to > that via something like a getRunData() method. Why pass a bunch > of methods > a RunData object as a parameter when it could simply be gotten at > any time > with a getRunData() method? Or was that already thought of but > since it is > the way it is, the interface can't be changed? Am I going to > have to hack > at the source to enable this capability? > > Jake > > At 04:20 PM 3/6/2003 -0600, you wrote: > >Jacob, > > > >I think that you can somewhat achieve this by declaring 'username' and > >'password' parameters for your portlet and then set the 'source' > parameter > >as follows: > >https://${username}:[EMAIL PROTECTED]/myapp/myservlet. > Of course, > >the user would have to customize the portlet to provide their > credentials. > > > >Best regards, > > > >Mark Orciuch - [EMAIL PROTECTED] > >Jakarta Jetspeed - Enterprise Portal in Java > >http://jakarta.apache.org/jetspeed/ > > > -----Original Message----- > > > From: Jacob Kjome [mailto:[EMAIL PROTECTED] > > > Sent: Thursday, March 06, 2003 3:54 PM > > > To: [EMAIL PROTECTED] > > > Subject: obtaining User object when overriding the IFramePortlet > > > getSource method??? > > > > > > > > > Hi, > > > > > > I'm wondering how I might obtain a handle on the JetspeedUser object > > > when overriding the getSource() method of the IFramePortlet? > > > > > > The reason I need this is so that I can grab the logged-in user's > > > username and password and send that info along with the URL that is > > > configured via the .xreg file in order to provide BASIC authentication > > > information automatically to the app running in the IFrame. So.... > > > > > > <portlet-entry name="MyPortlet" hidden="false" type="ref" > > > parent="IFramePortlet" application="false"> > > > <security role="turbine"/> > > > <security-ref parent="user-only"/> > > > <meta-info> > > > <title>My Portlet</title> > > > <description>A custom example IFramePortlet</description> > > > </meta-info> > > > > <classname>com.mycompany.portal.portlets.MyIFramePortlet</classname> > > > <parameter name="source" > > > value="https://www.myserver.com/myapp/myservlet" > > > hidden="false" cachedOnName="true" cachedOnValue="true"/> > > > <media-type ref="html"/> > > > <url cachedOnURL="true"/> > > > <category group="Jetspeed">frames</category> > > > </portlet-entry> > > > > > > > > > Then in the overridden getSource() method of MyIFramePortlet, I > > > grab the current > > > source defined in the config (above). After that I need to, somehow, > > > access the User object so I can do getUsername() and > > > getPassword(). It would look something like this... > > > > > > public String getSource() { > > > String source = super(); > > > if (source == null) return null; > > > int index = source.indexOf("https://"); > > > if (index == -1) { > > > index = source.indexOf("http://"); > > > } > > > if (index != -1) { > > > String user = runData.getUser().getUserName(); > > > String pass = runData.getUser().getPassword(); > > > String beginStr = configSource.substring(0, index); > > > String endStr = configSource.substring(index); > > > StringBuffer buff = new > > > StringBuffer(user.length()+pass.length()+source.length()+2); > > > source = > > > buff.append(beginStr).append(user).append(":").append(pass).append > > > ("@").append(endStr).toString(); > > > } > > > return source; > > > } > > > > > > The end result of all this would set the source for the IFrame as > > > something like... > > > > > > https://myusername:[EMAIL PROTECTED]/myapp/myservlet > > > > > > > > > For the above to work, though, I need some way to get the RunData > > > object or another object which provides access to the User object. > > > > > > Is there any way to make this work? > > > > > > Jake > > > > > > > > > -- > > > Best regards, > > > Jacob mailto:[EMAIL PROTECTED] > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > >--------------------------------------------------------------------- > >To unsubscribe, e-mail: [EMAIL PROTECTED] > >For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
