2011-12-10 3 views
0

각 게시물마다 보내야하는 핑백 목록이 있습니다. 여기 XMLRPC :: FaultException 오류를 처리하는 방법?

def send_trackback 
    #do stuff 
    begin 
    Pingback::Client.new.ping(source_uri, target_uri) 
    trackback.status = 1 
    trackback.save 
    rescue 
    trackback.status = 2 
    trackback.save 
    nil 
    end 
end 

전체 오류입니다 :

XMLRPC::FaultException (The specified target URL cannot be used as a target. It either doesn’t exist, or it is not a pingback-enabled resource.): 
    app/controllers/posts_controller.rb:67:in `block in send_trackback' 
    app/controllers/posts_controller.rb:62:in `send_trackback' 
    app/controllers/posts_controller.rb:8:in `pingback' 

Rendered /usr/local/lib/ruby/gems/1.9.1/gems/actionpack-3.1.1/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.1ms) 
Rendered /usr/local/lib/ruby/gems/1.9.1/gems/actionpack-3.1.1/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (0.8ms) 
Rendered /usr/local/lib/ruby/gems/1.9.1/gems/actionpack-3.1.1/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (4.6ms) 

상태가 0로서 밖으로 시작하지만 ping이 다시 실패하면 괜찮아요하지만 상태가 세트 2 원하고 내가 원하는 그것은 다음과 같이 보입니다 그냥 레일에 오류를 던지지 마라. 성공하면 상태를 1로 설정합니다.

구조 블록이 처리하지 않아야합니까? 내가 뭘 놓치고 있니?

답변

0

그래야합니다. 예외가 pingback/send_trackback에서 트리거되고 send_pingback이 아닌 것처럼 보입니다.

+0

이 오타를 수정했습니다. 나는 그 부분을 수동으로 입력했다. –

+0

레일이 끝날 때 캐싱 할 가능성이 있습니까? 내가 개발에서 뭔가를 바꾸고 생산에 끌어 당기는 것처럼 보이고 작동하지 않는 것 같습니다. 몇 시간을 기다리면 작동합니다. 그게 캐싱되어야 해! –

관련 문제