Re: [ANN] JavaPolis 2005 Quickie Monday 12th December 2005
Peter A. Pilgrim wrote: Hi I know I should have said this much earlier than this, but I will be giving a 15 minute presentations on Struts and Beyond at JavaPolis 2005, Tomorrow. Please feel welcome to join me if you are attending. http://wiki.javapolis.com/confluence/display/JP05/JavaPolis+Quickies Now, hopefully this terrible cold, I have now, will go away and leave me alone! FYI: I have uploaded my presentation slides and MP3 rehearsal to my blog http://jroller.com/page/peter_pilgrim All Struts Users and Developer worldwide from JAVAWUG '##'##:':'::'::'##:::'##: ###::'###: ##.:: ## ##: ## ##:. ##:'##:: ': ##::: ## ##: ## ##::. ::: ## ### ##: ##::: :: . ## ##. #: ##: ##... ##.. ##::: ##.. ##:: ## ##:.:: ##: ##::: ##::. ##:: ##::. ##: ## ## ##: : ##:::. ##: ##:::. ## ## ..:..::::..:..::..:..:..: '##'##:'##'##'###:'##:: . ##::'##:: ###::'###:::'## ##:::'##... ##: :. ##'##::: '::'##:. ##:: ##:::..:: ::. ### ## ### ##:'##:::. ##:. ##:: :: ## ##::: ##. #: ##: #::. ##: : ##:. ##:: ##:.:: ##: ## ##:'##::: ##: ##:::. ##: ## ##: ## ##:. ##:: and Happy New __o o__ __oo__ __o o__ __o o/ v\ /v v\ /v v\/v v\ /|\ / \/ \ / \ //o/ o/ \oo/ \o o /v | | | | |__ _\__o__ / \\ //\\ //| \ o/ \ /\ / \ / /v o o o oo o / __o__/_ \__ __/ \__ __/\__ __/ -- Peter Pilgrim __ _ _ _ / //__ // ___// ___/ + Serverside Java / /___/ // /__ / /__ + Struts / // ___// ___// ___/ + Expresso Committer __/ // /__ / /__ / /__ + Independent Contractor /___/////// + Intrinsic Motivation On Line Resume || \\=== `` http://www.xenonsoft.demon.co.uk/no-it-striker.html '' - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Problem in img src=img.gif path?
Hi, Yes, it's working now with html:base/. When I click calendar icon (img) it displays correct. This calendar is in Javascript and has next year, next month, privious year, previous month buttons. When i click any one of the it says page cannot be found: Http 400 error. Again, it is relative path problem? Bye, Viki. On 12/23/05, Laurie Harper [EMAIL PROTECTED] wrote: Vikrama Sanjeeva wrote: Hi, The myForm.jsp is called when a user clicks a link in another JSP. Here is the flow: 1. User click the link in home.jsp . html:link page=/do/SetUpMyFormMy Form/html:link 2. Action, SetUpMyForm is called and it actually set's up some variables, pull-down menues and then it return (mapping.findForward( continueCallingMyForm.jsp)); I think this is what you said here: If you're calling an action which forwards to the JSP page, the browser doesn't know the physical location of the JSP and will resolve relative URLs with respect to the actionpath, not the JSP path. Right; as far as the browser knows, the relative path 'img.gif' means '/do/img.gif', since the path is relative to the URL '/do/SetUpMyFrom'. I've read the html:base tag, but it's not clear to me how to use this tag in calling img src=img.gif Can you give any related example? You don't use it as part of constructing the img tag. It goes in the 'head' section of your page. I.e. you need something like head html:base/ ... /head The result is an HTML 'base' tag that tells the browser the URL to use as the base for relative paths, which should make your img tag behave as you expect. L. Bye, Viki. On 12/22/05, Laurie Harper [EMAIL PROTECTED] wrote: Vikrama Sanjeeva wrote: Hi, I've img.gif and and myForm.jsp in same folder. But when I call the img.gif with following path, it does not display in myForm.jsp. here it is: html:text property=date /html:text img src=img.gif id=f_trigger_c style=cursor: pointer; border: 1px solid red; title=Date selector onmouseover=this.style.background='red'; onmouseout= this.style.background='' / But when I call with src=../img.gif, it works. Here it is: html:text property=date /html:text img src=../img.gif id=f_trigger_c style=cursor: pointer; border: 1px solid red; title=Date selector onmouseover=this.style.background='red'; onmouseout= this.style.background='' / Why it so? Some url related problem? How do you reference your JSP? If you're calling an action which forwards to the JSP page, the browser doesn't know the physical location of the JSP and will resolve relative URLs with respect to the action path, not the JSP path. You might want to look at the html:base tag [1] to help with this; it allows you to tell the browser what base path to use for resolving relative URLs in the page. L. [1] http://struts.apache.org//struts-doc-1.2.8/userGuide/struts-html.html#base - 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]
Re: text field not populating after validate() fails.
H, Rahul: The pull-down menus are prepopulated using the session. For pull-down menus, I'm using the same approach as Rick used in LESSON II - 9 - Create SetUpEmployeeAction. You can see here: http://www.reumann.net/struts/lesson2/step9.do Rick: I've change the scope in struts-config from request to session and it is working fine now. But question is, why it is not working with scope=request? Bye, Viki. On 12/24/05, Rick Reumann [EMAIL PROTECTED] wrote: On 12/21/05, Vikrama Sanjeeva [EMAIL PROTECTED] wrote: I have a form which consists of pull-down menus, radio button, text area and text fields. The form takes all the required input fields from user, validate them and if validation fail's, the same form is called with pre-populated values (as entered 1st time by user). This is true when there is NO form name and type is given in form tag. But when I give form name and type in form tag, only pull-down menus are populated if validation fails. Whereas, text field, text area and radio buttons are not pre-poulated. I'm not sure what is going wrong here?? Below is the related code I'm using. This is a classic problem and it is why I recommend you call your validation manually from your Action class. I decribe in detail the exact problem you are encountering here http://www.reumann.net/struts/articles/request_lists.jsp and the solution I like to use. -- Rick
Re: tabs is struts
This is an excelet solution, thank you! Do you know how can I modify the line c:out value=Bar is cooler! /, so that it servers up a JSP via STRUTS? tab:tabContainer id=foo-bar-container tab:tabPane id=foo tabTitle=Foo! Foo is cool! /tab:tabPane tab:tabPane id=bar tabTitle=Bar! c:out value=Bar is cooler! / /tab:tabPane /tab:tabContainer Jim From: su mo [EMAIL PROTECTED] Reply-To: Struts Users Mailing List user@struts.apache.org To: Struts Users Mailing List user@struts.apache.org Subject: Re: tabs is struts Date: Tue, 13 Dec 2005 09:41:51 +0530 Checkout this. Very good one ditchnet.org/taglibs/ On 12/13/05, Yujun Liang [EMAIL PROTECTED] wrote: Tiles is needed for option 1, but I am not sure if it is still needed if using Struts-Layout. On 12/13/05, Jim Douglas [EMAIL PROTECTED] wrote: Can this be done easily with Tiles? From: Yujun Liang [EMAIL PROTECTED] Reply-To: Struts Users Mailing List user@struts.apache.org To: Struts Users Mailing List user@struts.apache.org Subject: Re: tabs is struts Date: Fri, 9 Dec 2005 09:02:42 +1100 On web page, there are two kinds of tabs, 1. Tab-looking pages with the different style for active tab, there is nothing special for this kind of tab, you can just treat them as the POHA (Plain Old HTML Application), well you need design the styles. Please check CSS-2 document. Page refresh will be observed for tab switch. 2. DHTML Tabs, this is dynamic and you won't see page refresh, it is really like the POWA(Plain Old Windows Application), to achieve this, you may need hidden frames for data transmission or you can use AJAX. If you client can afford to use JavaScript, the option 2 is definitely a preferred choice, it gives the user real time experience. If the application has to be W3C Accessibility complaint, you have no choice to use option 1. So the tab is just a different look and feel, not really different from other kind of page. From one example of Struts Recipe by George Franciscus, I can tell the Tabs generated by Struts Layout Tag are JavaScript driven so it is not W3C Accessibility complaint. Regards On 12/8/05, Raghu Kanchustambham [EMAIL PROTECTED] wrote: Try struts layout tags. They support tabbed inputs. On 12/8/05, Sony Thomas [EMAIL PROTECTED] wrote: Hi, Is there is any way to use tabs in struts. Is there is any html bean tag for this ? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Yujun Liang [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Yujun Liang [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: text field not populating after validate() fails.
On 12/24/05, Vikrama Sanjeeva [EMAIL PROTECTED] wrote: Rick: I've change the scope in struts-config from request to session and it is working fine now. But question is, why it is not working with scope=request? Did you read this article I posted? http://www.reumann.net/struts/articles/request_lists.jsp Not trying to avoid the question, but I mention it there in better detail in the first paragraph. You shouldn't need to use the Session to store those lists if you read that article (nothing wrong with using the Session either but personally I don't think you should use the Session for storing lists for form dropdowns.) -- Rick
Re: tabs is struts
You can use jsp:include page=local_URL flush=true/ page is file which contains the JSP logic flush sends the current page output before included file c:import to include local and remote rewrite tasks c:url for URL rewrite URL http://java.sun.com/developer/technicalArticles/javaserverpages/faster/index.html - Original Message - From: Jim Douglas [EMAIL PROTECTED] To: user@struts.apache.org Sent: Saturday, December 24, 2005 10:18 AM Subject: Re: tabs is struts This is an excelet solution, thank you! Do you know how can I modify the line c:out value=Bar is cooler! /, so that it servers up a JSP via STRUTS? tab:tabContainer id=foo-bar-container tab:tabPane id=foo tabTitle=Foo! Foo is cool! /tab:tabPane tab:tabPane id=bar tabTitle=Bar! c:out value=Bar is cooler! / /tab:tabPane /tab:tabContainer Jim From: su mo [EMAIL PROTECTED] Reply-To: Struts Users Mailing List user@struts.apache.org To: Struts Users Mailing List user@struts.apache.org Subject: Re: tabs is struts Date: Tue, 13 Dec 2005 09:41:51 +0530 Checkout this. Very good one ditchnet.org/taglibs/ On 12/13/05, Yujun Liang [EMAIL PROTECTED] wrote: Tiles is needed for option 1, but I am not sure if it is still needed if using Struts-Layout. On 12/13/05, Jim Douglas [EMAIL PROTECTED] wrote: Can this be done easily with Tiles? From: Yujun Liang [EMAIL PROTECTED] Reply-To: Struts Users Mailing List user@struts.apache.org To: Struts Users Mailing List user@struts.apache.org Subject: Re: tabs is struts Date: Fri, 9 Dec 2005 09:02:42 +1100 On web page, there are two kinds of tabs, 1. Tab-looking pages with the different style for active tab, there is nothing special for this kind of tab, you can just treat them as the POHA (Plain Old HTML Application), well you need design the styles. Please check CSS-2 document. Page refresh will be observed for tab switch. 2. DHTML Tabs, this is dynamic and you won't see page refresh, it is really like the POWA(Plain Old Windows Application), to achieve this, you may need hidden frames for data transmission or you can use AJAX. If you client can afford to use JavaScript, the option 2 is definitely a preferred choice, it gives the user real time experience. If the application has to be W3C Accessibility complaint, you have no choice to use option 1. So the tab is just a different look and feel, not really different from other kind of page. From one example of Struts Recipe by George Franciscus, I can tell the Tabs generated by Struts Layout Tag are JavaScript driven so it is not W3C Accessibility complaint. Regards On 12/8/05, Raghu Kanchustambham [EMAIL PROTECTED] wrote: Try struts layout tags. They support tabbed inputs. On 12/8/05, Sony Thomas [EMAIL PROTECTED] wrote: Hi, Is there is any way to use tabs in struts. Is there is any html bean tag for this ? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Yujun Liang [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Yujun Liang [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: NewB: Struts FormFile and Session scope FormBean
On 12/24/05, Kedar Panse [EMAIL PROTECTED] wrote: Thanks, That would work. But still I'll have to have FormFile in to ActionForm which is not seriliazable. Giving me error IOException while loading persisted sessions: java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: snip/ To use lazy initialization, one tends to declare the corresponding fields transient. And you should also think about using a real persistence layer (being in a servlet container environment). But lets first ask: * Is it the intent to serialize? Why do you want FormFile's to persist? Is this about the server failures/restarts? * Does it matter enough for these use cases? What is the end-user experience that is missing, that you want to achieve? -Rahul Kedar On 12/22/05, Laurie Harper [EMAIL PROTECTED] wrote: Kedar Panse wrote: Hello gurus, I want to use a wizard type of flow where in one screen there is File Upload. As this is wizard, i was using session scoped formbean with one property formfile. But seems like formfile is not serializable. What is proper way of handling this? Given that a file could be arbitrarily large, is doesn't really make sense to store it in the session. I'd suggest saving it to temporary disk and replacing the reference in the form bean with the path to the temporary file. You can then reload the temp file when your wizard is ready to deal with it. So, in your action when the file upload is received, stream it to a temp file, set the form bean property for the uploaded file to null, and set another property to the path to the temp file. The form bean should then serialize without problem, and you can get at the file later when you need to. L. snap/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Problem in img src=img.gif path?
On 12/24/05, Vikrama Sanjeeva [EMAIL PROTECTED] wrote: Hi, Yes, it's working now with html:base/. When I click calendar icon (img) it displays correct. This calendar is in Javascript and has next year, next month, privious year, previous month buttons. When i click any one of the it says page cannot be found: Http 400 error. snip/ Sounds rather like a 404 to me. Again, it is relative path problem? snap/ I'd say. I don't think we have any details about what the buttons are doing, but this may help as well: http://www.w3.org/TR/REC-html40/struct/links.html#h-12.4 -Rahul P.S.- OTDidn't Michael have a page on the wiki about this? I'm not good at navigating the Struts wiki in order to find stuff, there are probably some conventions I'm not aware of?/OT Bye, Viki. On 12/23/05, Laurie Harper [EMAIL PROTECTED] wrote: snip/ [1] http://struts.apache.org//struts-doc-1.2.8/userGuide/struts-html.html#base snap/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: text field not populating after validate() fails.
On 12/24/05, Vikrama Sanjeeva [EMAIL PROTECTED] wrote: H, Rahul: The pull-down menus are prepopulated using the session. For pull-down menus, I'm using the same approach as Rick used in LESSON II - 9 - Create SetUpEmployeeAction. You can see here: http://www.reumann.net/struts/lesson2/step9.do snip/ OK, my question was about the text fields and textareas that were *not* getting populated after validation failure. But, please see Rick's pointer in the earlier email to this thread. -Rahul - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: tabs is struts
On 12/24/05, Martin Gainty [EMAIL PROTECTED] wrote: You can use jsp:include page=local_URL flush=true/ page is file which contains the JSP logic flush sends the current page output before included file c:import to include local and remote rewrite tasks c:url for URL rewrite URL http://java.sun.com/developer/technicalArticles/javaserverpages/faster/index.html snip/ Indeed. One point I'd like to add is if you *aggregate* content in the tabs from separate static or dynamic sources, you will also need to mitigate potential naming conflicts if that can be an issue (things where this can bite is form submission, AJAX techniques etc.) -Rahul - Original Message - From: Jim Douglas [EMAIL PROTECTED] To: user@struts.apache.org Sent: Saturday, December 24, 2005 10:18 AM Subject: Re: tabs is struts This is an excelet solution, thank you! Do you know how can I modify the line c:out value=Bar is cooler! /, so that it servers up a JSP via STRUTS? tab:tabContainer id=foo-bar-container tab:tabPane id=foo tabTitle=Foo! Foo is cool! /tab:tabPane tab:tabPane id=bar tabTitle=Bar! c:out value=Bar is cooler! / /tab:tabPane /tab:tabContainer Jim From: su mo [EMAIL PROTECTED] Reply-To: Struts Users Mailing List user@struts.apache.org To: Struts Users Mailing List user@struts.apache.org Subject: Re: tabs is struts Date: Tue, 13 Dec 2005 09:41:51 +0530 Checkout this. Very good one ditchnet.org/taglibs/ snap/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
serving binary files
Hi there, and happy holidays! I have an application in which there are certain files which are only accessible by certain users. So, when a request comes to my GetFile Action, I first verify that they have the correct permissions, then send the file by opening the file and reading it into the response output stream (code included below). This works, but seems unbelievably hacky, and I was wondering if there were a better way to do this. Thanks! Daniel the code: response.reset(); response.setContentType(mimeType); File f = new File(path); long filelen = f.length(); response.setContentLength((int)filelen); FileInputStream fileIn = new FileInputStream(f); BufferedInputStream bufIn = new BufferedInputStream(fileIn); BufferedOutputStream out = new BufferedOutputStream(response.getOutputStream()); final int READ_SIZE = 1024; int count; byte[] buffer = new byte[READ_SIZE]; while ((count = bufIn.read(buffer,0,READ_SIZE)) != -1) out.write(buffer,0,count); out.flush(); out.close(); response.flushBuffer(); - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: tabs is struts (O/T caution: Thread hike by S. Claus)
Good Afternoon Master Rahul- As they say in Harvard Square.. this is very helpful advice indeed! I Hope one and all have a good Chanukkah, Merry Christmas and a Happy Festivus! Martin Gainty http://www.laconiadatasystems.com - Original Message - From: Rahul Akolkar [EMAIL PROTECTED] To: Struts Users Mailing List user@struts.apache.org; Martin Gainty [EMAIL PROTECTED] Sent: Saturday, December 24, 2005 11:41 AM Subject: Re: tabs is struts On 12/24/05, Martin Gainty [EMAIL PROTECTED] wrote: You can use jsp:include page=local_URL flush=true/ page is file which contains the JSP logic flush sends the current page output before included file c:import to include local and remote rewrite tasks c:url for URL rewrite URL http://java.sun.com/developer/technicalArticles/javaserverpages/faster/index.html snip/ Indeed. One point I'd like to add is if you *aggregate* content in the tabs from separate static or dynamic sources, you will also need to mitigate potential naming conflicts if that can be an issue (things where this can bite is form submission, AJAX techniques etc.) -Rahul - Original Message - From: Jim Douglas [EMAIL PROTECTED] To: user@struts.apache.org Sent: Saturday, December 24, 2005 10:18 AM Subject: Re: tabs is struts This is an excelet solution, thank you! Do you know how can I modify the line c:out value=Bar is cooler! /, so that it servers up a JSP via STRUTS? tab:tabContainer id=foo-bar-container tab:tabPane id=foo tabTitle=Foo! Foo is cool! /tab:tabPane tab:tabPane id=bar tabTitle=Bar! c:out value=Bar is cooler! / /tab:tabPane /tab:tabContainer Jim From: su mo [EMAIL PROTECTED] Reply-To: Struts Users Mailing List user@struts.apache.org To: Struts Users Mailing List user@struts.apache.org Subject: Re: tabs is struts Date: Tue, 13 Dec 2005 09:41:51 +0530 Checkout this. Very good one ditchnet.org/taglibs/ snap/
Null pointer from tiles insert even though ignore is true?
Hello: In one of my tiles, I have this code: center tiles:insert attribute=content ignore=true/ /center Occasionally, I get an exception report from my app that it is getting a null pointer from the insert code: java.lang.NullPointerException at org.apache.struts.taglib.tiles.InsertTag.processAttribute(InsertTag.java:687 ) at org.apache.struts.taglib.tiles.InsertTag.createTagHandler(InsertTag.java:478 ) at org.apache.struts.taglib.tiles.InsertTag.doStartTag(InsertTag.java:438) at org.apache.jsp.layoutFront_jsp._jspx_meth_tiles_insert_0(layoutFront_jsp.jav a:195) at org.apache.jsp.layoutFront_jsp._jspService(layoutFront_jsp.java:102) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:3 24) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application FilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja va:214) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContext Valve.java:198) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja va:152) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137 ) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118 ) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContex t.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675) at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:683) at java.lang.Thread.run(Thread.java:595) I have the ignore attribute set to true, so why would I get a null pointer? Thanks, Neil -- Neil Aggarwal, JAMM Consulting, (214) 986-3533, www.JAMMConsulting.com FREE! Valuable info on how your business can reduce operating costs by 17% or more in 6 months or less! http://newsletter.JAMMConsulting.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]