2012-02-03 2 views
1

저는 Ruby와 Rails에 대해 매우 새롭습니다. 내가 사용하는dhtmlxGrid 편집 가능한 그리드 오류 : ECONNRESET

내가이 페이지에 표시된 dhtmlxGrid 사용 1.9.2

3.0.9 루비 레일 : http://www.dhtmlx.com/blog/?p=426

나는 무작위로 추가하고 그리드에 몇 가지 항목을 삭제 한 후 다음과 같은 오류가 발생합니다 : "ERROR의 errno : ECONNRESET은 : 기존의 연결이 서버가 즉시 중단하지 않습니다

C:/Railsinstaller/Ruby1.9.2/lib/ruby1.9.1/webrick/httpserver.rb:56 in 'eof?' 

C:/Railsinstaller/Ruby1.9.2/lib/ruby1.9.1/webrick/httpserver.rb:56 in 'run' 

C:/Railsinstaller/Ruby1.9.2/lib/ruby1.9.1/webrick/server.rb:183 in 'block in start_thread' 

REMOTEHOST에 의해 폐쇄 된 대신 무작위로 충돌 일부 완료 GET 요청 후 다음 나는 오류에서 얻을.. 내 루비 인터프리터 (CUI) 1.9.2p290이 추락 한 Windows.

이 불안정성을 어떻게 피할 수 있습니까?

내 모델은 다음과 같습니다

시간 단계 컨트롤러는 다음과 같습니다
class Timestep < ActiveRecord::Base 

has_many :prodcaps, :dependent => :destroy 
has_many :demands, :dependent => :destroy 
has_many :maxaddcaps, :dependent => :destroy 
has_many :addcapcosts, :dependent => :destroy 
validates :stepnumber,  :presence => true 
attr_accessible :stepnumber 

end 

: 공유 헤더 인과

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
    <%= render 'shared/grid_head' %> 
</head> 
<body> 
    <div id="grid_here" style="width:600px; height:400px;"> 
    </div> 
     <script type="text/javascript" charset="utf-8"> 
     var grid = new dhtmlXGridObject("grid_here"); 
     grid.setImagePath("/javascripts/codebase/imgs/"); 
     grid.setHeader("Zeitpunkt"); 
     grid.setColSorting("str"); 
     grid.setInitWidths("*"); 
     grid.setSkin("dhx_skyblue"); 
     grid.init(); 
     grid.load("/timesteps/data.xml"); 

     dp = new dataProcessor("/timesteps/dbaction.xml"); 
     dp.init(grid); 
    </script> 
    <input type="button" value="Add" onclick="grid.addRow(grid.uid(),'<%=Timestep.last.stepnumber+1%>'); javascript:timedRefresh(500)"> 
    <input type="button" value="Delete" onclick="grid.deleteSelectedRows(); javascript:timedRefresh(500)"> 
</body> 
</html> 

:

class TimestepsController < ApplicationController 
def view 
end 
def data 
    @timesteps = Timestep.all() 
end 
def dbaction 
    #called for all db actions 
    stepnumber = params["c0"] 

    @mode = params["!nativeeditor_status"] 

    @id = params["gr_id"] 
    case @mode 
     when "inserted" 
      timestep = Timestep.new 
      timestep.stepnumber = stepnumber 
      timestep.save! 

      @tid = timestep.id 

     when "deleted" 
      timestep=Timestep.find(@id) 
      timestep.destroy 

      @tid = @id 

     when "updated" 
      timestep=Timestep.find(@id) 
      timestep.stepnumber = stepnumber 
      timestep.save! 

      @tid = @id 

    end 
end 
end 

시간 단계보기이입니다 :

,
<script src="/javascripts/codebase/dhtmlxcommon.js" type="text/javascript" charset="utf-8"></script> 
<script src="/javascripts/codebase/dhtmlxgrid.js" type="text/javascript" charset="utf-8"></script> 
<script src="/javascripts/codebase/dhtmlxgridcell.js" type="text/javascript" charset="utf-8"></script> 
<script src="/javascripts/codebase/dhtmlxdataprocessor.js" type="text/javascript" charset="utf-8"></script> 
<link rel="stylesheet" href="/javascripts/codebase/dhtmlxgrid.css" type="text/css" media="screen" charset="utf-8"> 
<link rel="stylesheet" href="/javascripts/codebase/skins/dhtmlxgrid_dhx_skyblue.css" type="text/css" media="screen" charset="utf-8"> 
<script type="text/javascript" charset="utf-8"> 
     <%#Definiere Funktion zur Aktualisierung der Seite%> 
     <%#Übernommen von http://www.quackit.com/javascript/javascript_refresh_page.cfm %> 
     function timedRefresh(timeoutPeriod) { 
     setTimeout("location.reload(true);",timeoutPeriod); 
     } 
</script> 

그리고 마침내 data.xml.builder은 다음과 같습니다

xml.instruct! :xml, :version=>"1.0" 

xml.tag!("rows") do 
    Timestep.all.each do |timestep| 
    xml.tag!("row",{ "id" => timestep.id }) do 
     xml.tag!("cell", timestep.stepnumber) 
    end 
    end 
end 

답변

0

이 오류는 Heroku가에 응용 프로그램을 배포 한 후 더 이상 발생하지 않습니다. 이것이 바로 webrick의 문제 일 뿐인 것처럼 보입니다.

관련 문제