I've done all kinds of things with converters, and I've never had a
problem.  I don't think its a myfaces problem, but its possible.  What
browser are you using?


On Fri, 18 Mar 2005 18:48:34 +0000, Kostas Karadamoglou
<[EMAIL PROTECTED]> wrote:
> Have you ever tried to create a converter and use it with myfaces
> implementation succesfully.
> 
> Do you believe that it is problem of myfaces?
> 
> 
> Heath Borders wrote:
> 
> >Yeah, I didn't think that would do anything, but I figured it was worth a 
> >shot.
> >
> >Like I said, it seems like nothing is coming back on the request.
> >Start debugging through the renderer's decode method.
> >
> >
> >On Fri, 18 Mar 2005 18:24:28 +0000, Kostas Karadamoglou
> ><[EMAIL PROTECTED]> wrote:
> >
> >
> >>No! the same problem, nothing changed.
> >>I am so desperate :(
> >>
> >>Heath Borders wrote:
> >>
> >>
> >>
> >>>Do this:
> >>>
> >>>private Converter myConverter = new MyConverter();
> >>>
> >>>public Converter getMyConverter()
> >>>{
> >>>return myConverter;
> >>>}
> >>>
> >>>then, converter="#{myBean.myConverter}" in your jsp.
> >>>
> >>>
> >>>On Fri, 18 Mar 2005 18:13:51 +0000, Kostas Karadamoglou
> >>><[EMAIL PROTECTED]> wrote:
> >>>
> >>>
> >>>
> >>>
> >>>>How? I didn't understand it. Can you please give me an example?
> >>>>Heath Borders wrote:
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>>Here's another option.  Rather than making the converter a faces
> >>>>>managed bean, you can make it an instance variable of yoru event
> >>>>>handler.  Try that and see if it works better.
> >>>>>
> >>>>>
> >>>>>On Fri, 18 Mar 2005 17:30:41 +0000, Kostas Karadamoglou
> >>>>><[EMAIL PROTECTED]> wrote:
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>Couldn't it be consindered as a bug?
> >>>>>>Does anyone eles have the same problem?
> >>>>>>
> >>>>>>Heath Borders wrote:
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>oh.  Sorry I misunderstood your first email.
> >>>>>>>
> >>>>>>>That means that there's something wrong with the selectOneMenu or 
> >>>>>>>something.
> >>>>>>>
> >>>>>>>
> >>>>>>>On Fri, 18 Mar 2005 16:22:42 +0000, Kostas Karadamoglou
> >>>>>>><[EMAIL PROTECTED]> wrote:
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>Yes but how can JSF call the getAsObject method of the converter with
> >>>>>>>>the str parameter equals to null !!!
> >>>>>>>>
> >>>>>>>>I checked the generated code and the all the option tags in the drop
> >>>>>>>>down menu have a value ("1","2","3","4","5" and so on)
> >>>>>>>>So how jsf returns a null string? thats the problem. :(
> >>>>>>>>Heath Borders wrote:
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>No, you don't want to do that.  Otherwise, the category object will
> >>>>>>>>>not be properly set in his setter.  The problem is definitely with
> >>>>>>>>>your converter.  My guess is that its getting re-created between
> >>>>>>>>>requests, and thus the map is getting cleared.  I couldn't tell you
> >>>>>>>>>why that's happening, though.
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>On Fri, 18 Mar 2005 11:05:23 -0500, Srikanth Madarapu
> >>>>>>>>><[EMAIL PROTECTED]> wrote:
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>Can you try
> >>>>>>>>>>
> >>>>>>>>>>this.allCategories.add(new SelectItem(category.getId(),  
> >>>>>>>>>>category.getTitle()));
> >>>>>>>>>>
> >>>>>>>>>>The getId() method should return the same value as returned by 
> >>>>>>>>>>getAsString(). I think there is some problem...
> >>>>>>>>>>
> >>>>>>>>>>Srikanth
> >>>>>>>>>>
> >>>>>>>>>>-----Original Message-----
> >>>>>>>>>>From: Kostas Karadamoglou [mailto:[EMAIL PROTECTED]
> >>>>>>>>>>Sent: Friday, March 18, 2005 10:56 AM
> >>>>>>>>>>To: MyFaces Discussion
> >>>>>>>>>>Subject: Re: Problem with the getAsObject of a Converter
> >>>>>>>>>>
> >>>>>>>>>>Hi, I attached the getter of allcategories, as you can see I return 
> >>>>>>>>>>a
> >>>>>>>>>>list of selectItem objects
> >>>>>>>>>>
> >>>>>>>>>>public List getAllCategories(){
> >>>>>>>>>>   if(this.allCategories==null){
> >>>>>>>>>>       this.allCategories=new ArrayList();
> >>>>>>>>>>       this.allCategories.add(new SelectItem(new Category(),"Choose
> >>>>>>>>>>a category..."));
> >>>>>>>>>>       List categories=this.eventRegistry.getCategories();
> >>>>>>>>>>       for(Iterator iter=categories.iterator(); iter.hasNext();){
> >>>>>>>>>>           Category category=(Category)iter.next();
> >>>>>>>>>>           this.allCategories.add(new SelectItem(category,
> >>>>>>>>>>category.getTitle()));
> >>>>>>>>>>       }
> >>>>>>>>>>   }
> >>>>>>>>>>   return this.allCategories;
> >>>>>>>>>>}
> >>>>>>>>>>
> >>>>>>>>>>Srikanth Madarapu wrote:
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>What is the return type of allCategories ?
> >>>>>>>>>>>
> >>>>>>>>>>>The list coming from allCategories should be a list of 
> >>>>>>>>>>>"SelectItem" objects, I think in yours case its just a list of 
> >>>>>>>>>>>Strings
> >>>>>>>>>>>
> >>>>>>>>>>>-Srikanth
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>-----Original Message-----
> >>>>>>>>>>>From: Kostas Karadamoglou [mailto:[EMAIL PROTECTED]
> >>>>>>>>>>>Sent: Friday, March 18, 2005 9:17 AM
> >>>>>>>>>>>To: [email protected]
> >>>>>>>>>>>Subject: Problem with the getAsObject of a Converter
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>Hi again!!!
> >>>>>>>>>>>
> >>>>>>>>>>>I have another problem now, Very strange Can you suggest me a 
> >>>>>>>>>>>solution?
> >>>>>>>>>>>
> >>>>>>>>>>>I created a converter for objects of type Category in order to 
> >>>>>>>>>>>display
> >>>>>>>>>>>some Category beans in a selectOneMenu tag.
> >>>>>>>>>>>
> >>>>>>>>>>>I have debuged the application and I noticed a strange behaviour 
> >>>>>>>>>>>of JSF
> >>>>>>>>>>>which I cannot understand.
> >>>>>>>>>>>Below I have the sequence explanation of the problem and the 
> >>>>>>>>>>>content of
> >>>>>>>>>>>each method and jsp fragment.
> >>>>>>>>>>>
> >>>>>>>>>>>1)The getAsString method works perfectly and returns the following
> >>>>>>>>>>>strings "0","1","2","3","4","5","6","7"
> >>>>>>>>>>>
> >>>>>>>>>>>2)The page is displayed properly, and I choose from the drop down 
> >>>>>>>>>>>menu a
> >>>>>>>>>>>category.
> >>>>>>>>>>>
> >>>>>>>>>>>2)Afterwords JSF invokes getAsObject (I think for the chosen 
> >>>>>>>>>>>option)
> >>>>>>>>>>>with the str parameter null !!!!!!!
> >>>>>>>>>>>In this situation I return a null object (which is wrong).
> >>>>>>>>>>>
> >>>>>>>>>>>4)After that  when the page is redisplayed the getAsString throw an
> >>>>>>>>>>>Exception because of the null value
> >>>>>>>>>>>
> >>>>>>>>>>>JSP-------------------------------------------------------
> >>>>>>>>>>><h:selectOneMenu id="selectCategory"
> >>>>>>>>>>>converter="#{categoryConverter}" 
> >>>>>>>>>>>value="#{eventHandler.selectedCategory}">
> >>>>>>>>>>>   <f:selectItems id="allCategories"
> >>>>>>>>>>>value="#{eventHandler.allCategories}"/>
> >>>>>>>>>>></h:selectOneMenu>
> >>>>>>>>>>>
> >>>>>>>>>>>getAsString------------------------------------------------
> >>>>>>>>>>>
> >>>>>>>>>>>public String getAsString(FacesContext facesContext, UIComponent
> >>>>>>>>>>>uIComponent, Object obj) throws ConverterException {
> >>>>>>>>>>>   String retValue=null;
> >>>>>>>>>>>   if(obj==null)
> >>>>>>>>>>>       throw new ConverterException("not null object of type
> >>>>>>>>>>>Category expected");
> >>>>>>>>>>>   else if(obj instanceof Category){
> >>>>>>>>>>>       Category category=(Category)obj;
> >>>>>>>>>>>       map.put(new Integer(category.getId()), category);
> >>>>>>>>>>>       retValue=String.valueOf(category.getId());
> >>>>>>>>>>>   }else{
> >>>>>>>>>>>       throw new ConverterException("object of type Category
> >>>>>>>>>>>expected received: "+obj.getClass().getName()+"="+obj.toString());
> >>>>>>>>>>>   }
> >>>>>>>>>>>   return retValue;
> >>>>>>>>>>>}
> >>>>>>>>>>>
> >>>>>>>>>>>getAsObject------------------------------------------------
> >>>>>>>>>>>
> >>>>>>>>>>>public Object getAsObject(FacesContext facesContext, UIComponent
> >>>>>>>>>>>uIComponent, String str) throws ConverterException {
> >>>>>>>>>>>   Category retValue=null;
> >>>>>>>>>>>   if(str!=null){
> >>>>>>>>>>>       try{
> >>>>>>>>>>>           System.out.println(str);
> >>>>>>>>>>>           Integer id=Integer.valueOf(str);
> >>>>>>>>>>>           retValue=(Category)map.get(id);
> >>>>>>>>>>>       }catch(Exception ex){
> >>>>>>>>>>>           throw new ConverterException("a number formatted string
> >>>>>>>>>>>expected");
> >>>>>>>>>>>       }
> >>>>>>>>>>>
> >>>>>>>>>>>   }else{
> >>>>>>>>>>>       //throw new ConverterException("a not null string 
> >>>>>>>>>>> expected");
> >>>>>>>>>>>       return null;
> >>>>>>>>>>>   }
> >>>>>>>>>>>   return retValue;
> >>>>>>>>>>>}
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>
> >>>>
> >>>
> >>>
> >>>
> >>>
> >>
> >>
> >
> >
> >
> >
> 
> 


-- 
-Heath Borders-Wing
[EMAIL PROTECTED]

Reply via email to