0

confluence4r gem をダウンロードする場所が見つかりません。

gem install confluence4r

ここからダウンロードしました: http://confluence.atlassian.com/display/DISC/Confluence4r

ログインできます

server = Confluence::RPC.new("http://wiki/")
server.login("username","password")

しかし、他のことをすると失敗します

server.getSpace("key")

しかし、待ってください..私はそれを2回目にして、うまくいきます...

server.getSpace("key")

{"name"=>"key example", "homePage"=>"235325", "url"=>"http://wiki/display/key", "type"=>"global", "description"=>"description example", "key"=>"key"}

2回目の試行で機能させる前に、最初の試行で受け取るエラーは次のとおりです。

EOFError: end of file reached

from /usr/lib/ruby/1.8/net/protocol.rb:135:in sysread' from /usr/lib/ruby/1.8/net/protocol.rb:135:inrbuf_fill' from /usr/lib/ruby/1.8/timeout.rb:62:in timeout' from /usr/lib/ruby/1.8/timeout.rb:93:intimeout' from /usr/lib/ruby/1.8/ net/protocol.rb:134:in rbuf_fill' from /usr/lib/ruby/1.8/net/protocol.rb:116:inreaduntil' from /usr/lib/ruby/1.8/net/protocol.rb:126:in readline' from /usr/lib/ruby/1.8/net/http.rb:2024:inread_status_line' from /usr/lib/ruby/1.8/net/http.rb:2013: in read_new' from /usr/lib/ruby/1.8/net/http.rb:1050:inrequest' from /usr/lib/ruby/1.8/net/http.rb:992:in post2' from /usr/lib/ruby/1.8/xmlrpc/client.rb:538:indo_rpc' from /usr/lib/ruby/1.8/xmlrpc/client.rb:420:in call2' from /usr/lib/ruby/1.8/xmlrpc/client.rb:410:incall' from /usr/lib /ruby/1.8/xmlrpc/client.rb:617:in send' from /usr/lib/ruby/1.8/xmlrpc/client.rb:617:inmethod_missing' from ./confluence4r.rb:35:in send' from ./confluence4r.rb:35:inmethod_missing'

エラーが発生する理由はありますか?

編集

わかりました、代わりにこの宝石の一部を使用していますが、正常に動作します:

gem install confluencer
@api = Confluence::Client.new(:url => "http://wiki")
@api.login("username","password")
user = @api.getUser("username")
pp user

{"name"=>"username",
 "url"=>"http://wiki/display/~username",
 "fullname"=>"Full Name",
 "email"=>"EmailAddress@example.com"}

今の問題は、何も追加できないことですが、取得はできます。ハングするだけで、何度も何度も再試行を続けていると思います。wiki壊れてるかも…

create_user = @api.createUser("username","password","First LastName","Email@example.com")
pp create_user

create_user でハングする

4

2 に答える 2

1

XMLRPC クライアントだけを使用しても問題ありません。すべてが機能しています。

require 'xmlrpc/client'

confluence = XMLRPC::Client.new2("http://wiki/rpc/xmlrpc").proxy("confluence1")
token = confluence.login("username", "password")

user = {
"name" => user_name,
"fullname" => full_name,
"email" => email
}

confluence.addUser(token, user, user_name)

これを confluence 2.8 から 3.4 でテストしました。

于 2010-11-06T07:37:43.407 に答える
0

参考までに、confluence4r.rb コードの使用は Confluence v4 で失敗します。簡単な修正は変更することです... @conf = server.proxy("confluence1") TO @conf = server.proxy("confluence2")

エラー メッセージ: confluence.rb:38:in rescue in method_missing': java.lang.Exception: com.atlassian.confluence.rpc.RemoteException: Unsupported operation: Wiki formatted content can no longer be retrieved from this API. Please use the version 2 API. The version 2 WSDL is available at: https://wiki.globalrelay. net/rpc/soap-axis/confluenceservice-v2?wsdl. XML-RPC requests should prefixed with "confluence2.". (RuntimeError) from confluence.rb:31:inmethod_missing'

于 2014-02-26T01:03:44.973 に答える