Re: [email] Dynamic attachments in mailer taglib 2 using JavaBean
On 03/09/2010 04:49, Ferindo Middleton wrote: I've written a javabean that connects to a database, downloads a file, and one of the getter methods returns the complete file path to the file. The problem I have is: when the JSP runs and gets to the part where it gets the file path to pass to the taglib, I get an error message that is typical of a reference to a nonstatic variable. This concerns me as I thout getter methods in javabeans would inherently returns values that are valid instance variables in a JSP. I will paste my getter method below, the JSP call to that method and the error message below: any guidance is welcome. Thank you: Getter method in jsvabean (javabean compiles fine): public String getTempFilePath() { this.downloadedfilename= tempFilePath; return this.downloadedfilename; } JSP call to getter method above: jsp:useBean id=getFilePath scope=request class=hall.RadTicketsFileDownloadForEmailAttachmentBean jsp:setProperty name=getFilePath property=fileId value=${all_attachments_for_this_ticket_row.id} / jsp:setProperty name=getFilePath property=originalFileName value=${all_attachments_for_this_ticket_row.attachment_name} / c:forEach items=${all_attachments_for_this_ticket.rows} var=all_attachments_for_this_ticket_row %-- /RadTicketsFileDownloadForEmailAttachment?attachmentId=${ all_attachments_for_this_ticket_row.id}fileName=${all_attachments_for_this_ticket_row.attachment_name} --% mt:attach type=application/octet-stream name=${all_attachments_for_this_ticket_row.attachment_name} filename=%= RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() % / /c:forEach /jsp:useBean ... And the error message: org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 97 in the jsp file: /web/radtickets/ticket_email_response/ticket_email_response_dispatcher_page.jsp Cannot make a static reference to the non-static method getTempFilePath() from the type RadTicketsFileDownloadForEmailAttachmentBean 94: 95: 96: %-- /RadTicketsFileDownloadForEmailAttachment?attachmentId=${all_attachments_for_this_ticket_row.id}fileName=${all_attachments_for_this_ticket_row.attachment_name} --% 97: mt:attach type=application/octet-stream 98: name=${all_attachments_for_this_ticket_row.attachment_name} 99: filename=%= RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() % / 100: So don't make a static reference to the bean: RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() yourbeanname.getTempFilePath() p 0x62590808.asc Description: application/pgp-keys signature.asc Description: OpenPGP digital signature
Re: [email] Dynamic attachments in mailer taglib 2 using JavaBean
That's what I can't understand. Should my call to the bean be a valid non-static code to get that value? I am new to java javabeans. The statement you wrote is exactly my statement in the JSP: yourbeanname.getTempFilePath() Is the same as: RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() How else do I make this statement in a non-static way? Ferindo On Sep 3, 2010, at 7:13 AM, Pid p...@pidster.com wrote: On 03/09/2010 04:49, Ferindo Middleton wrote: I've written a javabean that connects to a database, downloads a file, and one of the getter methods returns the complete file path to the file. The problem I have is: when the JSP runs and gets to the part where it gets the file path to pass to the taglib, I get an error message that is typical of a reference to a nonstatic variable. This concerns me as I thout getter methods in javabeans would inherently returns values that are valid instance variables in a JSP. I will paste my getter method below, the JSP call to that method and the error message below: any guidance is welcome. Thank you: Getter method in jsvabean (javabean compiles fine): public String getTempFilePath() { this.downloadedfilename= tempFilePath; return this.downloadedfilename; } JSP call to getter method above: jsp:useBean id=getFilePath scope=request class=hall.RadTicketsFileDownloadForEmailAttachmentBean jsp:setProperty name=getFilePath property=fileId value=${all_attachments_for_this_ticket_row.id} / jsp:setProperty name=getFilePath property=originalFileName value=${all_attachments_for_this_ticket_row.attachment_name} / c:forEach items=${all_attachments_for_this_ticket.rows} var=all_attachments_for_this_ticket_row %-- /RadTicketsFileDownloadForEmailAttachment?attachmentId=${ all_attachments_for_this_ticket_row.id}fileName=${all_attachments_for_this_ticket_row.attachment_name} --% mt:attach type=application/octet-stream name=${all_attachments_for_this_ticket_row.attachment_name} filename=%= RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() % / /c:forEach /jsp:useBean ... And the error message: org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 97 in the jsp file: /web/radtickets/ticket_email_response/ticket_email_response_dispatcher_page.jsp Cannot make a static reference to the non-static method getTempFilePath() from the type RadTicketsFileDownloadForEmailAttachmentBean 94: 95: 96:%-- /RadTicketsFileDownloadForEmailAttachment?attachmentId=${all_attachments_for_this_ticket_row.id}fileName=${all_attachments_for_this_ticket_row.attachment_name} --% 97:mt:attach type=application/octet-stream 98:name=${all_attachments_for_this_ticket_row.attachment_name} 99:filename=%= RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() % / 100: So don't make a static reference to the bean: RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() yourbeanname.getTempFilePath() p 0x62590808.asc - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [email] Dynamic attachments in mailer taglib 2 using JavaBean
No Ferindo. What he's saying is you are calling the class not an instance of the class. You can only call a class if the method is stactic. http://download.oracle.com/javase/tutorial/java/javaOO/classvars.html On Fri, Sep 3, 2010 at 3:32 PM, Ferindo Middleton ferindo.middle...@gmail.com wrote: That's what I can't understand. Should my call to the bean be a valid non-static code to get that value? I am new to java javabeans. The statement you wrote is exactly my statement in the JSP: yourbeanname.getTempFilePath() Is the same as: RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() How else do I make this statement in a non-static way? Ferindo On Sep 3, 2010, at 7:13 AM, Pid p...@pidster.com wrote: On 03/09/2010 04:49, Ferindo Middleton wrote: I've written a javabean that connects to a database, downloads a file, and one of the getter methods returns the complete file path to the file. The problem I have is: when the JSP runs and gets to the part where it gets the file path to pass to the taglib, I get an error message that is typical of a reference to a nonstatic variable. This concerns me as I thout getter methods in javabeans would inherently returns values that are valid instance variables in a JSP. I will paste my getter method below, the JSP call to that method and the error message below: any guidance is welcome. Thank you: Getter method in jsvabean (javabean compiles fine): public String getTempFilePath() { this.downloadedfilename= tempFilePath; return this.downloadedfilename; } JSP call to getter method above: jsp:useBean id=getFilePath scope=request class=hall.RadTicketsFileDownloadForEmailAttachmentBean jsp:setProperty name=getFilePath property=fileId value=${all_attachments_for_this_ticket_row.id} / jsp:setProperty name=getFilePath property=originalFileName value=${all_attachments_for_this_ticket_row.attachment_name} / c:forEach items=${all_attachments_for_this_ticket.rows} var=all_attachments_for_this_ticket_row %-- /RadTicketsFileDownloadForEmailAttachment?attachmentId=${ all_attachments_for_this_ticket_row.id }fileName=${all_attachments_for_this_ticket_row.attachment_name} --% mt:attach type=application/octet-stream name=${all_attachments_for_this_ticket_row.attachment_name} filename=%= RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() % / /c:forEach /jsp:useBean ... And the error message: org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 97 in the jsp file: /web/radtickets/ticket_email_response/ticket_email_response_dispatcher_page.jsp Cannot make a static reference to the non-static method getTempFilePath() from the type RadTicketsFileDownloadForEmailAttachmentBean 94: 95: 96:%-- /RadTicketsFileDownloadForEmailAttachment?attachmentId=${ all_attachments_for_this_ticket_row.id }fileName=${all_attachments_for_this_ticket_row.attachment_name} --% 97:mt:attach type=application/octet-stream 98:name=${all_attachments_for_this_ticket_row.attachment_name} 99:filename=%= RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() % / 100: So don't make a static reference to the bean: RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() yourbeanname.getTempFilePath() p 0x62590808.asc - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [email] Dynamic attachments in mailer taglib 2 using JavaBean
On 03/09/2010 14:36, Wesley Acheson wrote: No Ferindo. What he's saying is you are calling the class not an instance of the class. You can only call a class if the method is stactic. http://download.oracle.com/javase/tutorial/java/javaOO/classvars.html jsp:useBean id=getFilePath scope=request class=hall.RadTicketsFileDownloadForEmailAttachmentBean http://java.sun.com/products/jsp/tags/11/syntaxref11.fm14.html You've defined 'getFilePath' as the instance name, so that's what you need to refer to, rather than the Class name, as Wesley explained. p 0x62590808.asc Description: application/pgp-keys signature.asc Description: OpenPGP digital signature
[email] Dynamic attachments in mailer taglib 2 using JavaBean
I've written a javabean that connects to a database, downloads a file, and one of the getter methods returns the complete file path to the file. The problem I have is: when the JSP runs and gets to the part where it gets the file path to pass to the taglib, I get an error message that is typical of a reference to a nonstatic variable. This concerns me as I thout getter methods in javabeans would inherently returns values that are valid instance variables in a JSP. I will paste my getter method below, the JSP call to that method and the error message below: any guidance is welcome. Thank you: Getter method in jsvabean (javabean compiles fine): public String getTempFilePath() { this.downloadedfilename= tempFilePath; return this.downloadedfilename; } JSP call to getter method above: jsp:useBean id=getFilePath scope=request class=hall.RadTicketsFileDownloadForEmailAttachmentBean jsp:setProperty name=getFilePath property=fileId value=${all_attachments_for_this_ticket_row.id} / jsp:setProperty name=getFilePath property=originalFileName value=${all_attachments_for_this_ticket_row.attachment_name} / c:forEach items=${all_attachments_for_this_ticket.rows} var=all_attachments_for_this_ticket_row %-- /RadTicketsFileDownloadForEmailAttachment?attachmentId=${ all_attachments_for_this_ticket_row.id}fileName=${all_attachments_for_this_ticket_row.attachment_name} --% mt:attach type=application/octet-stream name=${all_attachments_for_this_ticket_row.attachment_name} filename=%= RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() % / /c:forEach /jsp:useBean ... And the error message: org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 97 in the jsp file: /web/radtickets/ticket_email_response/ticket_email_response_dispatcher_page.jsp Cannot make a static reference to the non-static method getTempFilePath() from the type RadTicketsFileDownloadForEmailAttachmentBean 94: 95: 96: %-- /RadTicketsFileDownloadForEmailAttachment?attachmentId=${all_attachments_for_this_ticket_row.id}fileName=${all_attachments_for_this_ticket_row.attachment_name} --% 97: mt:attach type=application/octet-stream 98: name=${all_attachments_for_this_ticket_row.attachment_name} 99: filename=%= RadTicketsFileDownloadForEmailAttachmentBean.getTempFilePath() % / 100: Stacktrace: org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:439) org.apache.jasper.compiler.Compiler.compile(Compiler.java:334) org.apache.jasper.compiler.Compiler.compile(Compiler.java:312) org.apache.jasper.compiler.Compiler.compile(Compiler.java:299) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:589) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) Ferindo