error occurred while evaluating nil.accepts

I have an index method with a respond_to block that produces this error:

NoMethodError (You have a nil object when you didn't expect it! The error occurred while evaluating nil.accepts):

The show method has the same respond_to block but doesn't error out. If I take the respond_to block out of the index method, it works.

If I give index params[:keywords] I get this error:

Amazon::Search::Request::TypeError (non-existent/unimplemented search type: accepts):

Any advice?

Thanks, --Dean

  def index     unless params[:keywords].nil?       @books = Array.new       request = Amazon::Search::Request.new( DEV_TOKEN, ASSOCIATE_ID, 'us' )       response = request.keyword_search( params[:keywords] ) do | product>         @books.push( Book.new( <snip snip> ) )       end     end     respond_to do |f|       f.html { }       f.js { }     end   end

  def show     @book = Book.find(params[:id])     respond_to do |f|       f.html { }       f.xml { render :xml => @book.to_xml }       f.js { }     end   end