|
just another regularban.info web blog |
| MEMBERS: | Passing Parameters In A Data Table Using JSF
Some working knowledge of J2EE or JSF is assumed for this article. Like some of you I've been frustrated with this technology known as JSF or Java Server Faces. There are several different flavors out there that are built on the shoulders of JSF. For instance Oracle's ADF (Application Development Framework). Oracle ADF Faces Components is a set of over a 100 JSF components that let you build a richer user interface for your Java EE applications. Oracle ADF Faces also includes many of the framework features most needed by JSF developers today. That is great, and in many ways it will make life easier to develop in a JSF environment. Some items you will find available in these "add on" packages have a real benefit. For instance, as of the date of this article, I was very surprised that a File Upload is a feature still not implemented in JSF in respect to using natural jsf tags. There are ways to accomplish this task in JSF but they are not native JSF approaches. The process is a "no brainer" in just about every other framework available today, including asp.net. Another simple task (I thought) was having a data table present the results of a query in an editable format. Possibly to update a user record or shopping cart. After working in other technologies it was very efficient to return a result set to a data table object and let that object take care of some of the trivial behaviors and characteristics of the table itself. When I started exploring JSF I was frequently and at every turn becoming more and more frustrated in trying to duplicate some of the most basic of processes similar to managing records through data tables. There are not a whole lot of resources out there yet on JSF although it is growing steadily, and I found that all too often the resources that I was finding on the internet either didn't apply to the more simple tasks or the information was just completely wrong. One example of that was that it was stated in one article I read that you cannot use command buttons inside of a JSF data table. The recommendation was to use JSF hyperlinks instead when trying to perform an action from a data table due to a bug in the framework that prevented command button actions to fire if the button resided inside of a data table. At first I thought "you've got to be kidding me"! Then I remembered that I've been finding a fair amount of "bogus" information in regards to JSF development so I decided to do further research and discovered that information to be less than accurate as well. I simply had to find a way to populate a data table through a result set and get a command button to fire an action and pass all of the data in the data table to the backing bean to update the record. Multiple command buttons would exist as well as hidden fields pertaining to id numbers and so forth. Pretty basic stuff and we've all done it before with relative ease. It turned out that the solution was in fact a simple one. "Binding". You've heard about it and read about it. But this approach was something a little different as far as I could find. Many of the blogs and articles that I read dealt with passing the values as parameters and following the steps to define the parameters in faces.config files etc., then retrieving the parameters in a backing bean. Processing the passed data required another set of procedures to utilize mapping to each of the field parameters passed and then processing could begin. That seemed like a whole heck of a lot to me just to retrieve form data. Then it occurred to me that I should be able to "bind" a text field component on a page to a backing bean. Once it is bound then all I have to do is extract the data. And that's all there is to it. My query returned results and pre-populated a data table including text fields with the values of the query pre-populated in the text fields. Each one of those text fields was bound to a "HtmlInputText" type in my backing bean. It was not a String type like other approaches define. Doing that does require you to map parameters and populate that String variable through your set methods once the form is submitted. What I found is that if I bind my text field to a property of text field type that it solved my problem of passing values from a data table, and I didn't have to define parameter fields anywhere in any xml file. Now that I had that figured that out I needed to figure out how to get the value of that property that I've bound my form field to, well why not getValue()? I personally hadn't seen any examples online or in books for retrieving the value from a form binding it to the type of form element it was and simply use the getValue() to pull out the value of the object. Used like this getParameterFromForm().getValue(). Let me clarify that I am NOT saying that trying this approach isn't documented anywhere, I find it hard to believe that I've had some stroke of genius that no one has had before in the world of java, especially since I'm coming from .NET and ColdFusion. After doing that I no longer had any problems passing form data to my backing bean. I was able to dynamically populate data tables with any number of records including any number of command buttons within that data table and I didn't have to concern myself with remembering to define parameters in any other areas of the application. So put simply you can bind your form fields to properties of the same type in your backing bean, and then extract the value of that object using getValue() if you prefer over utilizing parameter string mapping and similar approaches for processing form data. I found it to be easier and less time consuming which has costs associated to it as well.
Simple Principles To Help You Build An Effective Website
You know when it comes to doing anything in life its all about implementation. Sure at this juncture you may be overwhelmed and a little confused about what to do. You may have lots of ideas but you just do not know where to start. As a result you do not implement anything you just get confused and overwhelmed and then nothing happens. The first thing you need to do is identify your strengths. This is where you are going to begin. When it comes to building a website you know that its core value is based upon the information it provides. Secondly that information needs to be organized logically. Then that information needs to make sense to your readers and also needs to be understood by the search engines. So having good site structure will benefit all parties concerned. At this point you probably have something in mind about what you want to do online - in other words a subject that you want to build your site around. If not you have some reason for wanting to build a site in the first place and that may be just to share it with friends and family or to make money. Identify your ideas and write them down. Once you have cleared your mind then you will be in a far better position to move onto the next task. The main thing is to understand the main structure of the internet and that is to provide information which can be delivered through multiple mediums such as video, audio, or straight content. Then just make sure that you can deliver this effectively and you will have a solid foundation to build on.
How To Lay The Foundation For A Good Website
So you are passionate about a particular subject and you want to take your passion online. At this point you may not know where to start and this is where I hope I can help you. After all you deserve to share your passion with others and they will benefit from it also. The key to building any website is to build it with your visitor in mind. What can you truly do for them that will add value to their experience when visiting your site? Let's take for example that you enjoy building model planes. The first place you are going to visit is the online forums. The reason I choose forums is because this is where conversations take place relative to any given topic. This will give you a measure of interest. The first step is to see how up to date the forum is and secondly how many posts it receives per day. Additionally how many people respond to those posts on any given day? Obviously the more the better, the more interest the better for you. The next thing you are going to look for is, what are the questions being asked and can you engage in the conversation and offer solutions. If this is the case your next task is to look for keywords. What keywords do people use to seek out solutions for their needs? The next thing to do is look for a keyword tool. I am going to use Google's keyword tool for this example. Keyword tools by the way are not by any standard of the imagination an exact science. They give you a rough guide as to how many times a given keyword is searched. So do not think that the numbers you get are exact. Your task right now is to develop a list of keywords. Once you have this list you are now going to look at the level of competition. Starting out we do not want too much competition but remember competition is good as it means there is money to be made in that market. We at this point are just looking for cheaper ways to enter the market. To do this enter your keyword into the search box in quotes. Then check how many websites are coming up for that keyword. If it is in the millions that is not good if it is in the thousands then that is great. You will now be refining your list based on competition. Once the list is completely refined you will now have the general structure of your site. These keywords will make up individual web pages. To conclude this is how to lay the foundation then once you have these keywords you will be ready to structure each of the pages on your site using each individual keyword with content relative to that. To learn how to put all this together select any of the links provided.
|
* About Archives
Categories:
Last Updated: |
| regularban.info
is proudly powered by WordPress MU running
on regularban.info.
Create a new blog and join in the fun! Entries (RSS) and Comments (RSS). |