Hi All, I tested OK on ARS version 7.0.1 patch 002 with midier 7.0.01 Patch 001 200701091113, ServletExec/5.0, Java Version 1.4.2_13, Win 2003 SP2 Regards, Daniel
________________________________ From: Action Request System discussion list(ARSList) [mailto:[EMAIL PROTECTED] On Behalf Of patrick zandi Sent: Friday, April 27, 2007 3:58 PM To: [email protected] Subject: Re: Freeing licenses ** Axton, In priciple you are correct. The argument has moved though.. now remedy is stating that there is a fix with Mid-tier 7.01. P2. Unfortuanately it will not work with RemedySSO. So I would test this and find out if it is really fixed. But from the other side, it should be still considered a bug and Fixed on previous versions. it definately should not have gone on this long, through some 7.0/ 7.0P1/ 7.0P2/ 7.01P1 versions prior to getting fixed. Would like to hear the results of this. Actually I have a Bug number to go with it:: SW00252140 <<----------------------- This is the same issue right ? 1. DROP/BUILD BUG OCCURS IN (IF PRE-RELEASE) Tested against latest build of 7.0.1 mid-tier and 7.0 patch 001. Reproduces so far on any application server that supports HttpSession persistance, tested on Tomcat and ServletExec. Problem does not reproduce with 6.3 mid-tier patch 018. 2. STEPS TO REPRODUCE: There's actually two different ways to reproduce this problem. The key to reproducing is to be using a Application server/Servlet engine that saves Http sessions across restarts, such as Tomcat standalone, this product will save any created sessions to a file called SESSIONS.ser and reload them on restart. This was tested using a non admin user with a Floating write license, not sure if floating vs. fixed license matters or not, just used floating since that's what the customer is using. Also in mid-tier config using 1 arserver for preference, home page and ar server list. Method 1 to reproduce: -Stop Tomcat, remove the SESSIONS.ser file from the C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\70p1 directory or equivelent directory on your local install. Start Tomcat. This ensures that no prior saved sessions are loaded. - Restart arserver. This ensures that the user's cached login structure is cleared from arserver memory. - Login at PC #1, mid-tier successfully runs ARVerifyUser in LoginServlet authenticate() method, then clears the ARServerUser login context. - Close all browser windows. - Restart Tomcat, but don't delete the SESSIONS.ser file. - Login at PC #1 again. Now when mid-tier calls ARVerifyUser it returns ARERR 9093. Unfortunately the authenticate method in LoginServlet is only specifically looking for either a ARERR 623 or ARERR 612, any "other" error from the arserver, such as a 90, 91, 9093, etc. is just treated with as a blanket authentication failed and we display a dialog box showing ARERR 9388 "Authentication Failed" to the user at login.jsp. This doesn't give the user a chance to say Yes they would like to override the login for the 9093 error. The user is basically locked out of the system, they're stuck in a catch 22. Also, interesting enough the new IP address showing in arerror.log showing is not a GUID that we would expect from a web client, instead it's the IP address of the machine mid-tier is running on. Method 2 to reproduce: -Stop Tomcat, remove the SESSIONS.ser file from the C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\70p1 directory or equivelent directory on your local install. Start Tomcat. This ensures that no prior saved sessions are loaded. - Restart arserver. This ensures that the user's cached login structure is cleared from arserver memory. - Login at PC #1, mid-tier successfully runs ARVerifyUser in LoginServlet authenticate() method, then clears the ARServerUser login context. - Login at PC #2, mid-tier successfully runs ARVerifyUser in LoginServlet authenticate() method, then clears the ARServerUser login com On 4/26/07, Axton <[EMAIL PROTECTED]> wrote: Last message bounced because it was too long. I know one is stateful and the other is stateless, but once the browser's license is in limbo, there is no way to release it, not even logging back in and clicking logout will release the license. The precedence as to what is expected from floating licenses was set with the user tool over the last 14 years. Any web interface that is developed needs to exist, at a minimum, within the confines of this precedence. This can be measured by determining if you need to purchase additional licenses to effectively utilize an interface that is bundled with the arsever. Why not extend the current architecture and create a session object for each window that gets opened, then use the javascript unload listener to remove the session object when a window is closed (by clicking X). Each time a window is closed (js unload event), the javascript could check to see if the session object for that window is the last one, and if it is, creates an xmlhttprequest, sends the request to a servlet to end the session ( e.g., release the licenses). A cookie could be used instead of a session object if desired. A simple example of the unload event can be viewed at: http://www.dcs.uwaterloo.ca/~anderson/JavaScript/ex_load_unload.html This javascript fires when I click the X in the browser window; why not use the same hook for the mid-tier? Why could the unload event not create an xmlHttpRequest, send the request to a servlet within the mid-tier to end the session (e.g., release the licenses). Unless I'm totally missing something, it looks like the hooks are there, but the code to utilize them is not. I'm not saying it's a simple thing to write, but it looks to be possible. A more direct question to BMC. If this is the current situation, how am I supposed to roll this out for wide-scale usage without the hundreds of thousands of dollars I would need to purchase additional floating licenses? Take my scenario as an example. I have an approval process. Users approve requests through the mid-tier. When an approval process is started, 40 to 50 signature lines are generated. Roughtly 80% of the approver base has a floating licenses (note that the approval interface is fully capable of operating with a read license). Now I have up to 50 people hitting my mid-tier server at roughly the same time (let's say within the same hour). None of them click the logout button after approving their request. Now I have 40-50 of my 220 floating licenses tied up for the next hour. I start to get a flood of ticket from my support desk, operations center, etc. that they are receiving some type of error constantly popping up on their screen stating: No free floating write license tokens available. What are my options here? - don't use the mid-tier? - buy another 50 floating licenses? - write my own web application that effectively manages floating licenses? - tell my users to live with the error, and notify them they can't user remedy until they stop getting the error, which should hopefully occur within the next hour some time? None of these are good options when all I need is a web interface into my Remedy server that is capable of operating under the same licensing requirements as the native client. Let's face it, users are going to click the X in the top right corner when they are done using the mid-tier. It's what people do when they are through using a web browser and it's something that has to be dealt with. Axton Grams On 4/26/07, Easter, David <[EMAIL PROTECTED]> wrote: > You may also wish to compare apples to apples. Your tests are closing > the browser window without logging out. This would be equivalent to the > statement you made about the WUT: > > > If TCP is lost when the user closes WUT, then the license for that > user also stays in limbo until times out. > > If one clicks on the "Logout" link within the web client, the license > should be released properly just as if you'd closed the WUT. If one > closes the browser without logging out, you've effectively created the > situation where no message is sent back to AR System (i.e. just like if > TCP is lost for the WUT). > > Because each browser window is self-sufficient (i.e. there's no parent > window that contains all of the sub-windows), there's currently no > simple way for AR System to know that the closing of a specific window > (i.e. by killing the browser or clicking on the 'x') indicates that all > windows should now be invalid. > > More simply put - Let's say you have browser windows 1, 2, and 3 open. > You 'x' out of window 2. Should Windows 1 and 3 become invalid? Most > folks would say 'no'. Each window is independent. Window 1 doesn't > know about Window 2 and 3. So when Window 2 closes, 1 and 3 keep > running. > > If you close Windows 1 and 3 using the 'x', AR System still doesn't know > if Window 2 is there or not (remember, you clicked on the 'x' - not > logout). Since you closed the browser and did not logout, no message is > sent back to AR System letting the Mid-Tier know that the user isn't > just sitting there idle. So the timeout starts ticking down... > > In the WUT, you have a central application which governs all "windows". > If you close out a form, you have not left the central application (i.e. > the WUT). When you do close the WUT, it's obvious that all sub windows > should be closed. > > A longer term solution for this is certainly something being considered > - but the unique differences between a web session and a local > application will need to be overcome. There are obviously ways to do it > (e.g. you could make the AR System web GUI a flash/Java application with > all windows contained within the single app; you could disable > multi-window capability and have only one browser window in use at a > time using forward/backward paging; designate one window as the "parent" > window and when you close that, all other windows become invalid, etc. ) > - one would have to be sure that the method chosen fulfills all of the > usage cases and does not disrupt the use of the product that folks are > used to. > > -David J. Easter > Sr. Product Manager, Service Management Business Unit > BMC Software, Inc. > > The opinions, statements, and/or suggested courses of action expressed > in this E-mail do not necessarily reflect those of BMC Software, Inc. > My voluntary participation in this forum is not intended to convey a > role as a spokesperson, liaison or public relations representative for > BMC Software, Inc. ________________________________________________________________________ _______ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org ARSlist:"Where the Answers Are" -- Patrick Zandi __20060125_______________________This posting was submitted with HTML in it___ _______________________________________________________________________________ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org ARSlist:"Where the Answers Are"
-- *****DISCLAIMER***** The information contained in this communication is confidential and may be legally privileged. It is intended solely for the use of the individual or entity to whom it is addressed and others authorized to receive it. If you are not the intended recipient you are hereby notified that any disclosure, copying, distribution or taking action in reliance of the contents of this information is strictly prohibited and may be unlawful. Orange Romania S.A. is neither liable for the proper, complete transmission of the information contained in this communication nor any delay in its receipt. *****END OF DISCLAIMER***** _______________________________________________________________________________ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org ARSlist:"Where the Answers Are"

