[AWS] Problem using wsdl2ada

Björn Lundin b.f.lundin at gmail.com
Mon Nov 19 13:52:43 CET 2012


Hi, I'm having some problems with getting wsdl2aws to generate code from a wsdl.
I want code from 2 wsdls, but 1 of them hangs the wsdl2aws program. Or
it crashes on SIGSEGV.

I have a brand new install of debian based upon
debian-wheezy-DI-b3-i386-netinst.iso in virtual box, Win7 as host
I upgraded to 'testing' in /etc/apt/sources.list
and did a

#root at sebjlun-deb:~# apt-get update && apt-get upgrade

root at sebjlun-deb:~# cat /etc/debian_version
wheezy/sid


Then -
sudo apt-get install libaws*

This pulled in gnat/xmlada/aws, for versions see dpkg -l output below


I saved the wsdls locally,
and performed these steps:

cd
mkdir adabot
cd adabot
wget https://api.betfair.com/exchange/v5/BFExchangeService.wsdl
wget  https://api.betfair.com/global/v3/BFGlobalService.wsdl

mkdir exchange_v5 global_v3

bnl at sebjlun-deb:~/adabot$ cd exchange_v5/
bnl at sebjlun-deb:~/adabot/exchange_v5$ wsdl2aws -doc ../BFExchangeService.wsdl

Service BFExchangeService

   > getAccountFunds
   > cancelBets
   > cancelBetsByMarket
   > updateBets
   > placeBets
   > getMarket
   > getMarketInfo
   > getMarketPrices
   > getCompleteMarketPricesCompressed
   > getMarketTradedVolumeCompressed
   > getMarketPricesCompressed
   > getAllMarkets
   > getInPlayMarkets
   > getPrivateMarkets
   > getCurrentBets
   > getCoupon
   > getCurrentBetsLite
   > getMUBets
   > getMUBetsLite
   > getDetailAvailableMktDepth
   > getMarketTradedVolume
   > getBetHistory
   > getAccountStatement
   > getMarketProfitAndLoss
   > getBet
   > getBetLite
   > getBetMatchesLite
   > getSilks
   > getSilksV2
   > heartbeat
bnl at sebjlun-deb:~/adabot/exchange_v5$

seems ok


bnl at sebjlun-deb:~/adabot/exchange_v5$ cd ../global_v3/
bnl at sebjlun-deb:~/adabot/global_v3$ wsdl2aws -doc ../BFGlobalService.wsdl

Service BFGlobalService

Just hangs sometimes, and gets and SIGSEGV other times...




The files it does generate are empty:
bnl at sebjlun-deb:~/adabot/global_v3$ ls -la
totalt 8
drwxr-xr-x 2 bnl bnl 4096 nov 19 13:26 .
drwxr-xr-x 4 bnl bnl 4096 nov 19 13:16 ..
-rw-r--r-- 1 bnl bnl    0 nov 19 13:26 bfglobalservice.ads
-rw-r--r-- 1 bnl bnl    0 nov 19 13:26 bfglobalservice-client.adb
-rw-r--r-- 1 bnl bnl    0 nov 19 13:26 bfglobalservice-client.ads
-rw-r--r-- 1 bnl bnl    0 nov 19 13:26 bfglobalservice-server.adb
-rw-r--r-- 1 bnl bnl    0 nov 19 13:26 bfglobalservice-server.ads
-rw-r--r-- 1 bnl bnl    0 nov 19 13:26 bfglobalservice-types.ads



Installed versions:
bnl at sebjlun-deb:~/adabot/global_v3$ gnatls -v

GNATLS 4.6
Copyright (C) 1997-2010, Free Software Foundation, Inc.

Source Search Path:
   <Current_Directory>
   /usr/lib/gcc/i486-linux-gnu/4.6/adainclude/


Object Search Path:
   <Current_Directory>
   /usr/lib/gcc/i486-linux-gnu/4.6/adalib/


Project Search Path:
   <Current_Directory>
   /usr/share/ada/adainclude/


bnl at sebjlun-deb:~/adabot$ dpkg -l *libxmlada*
Önskat=Okänd(U)/Installera(I)/Radera(R)/Rensa(P)/Håll(H)
| Status.=Ej inst.(N)/(I)nst./Konffil.(C)/(U)ppack./Halvkonf.(F)/(H)alvinst.
| /       Vänt.utl(W)/Föresl.utl(T)
|/ Fel?Inget(=)/Ominstallera(R)/Båda(X) (Status,Fel: versaler=illa)
||/ Namn                        Version            Arkitektur
Beskrivning
+++-===========================-==================-==================-============================================================
un  libxmlada-dev               <ingen>
(beskrivning saknas)
ii  libxmlada-doc               4.1-2              all
XML/Ada, a full XML suite for Ada programmers (documentation
ii  libxmlada4.1:i386           4.1-2              i386
XML/Ada, a full XML suite for Ada programmers (runtime)
ii  libxmlada4.1-dev            4.1-2              i386
XML/Ada, a full XML suite for Ada programmers
bnl at sebjlun-deb:~/adabot$ dpkg -l *libaws*
Önskat=Okänd(U)/Installera(I)/Radera(R)/Rensa(P)/Håll(H)
| Status.=Ej inst.(N)/(I)nst./Konffil.(C)/(U)ppack./Halvkonf.(F)/(H)alvinst.
| /       Vänt.utl(W)/Föresl.utl(T)
|/ Fel?Inget(=)/Ominstallera(R)/Båda(X) (Status,Fel: versaler=illa)
||/ Namn                        Version            Arkitektur
Beskrivning
+++-===========================-==================-==================-============================================================
ii  libaws-bin                  2.10.2-4           i386
Ada Web Server utilities
ii  libaws-dbg                  2.10.2-4           i386
Debugging symbols for the Ada Web Server shared library
ii  libaws-doc                  2.10.2-4           all
Ada Web Server documentation
ii  libaws2.10.2:i386           2.10.2-4           i386
Ada Web Server shared library
ii  libaws2.10.2-dev            2.10.2-4           i386
Ada Web Server development files

bnl at sebjlun-deb:~/adabot/global_v3$ dpkg --get-selections  | grep aws
libaws-bin                         install
libaws-dbg                         install
libaws-doc                         install
libaws2.10.2:i386                    install
libaws2.10.2-dev                    install
bnl at sebjlun-deb:~/adabot/global_v3$ dpkg --get-selections  | grep xmlada
libxmlada-doc                         install
libxmlada4.1:i386                    install
libxmlada4.1-dev                    install


bnl at sebjlun-deb:~/adabot$ uname -a
Linux sebjlun-deb 3.2.0-4-686-pae #1 SMP Debian 3.2.32-1 i686 GNU/Linux
bnl at sebjlun-deb:~/adabot$


I ran wsdl2ada through strace and got this:
bnl at sebjlun-deb:~/adabot/global_v3$ strace wsdl2aws -doc
../BFGlobalService.wsdl

...
...
stat64("bfglobalservice.ads", 0xbfeb4c00) = -1 ENOENT (No such file or
directory)
getcwd("/home/bnl/adabot/global_v3", 4096) = 27
open("bfglobalservice.ads", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
stat64("bfglobalservice-types.ads", 0xbfeb4c00) = -1 ENOENT (No such
file or directory)
getcwd("/home/bnl/adabot/global_v3", 4096) = 27
open("bfglobalservice-types.ads",
O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 4
fstat64(4, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
gettimeofday({1353327973, 966050}, NULL) = 0
open("/tmp/gnat-bwebHc", O_RDWR|O_CREAT|O_EXCL, 0600) = 5
close(5)                                = 0
open("/tmp/gnat-bwebHc", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 5
fstat64(5, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
stat64("bfglobalservice-client.ads", 0xbfeb4c00) = -1 ENOENT (No such
file or directory)
getcwd("/home/bnl/adabot/global_v3", 4096) = 27
open("bfglobalservice-client.ads",
O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 6
fstat64(6, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
stat64("bfglobalservice-client.adb", 0xbfeb4c00) = -1 ENOENT (No such
file or directory)
getcwd("/home/bnl/adabot/global_v3", 4096) = 27
open("bfglobalservice-client.adb",
O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 7
fstat64(7, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
stat64("bfglobalservice-server.ads", 0xbfeb4c00) = -1 ENOENT (No such
file or directory)
getcwd("/home/bnl/adabot/global_v3", 4096) = 27
open("bfglobalservice-server.ads",
O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 8
fstat64(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
stat64("bfglobalservice-server.adb", 0xbfeb4c00) = -1 ENOENT (No such
file or directory)
getcwd("/home/bnl/adabot/global_v3", 4096) = 27
open("bfglobalservice-server.adb",
O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 9
fstat64(9, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
fstat64(4, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7786000
gettimeofday({1353327973, 969165}, NULL) = 0
fstat64(5, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7785000
fstat64(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7784000
gettimeofday({1353327973, 969969}, NULL) = 0
fstat64(6, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7783000
gettimeofday({1353327973, 970264}, NULL) = 0
fstat64(7, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7782000
gettimeofday({1353327973, 970584}, NULL) = 0
fstat64(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7781000
gettimeofday({1353327973, 970881}, NULL) = 0
fstat64(9, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7780000
gettimeofday({1353327973, 971200}, NULL) = 0
brk(0x9715000)                          = 0x9715000
brk(0x9736000)                          = 0x9736000
brk(0x9759000)                          = 0x9759000
brk(0x977a000)                          = 0x977a000
brk(0x979b000)                          = 0x979b000
brk(0x97be000)                          = 0x97be000
brk(0x97df000)                          = 0x97df000
brk(0x9800000)                          = 0x9800000
brk(0x9821000)                          = 0x9821000
brk(0x9843000)                          = 0x9843000
brk(0x9864000)                          = 0x9864000
brk(0x9885000)                          = 0x9885000
brk(0x98a6000)                          = 0x98a6000
brk(0x98c9000)                          = 0x98c9000
brk(0x98ea000)                          = 0x98ea000
brk(0x990b000)                          = 0x990b000
brk(0x992c000)                          = 0x992c000
brk(0x994e000)                          = 0x994e000
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigprocmask(SIG_UNBLOCK, [ILL BUS FPE SEGV], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigprocmask(SIG_UNBLOCK, [ILL BUS FPE SEGV], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigprocmask(SIG_UNBLOCK, [ILL BUS FPE SEGV], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigprocmask(SIG_UNBLOCK, [ILL BUS FPE SEGV], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigprocmask(SIG_UNBLOCK, [ILL BUS FPE SEGV], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigprocmask(SIG_UNBLOCK, [ILL BUS FPE SEGV], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigprocmask(SIG_UNBLOCK, [ILL BUS FPE SEGV], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigprocmask(SIG_UNBLOCK, [ILL BUS FPE SEGV], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigprocmask(SIG_UNBLOCK, [ILL BUS FPE SEGV], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigprocmask(SIG_UNBLOCK, [ILL BUS FPE SEGV], NULL, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Segmenteringsfel
bnl at sebjlun-deb:~/adabot/global_v3$


As a comparison, I put the wsdl into a web-project in Visual Studio,
and it created classes in c#,
so the wsdl is probably ok.


Thoughts or suggestions ?
/Björn




-- 
/Björn


More information about the AWS mailing list