uPortal IRC Logs-2008-07-23

[00:15:49 EDT(-0400)] * athena7_ (n=athena7@adsl-99-130-145-3.dsl.wlfrct.sbcglobal.net) has joined ##uportal
[00:51:41 EDT(-0400)] * athena7 (n=athena7@adsl-99-130-144-158.dsl.wlfrct.sbcglobal.net) has joined ##uportal
[00:58:08 EDT(-0400)] * athena7_ (n=athena7@adsl-75-58-126-244.dsl.wlfrct.sbcglobal.net) has joined ##uportal
[09:11:35 EDT(-0400)] * athena7 (n=athena7@adsl-75-58-126-244.dsl.wlfrct.sbcglobal.net) has joined ##uportal
[09:11:54 EDT(-0400)] * anastasiac (n=team@142.150.154.160) has joined ##uportal
[09:17:29 EDT(-0400)] * EricDalquist (n=dalquist@bohemia.doit.wisc.edu) has joined ##uportal
[10:00:27 EDT(-0400)] * bulloche (n=bulloche@134.250.4.77) has joined ##uportal
[10:24:28 EDT(-0400)] * colinclark (n=colin@142.150.154.101) has joined ##uportal
[10:37:49 EDT(-0400)] * MarkRogers (n=MarkRoge@addhcp129.cc.umanitoba.ca) has joined ##uportal
[11:02:03 EDT(-0400)] * lennar1 (n=sparhk@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[11:41:58 EDT(-0400)] <athena7> anyone played with the duke calendar portlet much?
[11:42:10 EDT(-0400)] <EricDalquist> nope
[11:42:22 EDT(-0400)] <athena7> i'm trying to figure out what the best way to fix it up would be
[11:42:25 EDT(-0400)] <athena7> it still needs some work
[11:42:48 EDT(-0400)] <athena7> in particular, there's currently no way to have more than one account with the same service (like have 2 gmail accounts)
[11:43:09 EDT(-0400)] <EricDalquist> ah
[11:43:15 EDT(-0400)] <athena7> all the data is stored in the portlet preferences, and it's keyed together by the service name
[11:43:22 EDT(-0400)] <athena7> so like GMAIL.password or whatever
[11:43:31 EDT(-0400)] <athena7> maybe this stuff should just all get stored in hibernate tables instead?
[11:43:38 EDT(-0400)] <athena7> JPA, whatever
[11:43:41 EDT(-0400)] <EricDalquist> could be
[11:43:48 EDT(-0400)] <EricDalquist> if the data is getting complex enough
[11:43:52 EDT(-0400)] <athena7> i'm not sure if the preferences is really the best place for all this
[11:43:52 EDT(-0400)] <athena7> yeah
[11:43:53 EDT(-0400)] <EricDalquist> prefs only get you so far
[11:43:56 EDT(-0400)] <athena7> it's not really that bad
[11:44:12 EDT(-0400)] <athena7> username/password per account, depending on how the credentials are being done
[11:44:36 EDT(-0400)] <athena7> but coming up with a way to have multiple accounts for one service . . . it's starting to feel a little messy
[11:44:57 EDT(-0400)] <EricDalquist> yeah
[11:45:04 EDT(-0400)] <EricDalquist> there isn't a nice way to do that
[11:45:09 EDT(-0400)] <athena7> yeah
[11:45:09 EDT(-0400)] <EricDalquist> unless you get into string parsing
[11:45:32 EDT(-0400)] <athena7> kind of trying to think about what the best way to make sure the accounts line up with the keys in the spring config, too
[11:45:46 EDT(-0400)] <athena7> right now there are account identifiers like GMAIL or DUKE or whatever
[11:46:20 EDT(-0400)] <EricDalquist> enum?
[11:46:29 EDT(-0400)] <athena7> they're configurable though
[11:46:34 EDT(-0400)] <EricDalquist> ah
[11:46:43 EDT(-0400)] <athena7> we don't really know what services a given school might provide
[11:47:02 EDT(-0400)] <athena7> so i guess they need to stay spring-configured, but we want to make sure everything stays consistent in the db
[11:47:17 EDT(-0400)] <EricDalquist> yeah
[11:47:34 EDT(-0400)] <EricDalquist> the best you can do there is move those keys into their own table
[11:47:41 EDT(-0400)] <athena7> yeah i guess that makes sense
[11:47:46 EDT(-0400)] <EricDalquist> with the text keys and synthetic IDs
[11:47:53 EDT(-0400)] <athena7> that way at least they'd only need to get changed in one place
[11:47:53 EDT(-0400)] <EricDalquist> then key the actual accounts off the synthentic IDs
[11:47:56 EDT(-0400)] <athena7> by the way, i'm having a really weird problem with the weather portlet
[11:47:56 EDT(-0400)] <EricDalquist> yup
[11:48:04 EDT(-0400)] <EricDalquist> yay weird problems
[11:48:07 EDT(-0400)] <athena7> it refuses to do anything useful with the <portlet:namespace/> tag
[11:48:09 EDT(-0400)] <EricDalquist> this seems to be the week for them
[11:48:12 EDT(-0400)] <EricDalquist> reall?
[11:48:13 EDT(-0400)] <athena7> <portlet:renderURL/> works fine
[11:48:15 EDT(-0400)] <athena7> yeah
[11:48:23 EDT(-0400)] <EricDalquist> does it just act like the tag isn't there?
[11:48:35 EDT(-0400)] <athena7> it prints out <portlet:namespace/> in the html
[11:48:45 EDT(-0400)] <athena7> like it's just not reading it at all
[11:49:02 EDT(-0400)] <athena7> maybe i'll be magically fixed today
[11:49:09 EDT(-0400)] <athena7> (i'm kind of suspecting not really)
[11:49:38 EDT(-0400)] <EricDalquist> very weird
[11:49:48 EDT(-0400)] <athena7> yeah
[11:49:54 EDT(-0400)] <EricDalquist> did this used to work?
[11:50:49 EDT(-0400)] <athena7> no, nothing was namespaced before
[11:51:05 EDT(-0400)] <athena7> i was trying to make all the element IDs unique
[11:52:37 EDT(-0400)] <athena7> maybe i'll try one more clean install just in case
[11:53:08 EDT(-0400)] * holdorph (n=holdorph@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[11:58:43 EDT(-0400)] <athena7> ack, i see
[11:58:51 EDT(-0400)] <EricDalquist> ?
[11:59:34 EDT(-0400)] <athena7> i think it's not getting evaluated because it put it in quotes in the middle of things
[11:59:38 EDT(-0400)] <athena7> but i thought that should work?
[12:00:00 EDT(-0400)] <EricDalquist> not sure I follow?
[12:01:04 EDT(-0400)] <athena7> so i had things like id="<portlet:namespace/>thingyId"
[12:01:17 EDT(-0400)] <athena7> after assigning the result of <portlet:namespace/> to a variable
[12:01:18 EDT(-0400)] <EricDalquist> that should work
[12:01:30 EDT(-0400)] <EricDalquist> can you paste the whole line in?
[12:01:31 EDT(-0400)]

<athena7> and using id="$

Unknown macro: {namespace}

thingyId" it works fine


[12:01:33 EDT(-0400)] <athena7> sure
[12:02:05 EDT(-0400)]

<athena7> <form:form commandName="weatherEditCommand" action="$

Unknown macro: {formSearchAction}

" id="<portlet:namespace/>weatherSearchForm">


[12:02:15 EDT(-0400)] <athena7> it wasn't working in non-spring tags too though
[12:02:15 EDT(-0400)] <EricDalquist> ah
[12:02:16 EDT(-0400)] <EricDalquist> yeah
[12:02:17 EDT(-0400)] <athena7> in the javascript
[12:02:30 EDT(-0400)] <EricDalquist> you cannot embedded JSP tags within other JSP tags
[12:02:41 EDT(-0400)] <EricDalquist> if that was just a <form > you would be fine
[12:02:50 EDT(-0400)] <athena7> yeah, hm
[12:02:53 EDT(-0400)] <EricDalquist> but it is a Spring JSP tag
[12:02:58 EDT(-0400)] <athena7> maybe it was working in the javascript and i just didn' tnotice it?
[12:03:01 EDT(-0400)] <EricDalquist> so that isn't allowed
[12:03:08 EDT(-0400)] <athena7> i thought i'd searched the whole page, but i bet maybe i didn't
[12:03:09 EDT(-0400)] <athena7> yeah
[12:03:11 EDT(-0400)] <athena7> that makes sense
[12:03:22 EDT(-0400)] <EricDalquist> I usually just assign it to a var once at the top of the page
[12:03:25 EDT(-0400)] <EricDalquist> and use it from there
[12:03:32 EDT(-0400)] <EricDalquist> I think portlet:namespace has a var attribute
[12:03:33 EDT(-0400)] <athena7> yeah
[12:03:48 EDT(-0400)] <athena7> might as well just do it that way and use it everywhere else
[12:04:17 EDT(-0400)] <EricDalquist> yup
[12:04:36 EDT(-0400)] <EricDalquist> you could probably even move that assingment into a includes.jsp
[12:04:41 EDT(-0400)] <athena7> yep
[12:12:50 EDT(-0400)] <higpetter> this @Annotation stuff drives me crazy...
[12:13:10 EDT(-0400)] <EricDalquist> ?
[12:15:10 EDT(-0400)] * holdorph actually quite enjoys the @override annotation
[12:15:44 EDT(-0400)] <EricDalquist> me too
[12:15:49 EDT(-0400)] <EricDalquist> and the JPA annotations are quite nice
[12:16:04 EDT(-0400)] <EricDalquist> as are the Spring TX annotations
[12:17:28 EDT(-0400)] <athena7> yeah (smile)
[12:17:51 EDT(-0400)] <athena7> i wish some of the annotations were documented more usefully somewhere, but i really like htem
[12:23:23 EDT(-0400)] <higpetter> yep.. documentation...
[12:23:46 EDT(-0400)] <higpetter> is there any useful documentation on the net, or do I have to get some real<tm> books?
[12:24:30 EDT(-0400)] <EricDalquist> which annotations are you looking at?
[12:26:24 EDT(-0400)] <higpetter> any/all
[12:26:42 EDT(-0400)] <higpetter> the more I read, the more I realize that I don't understand..
[12:26:47 EDT(-0400)] <EricDalquist> I always just ctrl+click on them in eclipse and read the javadocs
[12:27:06 EDT(-0400)] <higpetter> the javadocs doesn't help me here
[12:27:53 EDT(-0400)] <EricDalquist> or are you looking for a higher level overview of how annotations work?
[12:28:10 EDT(-0400)] <higpetter> probably
[12:29:21 EDT(-0400)] <higpetter> No matching handler method found for portlet request: mode 'view', type 'action', parameters map[[empty]]
[12:30:15 EDT(-0400)] <EricDalquist> ?
[12:30:40 EDT(-0400)] <higpetter> exactly...
[12:31:00 EDT(-0400)] <EricDalquist> well you hopefully at least know what you're trying to do and what annotations you're using
[12:31:06 EDT(-0400)] <EricDalquist> we don't (smile)
[12:31:16 EDT(-0400)] <higpetter> some @RequestMapping
[12:31:44 EDT(-0400)] <EricDalquist> ah, I don't have any experience using the Spring MVC annotations, not sure if others do?
[12:31:54 EDT(-0400)] <higpetter> I think the best is to forget those annotations for a while....
[12:32:14 EDT(-0400)] <higpetter> it looked nice, until I tried to use them...
[12:32:19 EDT(-0400)] <dstn> I'm debating whether I like the new 2.5 mvc annotations
[12:32:32 EDT(-0400)] <holdorph> you can post on the spring forums to get help with the spring mvc annotations.
[12:32:43 EDT(-0400)] <holdorph> they were the 'clever' design of Juergen.
[12:32:43 EDT(-0400)] <higpetter> they seem to work better with servlets than with portlets
[12:32:51 EDT(-0400)] <dstn> I particularly don't like annotating parameters
[12:32:55 EDT(-0400)] <holdorph> John Lewis has used them once, but he didn't create them.
[12:33:16 EDT(-0400)] <dstn> classes and methods seem proper to annotation but parameters is messy
[12:33:44 EDT(-0400)] <higpetter> I don't even manage to map the type=action to a handler...
[12:34:23 EDT(-0400)] <EricDalquist> well that would likely be a problem
[12:34:32 EDT(-0400)] <EricDalquist> since from that log message it looks like you're getting an action request
[12:34:44 EDT(-0400)] <dstn> I just took a springsource course and they are more or less suggesting that they be used
[12:34:56 EDT(-0400)] * awills (n=awills@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[12:35:25 EDT(-0400)] <holdorph> john says jeurgen is leaning towards removing (or at a minimum deprecating) the non-annotation mvc stuff for spring 3.0
[12:35:40 EDT(-0400)] <dstn> ya...
[12:36:15 EDT(-0400)] <dstn> that's what it felt like from the training
[12:36:33 EDT(-0400)] <awills> EricDalquist: "Is there a chance of a memory leak by tracking some of the swap data via the TRACKING Map?" – what do you mean by TRACKING map? are you talking about TICKETS map?
[12:36:44 EDT(-0400)] <EricDalquist> ah yeah
[12:36:45 EDT(-0400)] <EricDalquist> sorry
[12:37:02 EDT(-0400)] <EricDalquist> thinking one thing and typed another
[12:37:08 EDT(-0400)] <dstn> See, I don't like this
[12:37:10 EDT(-0400)] <dstn> public void populateSite(
[12:37:10 EDT(-0400)] <dstn> @ModelAttribute("site") PetSite petSite, BindingResult result,
[12:37:10 EDT(-0400)] <dstn> SessionStatus status, ActionResponse response)
[12:37:31 EDT(-0400)] <EricDalquist> so yeah ... that TICKETS map ... is there an guarantee that entries will be removed?
[12:37:32 EDT(-0400)] <dstn> annotations on parameters .. :-/
[12:38:06 EDT(-0400)] <EricDalquist> uhg
[12:38:09 EDT(-0400)] <EricDalquist> yeah that's not nice
[12:38:20 EDT(-0400)] <awills> putting it in a finally block won't hurt, i can do that
[12:38:51 EDT(-0400)] <EricDalquist> well the finally is a different issue ... just making sure an exception from the servlet being filtered doesn't cause problems
[12:38:57 EDT(-0400)] <EricDalquist> what if someone swaps to a user
[12:39:00 EDT(-0400)] <EricDalquist> then closes their browser
[12:39:37 EDT(-0400)] <awills> oh, that's not an issue b/c both elements of the filter (before and after) take place in the same web request
[12:39:48 EDT(-0400)] <awills> entries on the map only live for one web request
[12:39:52 EDT(-0400)] <EricDalquist> ok
[12:40:00 EDT(-0400)] <EricDalquist> then why is it a global variable?
[12:40:18 EDT(-0400)] <awills> TICKETS is private
[12:40:25 EDT(-0400)] <EricDalquist> but it is global
[12:40:40 EDT(-0400)] <EricDalquist> well
[12:40:42 EDT(-0400)] <EricDalquist> instance
[12:40:49 EDT(-0400)] <EricDalquist> it is scoped to the instance of the class
[12:40:51 EDT(-0400)] <holdorph> what if the web request doesn't complete (socket close exception)?
[12:41:03 EDT(-0400)] * jessm (n=Jess@rrcs-70-63-141-143.midsouth.biz.rr.com) has joined ##uportal
[12:41:10 EDT(-0400)] <awills> it's static, b/c there's a static getUsername() method that needs to refer to it
[12:41:41 EDT(-0400)] <awills> the SecurityContext impl calls it to get the username
[12:42:44 EDT(-0400)] <EricDalquist> so how do you ensure that values are removed from TICKETS?
[12:43:24 EDT(-0400)] <EricDalquist> ah
[12:43:25 EDT(-0400)] <EricDalquist> so
[12:43:44 EDT(-0400)] <EricDalquist> you're using a static variable to pass data from one API to another API lower in the call stack
[12:43:48 EDT(-0400)] <EricDalquist> why not use a ThreadLocal?
[12:43:58 EDT(-0400)] <EricDalquist> since that is what they are designed for?
[12:45:54 EDT(-0400)] <EricDalquist> brb ... grabing a snack
[12:53:09 EDT(-0400)] <EricDalquist> back
[13:14:20 EDT(-0400)] <higpetter> wtf... no printers today?
[13:14:31 EDT(-0400)] <holdorph> huh?
[13:18:29 EDT(-0400)] <higpetter> we had a power outage yesterday...
[13:26:54 EDT(-0400)] <awills> ug, sorry... had 3 successive cube visitors
[13:27:20 EDT(-0400)] <EricDalquist> lol
[13:27:27 EDT(-0400)] <EricDalquist> you need a cube defense system
[13:28:11 EDT(-0400)] <awills> (yeah totally) i'd have stiched the Filter and the SecurityContext together w/ spring IoC if it were more possible in the context of the servlet spec
[13:28:15 EDT(-0400)] <EricDalquist> perhaps: http://www.youtube.com/watch?v=RxBa5bQfTGc
[13:31:33 EDT(-0400)] <awills> you could use a ThreadLocal, but would that expose you to possible gotchas if (1) the authentication process became got offloaded to a thread pool or (2) someone came in on the same tomcat thread an there was some sort of programming error that left a value there?
[13:32:00 EDT(-0400)] <EricDalquist> if you use a threadlocal and a finally block for cleanup you're ok
[13:32:15 EDT(-0400)] <EricDalquist> threadlocal versus Map isn't the issue, just the cleanup
[13:32:26 EDT(-0400)] <EricDalquist> but if values are removed in a finally block from the map then that works
[13:32:35 EDT(-0400)] <EricDalquist> probably just want to put a comment in there about it
[13:32:39 EDT(-0400)] <EricDalquist> another comment for performance
[13:32:50 EDT(-0400)] <EricDalquist> look into using a ConcurrentHashMap instead of a syncronized map
[13:32:52 EDT(-0400)] <EricDalquist> no locking
[13:33:21 EDT(-0400)] <awills> yeah sounds good... so if there's an error within chain.doFilter(), the container won't shield you from it i suppose
[13:33:32 EDT(-0400)] <EricDalquist> nope
[13:33:54 EDT(-0400)] <EricDalquist> so any cleanup needs to be in a finally to ensure it actually runs
[13:35:04 EDT(-0400)] <awills> sure on the ConcurrentHashMap
[13:37:49 EDT(-0400)] * MarkRogers (n=MarkRoge@addhcp129.cc.umanitoba.ca) has joined ##uportal
[13:39:29 EDT(-0400)] <awills> so a logistics question... i've got this technology ready in trunk/, seems most normal (and simpler) for me to check it in there and merge it back to 3.0.x
[13:39:50 EDT(-0400)] <awills> are we all on board for pputting it in 3.0.x?
[13:40:26 EDT(-0400)] <EricDalquist> so for the DLM stuff yes .. merging back to 3.0.x
[13:40:52 EDT(-0400)] <EricDalquist> for the swapper ... not sure
[13:40:52 EDT(-0400)] <awills> cool
[13:41:02 EDT(-0400)] <EricDalquist> we need to talk about how we're going to merge the two approaches
[13:41:22 EDT(-0400)] <awills> yeah i agree completely
[13:41:32 EDT(-0400)] <EricDalquist> have you had a chance to look at the approach I checked in?
[13:41:48 EDT(-0400)] <awills> i know you adjusted the LoginServlet... let me look there first
[13:42:01 EDT(-0400)] <EricDalquist> LoginServlet and a little bit in LogoutServlet
[13:42:35 EDT(-0400)] <EricDalquist> the idea is something puts an attribute in the portal's session with the UID to swap to then redirects the user to /Login
[13:43:23 EDT(-0400)] <EricDalquist> it sees the attribute, grabs the current uid, does a fresh login but sets an IdentitySwapperSecurityContext instead of using the security context config from security.properties
[13:43:43 EDT(-0400)] <EricDalquist> on unswap it's the same idea but it grabs the original uid from the session and switches the user back
[13:43:54 EDT(-0400)] <awills> ah, was going to ask what securitycontext
[13:44:47 EDT(-0400)] <EricDalquist> yeah it doesn't require any changes to security.properties
[13:44:58 EDT(-0400)] <awills> or web.xml?
[13:44:58 EDT(-0400)] <EricDalquist> it just sets the swapper security context explicitly in the code
[13:45:01 EDT(-0400)] <EricDalquist> nope
[13:45:24 EDT(-0400)] <EricDalquist> the only down side of both approaches is cached credentials are lost
[13:45:40 EDT(-0400)] <awills> yeah that had occured to me
[13:45:46 EDT(-0400)] <EricDalquist> but there is no way around that
[13:45:53 EDT(-0400)] <awills> CAS is safer anyway (wink)
[13:45:59 EDT(-0400)] <EricDalquist> without much more in-depth hacking of the security context workings
[13:46:27 EDT(-0400)] <EricDalquist> since when you unswap you're still using a custom security context for the swapper
[13:47:39 EDT(-0400)] <awills> what if, for 3.1, we change the filter manipulate the seesion per the (new) expectations of the LoginServlet
[13:47:57 EDT(-0400)] <awills> that would leave the change to web.xml, but remove it from security.props
[13:48:26 EDT(-0400)] <awills> what are you using to put the attribute in the session?
[13:49:07 EDT(-0400)] <EricDalquist> I'm just using java code
[13:49:15 EDT(-0400)] <EricDalquist> so how is that filter triggered in your code?
[13:49:20 EDT(-0400)] <awills> in what though... not in your portlet?
[13:49:25 EDT(-0400)] <EricDalquist> yeah
[13:49:32 EDT(-0400)] <EricDalquist> in a bean the portlet calls
[13:49:59 EDT(-0400)] <awills> the filter is mapped to /Login, so it's always executed... the logic is triggered by detecting an impersonateUser param
[13:50:17 EDT(-0400)] <EricDalquist> the 'global' portlet session for portlets in the uPortal webapp is the same as the portal's HttpSession
[13:51:39 EDT(-0400)] <EricDalquist> I'm digging through the patch right now ...
[13:52:00 EDT(-0400)] <awills> i can add a portlet action that puts in the session attribute, but how do you send the redirect? (puts on thinking cap) wasn't that something you're not supposed to do in portlets?
[13:52:28 EDT(-0400)] <EricDalquist> ActionResonse.sendRedirect(String)
[13:52:31 EDT(-0400)] <EricDalquist> part of the portlet spec
[13:52:38 EDT(-0400)] <EricDalquist> just have to do it during an action
[13:52:39 EDT(-0400)] <awills> ah nvm
[13:53:03 EDT(-0400)] <awills> sounds good, i think i can do that
[13:53:10 EDT(-0400)] <awills> bb in a couple
[13:53:15 EDT(-0400)] <EricDalquist> so the change would be to move the authz check in that code
[13:53:22 EDT(-0400)] <EricDalquist> since the filter would no longer be there doing that
[13:53:33 EDT(-0400)] <EricDalquist> and the goal is that the Login servlet just trusts what gets set as an attribute
[13:53:45 EDT(-0400)] <EricDalquist> so your portlet submits the uid to swap to
[13:54:00 EDT(-0400)] <EricDalquist> and then the code that handles that submit validates that the selected uid matches a permission for the current user
[13:54:12 EDT(-0400)] <EricDalquist> if it does it sets the session attribute and sends the redirect
[13:54:32 EDT(-0400)] <EricDalquist> there are two public global strings in LoginServlet now that are used for the swapping attribute keys
[14:11:34 EDT(-0400)] <awills> yes, i think that approach will work out
[14:11:58 EDT(-0400)] <EricDalquist> great
[14:12:11 EDT(-0400)] <awills> i hope i have time to do it all this week... my bro's getting married in san fran next week
[14:12:13 EDT(-0400)] <EricDalquist> I was also going to add two new portal events for swap/unswap
[14:12:17 EDT(-0400)] <EricDalquist> and there is warn level logging
[14:12:21 EDT(-0400)] <EricDalquist> to help with auditing
[14:12:26 EDT(-0400)] <EricDalquist> ah
[14:12:37 EDT(-0400)] <EricDalquist> no problem if you don't for the 3.1 stuff
[14:12:47 EDT(-0400)] <EricDalquist> can you focus on getting it into 3.0-patches first?
[14:12:53 EDT(-0400)] <awills> yeah good, i know CO was particular about auditing on these same features
[14:13:04 EDT(-0400)] <EricDalquist> yeah
[14:13:11 EDT(-0400)] <EricDalquist> it is a rather powerful tool
[14:13:18 EDT(-0400)] <awills> well yes, but the fastest would be to check in what i have and merge (wink)
[14:13:25 EDT(-0400)] <EricDalquist> lol
[14:13:30 EDT(-0400)] <awills> than come in afterwards with the mods
[14:13:40 EDT(-0400)] <EricDalquist> the files you've changed shouldn't be any different for 3.0
[14:13:45 EDT(-0400)] <EricDalquist> justs take your trunk code
[14:13:51 EDT(-0400)] <EricDalquist> create a patch in eclipse
[14:14:00 EDT(-0400)] <EricDalquist> then apply the patch to a clean 3.0-patches project
[14:14:41 EDT(-0400)] <awills> alright, i'll pull it together
[14:14:54 EDT(-0400)] <EricDalquist> thanks drew
[14:36:11 EDT(-0400)] * EricDalquist (n=dalquist@bohemia.doit.wisc.edu) has joined ##uportal
[14:59:25 EDT(-0400)] <athena7> have any of you guys played with the duke tabbed rss portlet?
[15:22:47 EDT(-0400)] <EricDalquist> nope :/
[15:23:25 EDT(-0400)] <athena7> i just got code from anthony colbourne for the portlet he'd written based off the yale calendar code
[15:23:30 EDT(-0400)] <athena7> it seems like a pretty cool option
[15:23:59 EDT(-0400)] <athena7> especially since you could potentially get it to talk to more than just rss (pull messages out of custom feeds or databases or whatever)
[15:24:15 EDT(-0400)] <athena7> and we could make it configurable to be a merged list of messages or tabs or a pulldown
[15:24:16 EDT(-0400)] <EricDalquist> neat
[15:24:19 EDT(-0400)] <EricDalquist> brb
[15:24:42 EDT(-0400)] <athena7> but i'm not sure whether there's a need for both this and the duke tabbed portlet, or what
[15:46:47 EDT(-0400)] <EricDalquist> awills: I'm merging some of my recent changes into 3.0-patches
[15:46:54 EDT(-0400)] <EricDalquist> care if I do the DLM stuff while I'm at it?
[15:47:05 EDT(-0400)] <EricDalquist> since it appears to just be one file
[16:23:30 EDT(-0400)] * lennar1 (n=sparhk@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[16:52:44 EDT(-0400)] <awills> sry, was awaay for the late lunch
[16:53:26 EDT(-0400)] <awills> DLM just one file? you mean the channel removal stuff?
[16:54:05 EDT(-0400)] <awills> yeah, knock yourself out (smile) i had forgotten that didn't get into 3.0.x, glad you're doing it
[16:54:14 EDT(-0400)] <EricDalquist> ok
[17:09:47 EDT(-0400)] * awills1 (n=awills@mtw160-6.ippl.jhu.edu) has joined ##uportal
[17:10:37 EDT(-0400)] <holdorph> ARGGGG. can we please take down all .zip files immediately. I think I'll shoot myself, if I go through one more long debugging session that ends in. "Turns out it was my unzipper that messed up the files."
[17:13:21 EDT(-0400)] <EricDalquist> he had 3.0.1
[17:13:24 EDT(-0400)] <EricDalquist> there is no .zip version
[17:13:56 EDT(-0400)] <EricDalquist> apparently there are some bad tools for .tar.gz too :/
[17:14:08 EDT(-0400)] <holdorph> super, just, super.
[17:14:13 EDT(-0400)] <EricDalquist> maybe we need to figure out how to detect that
[17:14:23 EDT(-0400)] <EricDalquist> and build it into the QS build script
[17:14:34 EDT(-0400)] <holdorph> maybe some kind of script to verify the integrity of the distro?
[17:15:02 EDT(-0400)] <EricDalquist> yeah
[17:15:08 EDT(-0400)] <EricDalquist> shouldn't be too hard
[17:15:13 EDT(-0400)] <EricDalquist> extract it with a bad tool
[17:15:18 EDT(-0400)] <EricDalquist> figure out what files get hosed
[17:15:25 EDT(-0400)] <EricDalquist> and some <exists> checks in the build.xml
[17:15:31 EDT(-0400)] <EricDalquist> and fail with a useful message if they are missing
[17:15:52 EDT(-0400)] <holdorph> i don't think, at least with windows built in zip, that it was consistent
[17:16:18 EDT(-0400)] <holdorph> it would have to check every file, at least once. Or at least provide a script someone could run if they are having a problem.
[17:16:38 EDT(-0400)] <EricDalquist> hrm
[17:17:58 EDT(-0400)] <holdorph> I'm starting to like the appeal of 'installers' on windows more and more.
[17:18:16 EDT(-0400)] <holdorph> at lest the very basic ones that verify the integretity of the download/extraction process
[17:34:42 EDT(-0400)] * colinclark (n=colin@142.150.154.101) has joined ##uportal
[18:04:06 EDT(-0400)] * apetro-_ (n=apetro@12.164.139.7) has joined ##uportal
[18:57:40 EDT(-0400)] * apetro-- (n=apetro@wsip-98-174-242-39.ph.ph.cox.net) has joined ##uportal
[21:55:37 EDT(-0400)] * lennar1 (n=sparhk@wsip-98-174-242-39.ph.ph.cox.net) has left ##uportal