>From: "Ian.Priest" <[EMAIL PROTECTED]> 
>
> Hi, 
> 
> I think i may have found a bug in the test-framework: 
> 
> I'm have a ViewController that calls setValue() as part of it's 
> set-up... 
> 
> 
> public class SignupViewController extends AbstractViewController { 
> 
> private static final String DIALOG_DATA = "#{dialog.data}"; 
> 
> public String setup() { 
> 
> ... 
> 
> // Register the dialogData object for this dialog, and 
> continue 
> setValue(DIALOG_DATA, dialogData); 
> return SUCCESS; 
> 
> } 
> 
> However, in my test-class the setValue() call causes a 
> NullPointerException. Here's my test... 
> 
> public class SignupViewControllerTest extends 
> AbstractViewControllerTestCase { 
> 
> public static Test suite() { 
> return (new TestSuite(SignupViewControllerTest.class)); 
> } 
> 
> SignupViewController vc = null; 
> 
> public void setUp() { 
> super.setUp(); 
> 
> vc = new SignupViewController(); 
> } 
> 
> public SignupViewControllerTest(String arg0) { 
> super(arg0); 
> } 
> 
> public void testSetup() { 
> 
> vc.setDialogData(new SignupData()); 
> // run setup 
> vc.setup(); 
> ... 
> } 
> 


I think this null pointer is thrown because the object "dialog" can't be 
resolved in any scope.  

"#{dialog.data}"

Try staging a Map in session scope in the setup using the "dialog" key.


Gary


> Here's the stack trace 
> 
> java.lang.NullPointerException 
> at 
> org.apache.shale.test.mock.MockPropertyResolver.setValue(MockPropertyRes 
> olver.java:98) 
> at 
> org.apache.shale.test.mock.MockValueBinding.setValue(MockValueBinding.ja 
> va:159) 
> at 
> org.apache.shale.view.AbstractFacesBean.setValue(AbstractFacesBean.java: 
> 215) 
> at 
> com.scn.web.dialog.signup.SignupViewController.setup(SignupViewControlle 
> r.java:65) 
> at 
> com.scn.web.dialog.signup.SignupViewControllerTest.testSetup(SignupViewC 
> ontrollerTest.java:45) 
> ... 
> 
> Anyone else come across this? 
> 
> Cheers, 
> Ian 
> 

Reply via email to