2011-04-14 2 views
3

, 내 하나의 단계가 실패하고 페이지가 브라우저에서 다음과 같습니다카피 바라 + 셀레늄

Internal Server Error 

can't convert nil into String 
WEBrick/1.3.1 (Ruby/1.9.2/2010-08-18) at 127.0.0.1:50752 

내가 대신 culerity 그것을 실행, 나는 출력을 얻을 :

Broken pipe (Errno::EPIPE) 
      /Users/yuval/.rvm/gems/ruby-1.9.2-p0/gems/culerity-0.2.15/lib/culerity/remote_object_proxy.rb:47:in `write' 
etc... 

js 드라이버없이 실행하면 그 시점에서 전혀 실패하지 않습니다 (대신 js가 사용될 때 실패합니다. 따라서 js와 ​​함께 실행하려고합니다.) 운전사).

아이디어가 있으십니까?

+0

전체 추적을 얻을 수 있도록 개발 모드에서 레일을 실행할 수 있습니까? nil을 문자열로 변환 할 수 없으면 아무 데나있을 수 있습니다. –

+0

실제로 브라우저에서 실행할 때 실제로 실행됩니다 ... –

답변

7

나는 똑같은 문제에 직면했지만 해결책을 찾았습니다.

개발 모드에서 "http : // localhost : 3000"대신 "http://127.0.0.1:3000"으로 브라우저를 열려고하면 동일한 문제가 발생합니다.

내보기 파일에서 요청이 IP 형식 (예 : "http://127.0.0.1:50752") 인 경우 nil을 반환하는 "request.domain"을 사용했기 때문에 문제가 발생했습니다. 어딘가 헬퍼 메소드의보기에이

link_to "Click me", :host => subdomain + "." + request.domain + request.port_string 

같은이있는 경우

따라서 그와 같은 도우미 메서드를 사용하여 변경할 수 있습니다 : 다음과 같은

link_to "Click me", :host => with_host(subdomain) 

그리고 도우미 :

def with_host(subdomain) 
    if request.domain.present? 
     subdomain + "." + request.domain + request.port_string 
    end 
    end 

저에게는 가장 쉬운 해결책입니다. 아마도, 당신은 비슷한 것을 가지고있을 것입니다.

관련 문제