Still no luck with this issue....

I think I found the relevant code that causes the error:

public WebDriver get() {
        WebDriver webDriver = delegate.get();
        if (webDriver == null) {
            throw new DelegateWebDriverNotFound();
        }
        return webDriver;
    }


In my case the local variable webDriver is null! Now I would be very
grateful if someone told me what could cause the Threalocal delegate
to return null in the first place?

Regards,

Julien.



2013/2/12 Mauro Talevi <mauro.tal...@aquilonia.org>

> Yes please send me the project.
>
>
> On 12 Feb 2013, at 21:14, Julien Martin <bal...@gmail.com> wrote:
>
> Hi Mauro,
> Thanks for your reply. I am sorry I can't provide a code on github.
> However, I can send a zipped maven project to your email if you wish.
> As far as the extra steps are concerned, I removed the steps with the
> @BeforeScenario and it does not make any difference. I am really not sure
> where the problem comes from...
> Let me know if I can mail you the maven project.
> Regards,
> Julien.
>
>
>
> 2013/2/12 Mauro Talevi <mauro.tal...@aquilonia.org>
>
>>  I've not been able to investigate your problem as I would need to first
>> reproduce it.  This is why I was asking for a fork on github where we could
>> reproduce and investigate it.
>>
>> WRT your questions:
>>
>> 1.  the issue is most likely in the extra @BeforeScenario/Story steps
>> that you've defined.  The WebDriver is set in the
>> PerScenario/StoryWebDriverSteps annotated methods
>> 2.  it's got nothing to do with the location of the java/story files.
>>
>>
>> On 12/02/2013 16:41, Julien Martin wrote:
>>
>> Hi Mauro!
>>
>> My codebase is actually slightly different from the one described in the
>> JIRA. I do get the same error message though...
>>
>>  I've spent the best of the day trying to figure out the difference
>> between my codebase and that of the maven archetype (spring+web) which does
>> work fine. To no avail.
>>
>>  I have two questions:
>> 1. By looking at the code provided in my prior email, can you spot
>> something wrong?
>> 2. Can you tell me whether all my JBehave code (java files, story files)
>> should be located in src/main/ or src/test?
>>
>>  Regards,
>>
>>  Julien.
>>
>> 2013/2/12 Mauro Talevi <mauro.tal...@aquilonia.org>
>>
>>>  I've commented on it.
>>>
>>> Same advice to you:
>>>
>>> Would it be possible for you to clone the jbehave-tutorial in github and
>>> provide your modifications in different branches?
>>>
>>> In this way, it's much easier to see what changing wrt to a working
>>> scenario to work with an easily reproducible codebase.
>>> Cheers
>>>
>>>
>>> On 12/02/2013 14:28, Julien Martin wrote:
>>>
>>> Hi,
>>> I noticed someone has encountered the same problem. See here:
>>> http://jira.codehaus.org/browse/JBEHAVE-790
>>> Any update on this issue?
>>> Julien.
>>>
>>> 2013/2/11 Julien Martin <bal...@gmail.com>
>>>
>>>> Hello,
>>>>
>>>> I am trying to set up a JBehave + Spring based on the Etsy samples.
>>>>
>>>>  However, here is what I get when I run the stories:
>>>>
>>>>  org.springframework.beans.factory.BeanCreationException: Error
>>>> creating bean with name 'steps' defined in class path resource
>>>> [META-INF/spring/steps.xml]: Instantiation of bean failed; nested exception
>>>> is org.springframework.beans.BeanInstantiationException: Could not
>>>> instantiate bean class [com.bignibou.bdd.steps.WebSteps]: Constructor threw
>>>> exception; nested exception is
>>>> org.jbehave.web.selenium.DelegatingWebDriverProvider$DelegateWebDriverNotFound:
>>>> WebDriver has not been found for this thread.
>>>> Please verify you are using the correct WebDriverProvider, with the
>>>> appropriate credentials if using remote access, e.g. to SauceLabs:
>>>> -DSAUCE_USERNAME=xxxxxx -DSAUCE_ACCESS_KEY=xxx-xxxx-xxxx-xxxx-xxx
>>>>
>>>>  Can anyone please help?
>>>>
>>>>  Regards,
>>>>
>>>>  Julien.
>>>>
>>>>  Here is my Stories source:
>>>>
>>>>  @RunWith(SpringAnnotatedEmbedderRunner.class)
>>>> @Configure()
>>>> @UsingEmbedder(embedder = Embedder.class, generateViewAfterStories =
>>>> true, ignoreFailureInStories = true, ignoreFailureInView = true)
>>>> @UsingSpring(resources = {
>>>> "classpath:META-INF/spring/applicationContext.xml",
>>>> "classpath:META-INF/spring/steps.xml" })
>>>> @UsingSteps(instances = { WebSteps.class })
>>>> public class SpringWebStories extends InjectableEmbedder {
>>>>
>>>>  @Test
>>>>  public void run() {
>>>>  injectedEmbedder().runStoriesAsPaths(storyPaths());
>>>>  }
>>>>
>>>>  protected List<String> storyPaths() {
>>>>  String searchInDirectory =
>>>> CodeLocations.codeLocationFromPath("src/test/java").getFile();
>>>>  return new StoryFinder().findPaths(searchInDirectory,
>>>> Arrays.asList("**/*.story"), null);
>>>>  }
>>>> }
>>>>
>>>>  Here is my WebSteps source:
>>>>
>>>>  public class WebSteps {
>>>>
>>>>  @Autowired
>>>>  private JavaMailSender javaMailSender;
>>>>
>>>>  private Home home;
>>>>
>>>>  public WebSteps(PageFactory factory) {
>>>>  this.home = factory.home();
>>>>  }
>>>>
>>>>  @Given("the following email address: $email and a chosen member
>>>> status of $status and the following password: $password")
>>>>  public void anonymousVisitorEntersDetails(String email, String
>>>> status, String password) {
>>>>  System.out.println("instance:" + javaMailSender);
>>>>  home.open();
>>>>  home.enterDetails(email, status, password);
>>>>  }
>>>>
>>>>  @When("the anonymous visitor signs up")
>>>>  public void anonymousVisitorDoesRegister(String login, String
>>>> password) {
>>>>  home.doRegister();
>>>>  }
>>>>
>>>>  @Then("a confirmation email with activation information is sent to
>>>> the anonymous visitor")
>>>>  public void activationInformationIsSent() {
>>>>
>>>>  }
>>>>
>>>>  ...
>>>>
>>>>  Here is my steps.xml:
>>>>
>>>>  <beans xmlns="http://www.springframework.org/schema/beans"; xmlns:xsi="
>>>> http://www.w3.org/2001/XMLSchema-instance";
>>>>  xsi:schemaLocation="http://www.springframework.org/schema/beans
>>>>
>>>> http://www.springframework.org/schema/beans/spring-beans-2.5.xsd";>
>>>>
>>>>  <bean id="driverProvider"
>>>> class="org.jbehave.web.selenium.FirefoxWebDriverProvider">
>>>>  </bean>
>>>>
>>>>  <bean id="webDriverProvider"
>>>> class="org.jbehave.web.selenium.PerStoryWebDriverSteps">
>>>>  <constructor-arg ref="driverProvider" />
>>>>  </bean>
>>>>
>>>>  <bean id="lifecycleSteps"
>>>> class="com.bignibou.bdd.steps.LifecycleSteps">
>>>>  <constructor-arg ref="driverProvider" />
>>>>  </bean>
>>>>
>>>>  <bean id="pageFactory" class="com.bignibou.bdd.pages.PageFactory">
>>>>  <constructor-arg ref="driverProvider" />
>>>>  </bean>
>>>>
>>>>  <bean id="steps" class="com.bignibou.bdd.steps.WebSteps">
>>>>  <constructor-arg ref="pageFactory" />
>>>>  </bean>
>>>> </beans>
>>>>
>>>
>>>
>>>
>>
>>
>

Reply via email to