Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 23 Next »

[11:12:56 CDT(-0500)] <rlewis> Hi, I am setting up uPortal 4.0.5 trying to use external cas server. put change in local.properties ran "ant deploy-ear" and "ant start" , no luck, login button still says localhost. Help!

[11:15:04 CDT(-0500)] <EricDalquist> so you followed all the steps here? https://wiki.jasig.org/display/UPM40/CAS

[11:17:58 CDT(-0500)] <EricDalquist> athena: https://issues.jasig.org/browse/UP-3517

[11:19:13 CDT(-0500)] <athena> yay thanks!

[11:19:36 CDT(-0500)] <athena> rlewis: set the Cas login url in security.properties to a blank string, redeploy, and restart

[11:36:18 CDT(-0500)] <rlewis> athena: do I make that change to the security.props file under uPortal or the file under tomcat? I am using the quick start pkg.

[11:38:00 CDT(-0500)] <athena> depends on how you want to work with that codebase - if you anticipate rebuilding it at some point you should probably change the source file and redeploy

[11:38:04 CDT(-0500)] <athena> otherwise you can just change the one in tomcat

[11:38:36 CDT(-0500)] <rlewis> ok, thanks

[13:21:40 CDT(-0500)] <drewwills> you there EricDalquist?

[13:21:44 CDT(-0500)] <EricDalquist> YES

[13:21:49 CDT(-0500)] <EricDalquist> oops ... capslock (tongue)

[13:22:00 CDT(-0500)] <drewwills> I've gotten myself in a bit of a bind...https://gist.github.com/3131072

[13:22:16 CDT(-0500)] <drewwills> remember that restapi invoker thingee?

[13:22:47 CDT(-0500)] <drewwills> at first I didn't think i would need the ability to invoke from a portlet, just from a servlet

[13:22:56 CDT(-0500)] <drewwills> but I was wrong, i do (sad)

[13:23:11 CDT(-0500)] <EricDalquist> (smile)

[13:23:27 CDT(-0500)] <EricDalquist> that is quite the stack trace

[13:23:37 CDT(-0500)] <drewwills> so i'm going back and enhancing it... adding the extra layer of portlet -> proxyservlet -> xContext include

[13:23:50 CDT(-0500)] <drewwills> yes... a bit ahrd to follow

[13:24:21 CDT(-0500)] <drewwills> i think i may not be wrapping so object sufficiently

[13:24:41 CDT(-0500)] <EricDalquist> heh ... I'm not sure this is even possible

[13:24:46 CDT(-0500)] <EricDalquist> let me read through the stack for a minute

[13:24:54 CDT(-0500)] <drewwills> https://gist.github.com/3131108

[13:25:41 CDT(-0500)] <drewwills> (sorry for system.out noise on that one)

[13:26:31 CDT(-0500)] <drewwills> (proxying servlet https://gist.github.com/3131119)

[13:26:36 CDT(-0500)] <EricDalquist> so this is going from

[13:27:51 CDT(-0500)] <EricDalquist> portal -> pluto container -> crossCTX -> pluto servlet -> your custom portlet filter -> local servlet dispatcher -> crossCTX -> portal rest api

[13:29:36 CDT(-0500)] <drewwills> sounds about right

[13:30:19 CDT(-0500)] <drewwills> trying to get at /api/permissions/etc

[13:30:33 CDT(-0500)] <EricDalquist> uhg

[13:30:38 CDT(-0500)] <EricDalquist> this is really really really gross

[13:31:02 CDT(-0500)] <drewwills> (the more I mess with this, the more curios I get about maybe putting an API jar in shared and registering a request attribute)

[13:31:23 CDT(-0500)] <EricDalquist> heh

[13:31:24 CDT(-0500)] <EricDalquist> yeah

[13:31:29 CDT(-0500)] <EricDalquist> that is probably more sane ...

[13:32:23 CDT(-0500)] <EricDalquist> really the best would be a API jar in shared and providing it as a PortletContext attribute

[13:32:33 CDT(-0500)] <drewwills> bb in a bit...

[13:32:35 CDT(-0500)] <EricDalquist> though that may require a bit more work up front in uPortal to expose that

[13:32:39 CDT(-0500)] <EricDalquist> oh ...

[13:32:47 CDT(-0500)] <EricDalquist> well let me know when you're back

[13:32:49 CDT(-0500)] <EricDalquist> and we can look at this more

[13:33:31 CDT(-0500)] <drewwills> yeah sorry mtg crept up on me

[13:39:08 CDT(-0500)] <drewwills> ok, false alarm... meeting moved

[13:39:21 CDT(-0500)] <drewwills> i have another at noon ()20 min though

[13:39:41 CDT(-0500)] <EricDalquist> so in that stack trace

[13:39:51 CDT(-0500)] <EricDalquist> the last caused by

[13:40:55 CDT(-0500)] <drewwills> yep

[13:41:37 CDT(-0500)] <EricDalquist> it looks like spring is doing something around request attributes and includes

[13:42:08 CDT(-0500)] <drewwills> yeah... messing with them when wrapping, restoring when unwrapping

[13:42:12 CDT(-0500)] <EricDalquist> yeah

[13:42:25 CDT(-0500)] <EricDalquist> I'm assuming it is doing this to deal with spring dispatcher including another spring dispatcher

[13:42:29 CDT(-0500)] <EricDalquist> which is good since that is happening here

[13:42:57 CDT(-0500)] <EricDalquist> the problem is we have logic in uPortal that is supposed to prevent portlet code from messing with certain classes of attributes

[13:43:15 CDT(-0500)] <drewwills> yeah, looks that way

[13:43:27 CDT(-0500)] <EricDalquist> so when spring is doing it's restore it triggers that protection

[13:43:36 CDT(-0500)] <EricDalquist> one thought is to change PortletRequestContextImpl

[13:43:43 CDT(-0500)] <EricDalquist> and have it do a silent ignore

[13:43:50 CDT(-0500)] <EricDalquist> or a logger.debug ignore

[13:43:53 CDT(-0500)] <EricDalquist> instead of throwing

[13:44:09 CDT(-0500)] <EricDalquist> which would probably be reasonable

[13:44:16 CDT(-0500)] <EricDalquist> so go into org.jasig.portal.portlet.container.PortletRequestContextImpl.setAttribute(PortletRequestContextImpl.java:169)

[13:44:23 CDT(-0500)] <EricDalquist> and change the throw

[13:44:26 CDT(-0500)] <EricDalquist> to a logger.debug

[13:44:30 CDT(-0500)] <EricDalquist> and a return

[13:44:47 CDT(-0500)] <EricDalquist> that will have the desired effect of not letting portlets touch those attributes

[13:45:01 CDT(-0500)] <EricDalquist> and let spring's restore process work

[13:47:33 CDT(-0500)] <drewwills> trying that

  • No labels