praegune kellaaeg 20.06.2025 15:12:40
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
Psych0
HV veteran

liitunud: 21.11.2004
|
16.12.2012 15:17:00
WSDL -> klient Rubys või mujal |
|
|
Tere,
Lühidalt kirjutades jookseb mul Javas server, kus on 'To Do List'. Pean genereerima WSDL failist kliendid teistes programmeerimiskeeltes, meetodiks on getToDoListAsString(). Informatsioon võiks tulla järgmisel kujul:
tsitaat: |
What: Hajussüsteemide 2. koduülesanne
When: 30.10.2012
Importance: Väga tähtis
What: Multimeedia veebileht
When: 31.10.2012
Importance: Keskmiselt tähtis
What: Arvutikäsitusõpetuse 13. koduülesanne
When: 30.10.2012
Importance: Vähe tähtis
|
Ruby tundus mõistlik valik ühe keelena ning sain juba midagi tehtud, kuid ei jaga seda keelt peaaegu üldse. Hetkel on kirjutatud selline klient:
# package for SOAP-based services
require 'soap/wsdlDriver'
wsdl_url = 'http://localhost:9999/ws/todo?wsdl'
service = SOAP::WSDLDriverFactory.new(wsdl_url).create_rpc_driver
# Invoke service operations.
data1 = service.getToDoListAsString()
# Output results.
puts "getToDoListAsString : #{data1}" |
Informatsioon tuleb aga sellisel kujul:
Kas saaks lihtsalt midagi mõistlikku Rubyga teha, et see informatsioon mulle sobilikul kujul tuleks või võtaks see liiga palju aega?
Samuti huvitab, mida võtta teise kliendi keeleks? Pythonit oskan natukene, kuid kas oleks mingi muu hea ja lihtne variant?
viimati muutis Psych0 17.12.2012 00:08:53, muudetud 1 kord |
|
Kommentaarid: 61 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
57 |
|
tagasi üles |
|
 |
YberCyrus
HV vaatleja
liitunud: 27.02.2010
|
16.12.2012 20:09:22
|
|
|
Kui sa juba Javas serveriga hakkama said siis kirjuta klient ehk C#s? Kuna keeled on üsna sarnased siis ei tohiks erilist probleemi tekkida. Pealegi on C#s proxy klasside genereerimine Visual Studioga imelihtne. Teed uue WCF projecti ja projekti peal parem click > Add Service Reference ja genereerib sulle kõik vajaliku ära.
|
|
tagasi üles |
|
 |
Psych0
HV veteran

liitunud: 21.11.2004
|
17.12.2012 00:40:44
|
|
|
Serveri tegin selle tutoriali järgi: http://www.mkyong.com/webservices/jax-ws/jax-ws-hello-world-example/. Visual Studios jõudsin täpselt nii palju teha, mida sa kirjutasid, kuid edasi ei oska.
Edit: Okei, jagasin isegi matsu ära, C# oli tõesti lihtne klient teha. Oleks pidanud lihtsalt alustama New Project - Console Application. Aga nüüd vaja endiselt üks klient veel teha, kas keegi oskaks Rubys aidata või mõne muu sobiva keele pakkuda?
Edit2: Sain Rubys ka vea teada: millegipärast on see data1 ühe elemendiga järjend.
|
|
Kommentaarid: 61 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
57 |
|
tagasi üles |
|
 |
ref
Kreisi kasutaja
liitunud: 10.08.2003
|
17.12.2012 15:51:21
|
|
|
Psych0, uuri veidi oma WSDLi, kahtlustan, et too teenus tagastab sul array-d...
Lisaks - soap4r on võrdlemisi vana ning uuemates ruby versioonides on see deprecated.
Viimane SOAPi klient sai tehtud Savoniga (http://savonrb.com/), debugimine on tsipa kergem, kui otse soap4r-i kasutades.
Kui videotutorialid meeldivad, siis Savoni osas - http://railscasts.com/episodes/290-soap-with-savon (tõsi, see on nüüd Railsi frameworki silmas pidades koostatud).
Sinu klient võiks olla midagi stiilis:
#!/usr/bin/env ruby
require 'rubygems'
require 'savon'
client = Savon.client("http://localhost:9999/ws/todo?wsdl")
response = client.request "getToDoListAsString"
#response objekt:
puts response.inspect
#vastuse envelope osa, hashina
puts response.body |
|
|
Kommentaarid: 17 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
15 |
|
tagasi üles |
|
 |
Psych0
HV veteran

liitunud: 21.11.2004
|
17.12.2012 16:00:03
|
|
|
Suured tänud vastamast, kuid ma juba eile leidsin oma bugi üles (ning muutsin ka viimast postitust selgitamaks ). Arrays oligi viga ning ei pannud seda lihtsalt tähele, kuna ei ole harjunud nii elementaarsete vigadega.
|
|
Kommentaarid: 61 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
57 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|