Re: Generating javascript code with velocity
Jeffrey D. Brekke wrote: On Fri, 28 May 2004 14:09:59 +0200, Bernardo Arlandis Mañó [EMAIL PROTECTED] said: [SNIPPED] You've pointed something important, if the js code has to be regenerated there's no improvement other than having separate files. The js code should be static, but then I'd need to pass dinamically created collections of objects to the javascript functions to do their work. What I'd like to know is easy ways to do this or alternative ones with the same effect. For example, I need to pass a list of java objects generated by velocity to the javascript functions so that the js functions can work with them without having to use velocity to replicate the js code. We've done this. We put our javascript code into .js files as suggested. This is static js code, functions really. Then in our velocity templates we use the js functions. We really try to keep these javascript functions to ui issues ( speed ) and very little logic in them ( for example disabling or enabling a button on the fly ). So in one instance we had to take a list of objects we get from our pull tool and slam that into a js array for our javascript functions to use. In our velocity template we did just that: --- CommonJS.vm--- script language=JavaScript src=$content.getURI(javascript/selectbox.js)/script script language=JavaScript src=$content.getURI(javascript/format-utility.js)/script #set($jsfields = $layoutholder.Layout.Fields) #if ($jsfields) script language=JavaScript var noFields = $jsfields.size(); var fields = new Array(noFields); #set($offset = 1) #foreach($field in $jsfields) #set ($i = $velocityCount - 1) #set ($end = $offset + $field.FieldLength - 1 ) fields[$i] = new Array(6); fields[$i][0] = $formatutil.escapeJavaScript($!field.CustomerField); fields[$i][1] = $!field.QdsField; fields[$i][2] = $!field.FieldLength; fields[$i][3] = $offset; fields[$i][4] = $end; fields[$i][5] = $!field.FieldType; fields[$i][6] = $!field.FieldFormat; #set ($offset = $end+1); #end /script #end Then we use our javascript function on our html elements, passing the array as needed. select name=fmt size=10 onChange=update(this, fields) onkeypress=keyUpdate(this,event) Hope this helps. I was going to do something like that but I was looking for a more general solution that could work the same for any object without much coding. As it seems there's no such method, I'll take yours with your code as a working example. Thanks. Regards. -- Bernardo Arlandis Mañó * http://berarma.webhop.org/ * http://mozilla.webhop.org/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
fileupload with ie and opera
Hi All, I cannot upload any file with ie or Opera, but Mozilla/Netscape works well. I use Turbine 2.3 in Linux with java 1.4.0_03. My form is like: === form name=frmUploadImage Accept-Charset=ISO-8859-2 enctype=multipart/form-data method=post action=http://localhost:8080/portal/servlet/portal/action/GalleryAction; input type=hidden name=nextScreen value=photo,GalleryForm.vm ... input type=file size=30 name=uploadimage === in my action code snippet is: === ParameterParser pp = data.getParameters(); ... FileItem fileItem = pp.getFileItem(uploadimage); if (log.isDebugEnabled()) log.debug(LOGHEADER + doUploadimage, fileitem is null: + (fileItem == null)); === when I try it with Mozilla or Netscape fileitem is not null, but when I use Opera or IE fileItem is null. When I print pp keys with its Enumeration uploadimage key is exists. What's wrong with this? -- thx, Zoltan Zidarics programmer PTE University Pecs, Hungary icq: 43288694 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: fileupload with ie and opera
Hi Zoltan, I have almost exactly the same code that works with IE. The only thing I don't have is the Accept-Charset=ISO-8859-2. Maybe try removing this and see what happens? Good luck, David -Original Message- From: Z.Z. [mailto:[EMAIL PROTECTED] Sent: Wednesday June 2, 2004 12:32 PM To: [EMAIL PROTECTED] Subject: fileupload with ie and opera Hi All, I cannot upload any file with ie or Opera, but Mozilla/Netscape works well. I use Turbine 2.3 in Linux with java 1.4.0_03. My form is like: === form name=frmUploadImage Accept-Charset=ISO-8859-2 enctype=multipart/form-data method=post action=http://localhost:8080/portal/servlet/portal/action/GalleryAction; input type=hidden name=nextScreen value=photo,GalleryForm.vm ... input type=file size=30 name=uploadimage === in my action code snippet is: === ParameterParser pp = data.getParameters(); ... FileItem fileItem = pp.getFileItem(uploadimage); if (log.isDebugEnabled()) log.debug(LOGHEADER + doUploadimage, fileitem is null: + (fileItem == null)); === when I try it with Mozilla or Netscape fileitem is not null, but when I use Opera or IE fileItem is null. When I print pp keys with its Enumeration uploadimage key is exists. What's wrong with this? -- thx, Zoltan Zidarics programmer PTE University Pecs, Hungary icq: 43288694 - 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]