Hi again Daniel,

I compiled 2.7.5 snapshot from scratch on Linux and worked on the
resulting distribution, everything went fine.

And, most important, WS-Discovery works, setting version to 1.0 I was
able to find all the Onvif devices in my subnet,
great work, many thanks once again. However an exception is thrown,
please find it below:

WARNING: Interceptor for
{http://schemas.xmlsoap.org/ws/2005/04/discovery}DiscoveryProxy#{http://cxf.apache.org/jaxws/dispatch}Invoke
has thrown exception, unwinding now
org.apache.cxf.binding.soap.SoapFault: A SOAP 1.2 message is not valid
when sent to a SOAP 1.1 only endpoint.
    at
org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:159)
    at
org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:62)
    at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
    at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:782)
    at
org.apache.cxf.transport.udp.UDPConduit.dataReceived(UDPConduit.java:106)
    at
org.apache.cxf.transport.udp.UDPConduit.access$000(UDPConduit.java:59)
    at
org.apache.cxf.transport.udp.UDPConduit$UDPBroadcastOutputStream.close(UDPConduit.java:290)
    at
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
    at org.apache.cxf.transport.udp.UDPConduit.close(UDPConduit.java:118)
    at
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
    at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
    at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530)
    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:456)
    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:434)
    at
org.apache.cxf.endpoint.ClientImpl.invokeWrapped(ClientImpl.java:427)
    at org.apache.cxf.jaxws.DispatchImpl.invokeAsync(DispatchImpl.java:416)
    at
org.apache.cxf.ws.discovery.WSDiscoveryClient.probe(WSDiscoveryClient.java:333)
    at
org.apache.cxf.ws.discovery.WSDiscoveryClient.probe(WSDiscoveryClient.java:283)
    at org.apache.cxf.samples.discovery.Client.main(Client.java:46)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:291)
    at java.lang.Thread.run(Thread.java:722)

Which is the release plan for 2.7.5?

Best regards,

Matteo

On 08/04/2013 20:36, Daniel Kulp wrote:
I just committed a bunch of updates to the WS-Discovery stuff that adds a 
setVersion10() method onto the WSDiscoveryClient that should allow it to flip 
to the older WS-Discovery spec (and SOAP 1.1 and the older WS-Addressing 
version).   It also fixes a bunch of things with the wsa Actions and other 
bugs.    I'm hoping that will allow this to work.   Is there any way you could 
grab tomorrows snapshots (or build from the latest branches) and give it a spin 
and see?

On the server side, CXF services will now response to a 1.0 Probe as well as 
the 1.1 probe.  However, I do still have a bit of mapping to do to map the 
various scopes.  Right now, they only look at the 1.1 scope names.


Dan



On Apr 4, 2013, at 1:27 PM, Daniel Kulp <[email protected]> wrote:

Hit send too soon….

On Apr 4, 2013, at 1:25 PM, Daniel Kulp <[email protected]> wrote:

On Apr 4, 2013, at 10:06 AM, Pampolini Matteo <[email protected]> 
wrote:
Hello there,

I'm trying to write a simple application to discover ONVIF devices in my 
network.
Very interesting…  Wasn't even aware of them.   If anyone would like to buy me 
one, I'd be more that happy to experiment more to get it working….   :-)


Code is mainly based on ws_discovery sample with the following simple 
difference:

List<EndpointReference> references = client.probe(new 
QName("http://www.onvif.org/ver10/network/wsdl";<http://www.onvif.org/ver10/network/wsdl>, 
"NetworkVideoTransmitter"));

I'm writing because it does not work, of course. I do not even see (through 
WireShark) multicast packets being sent over my network interface,
can anyone please help me? Please note that ONVIF is based on WS-Discovery 
version 2005/04.
There's two parts to this:  1) getting the UDP packets out    2) WS-Discovery 
2005/04.

No idea what to do about (1).

Does the ws-discovery sample work?    If you run the sample with wireshark, 
does that get the packets?   I guess that would be the starting point for 
looking at that.

(2) is definitely a big issue.  I'd likely try and use the CXF transformation 
feature to map the namespaces and see if that works, but it obviously won't 
work if (1) cannot be resolved.



--
Daniel Kulp
[email protected] - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com



--
Write once, compile everywhere
Compile once, run somewhere...


This email and any attachments are confidential to the intended recipient and 
may also be privileged. If you are not the intended recipient please delete it 
from your system and notify the sender. You should not copy it or use it for 
any purpose nor disclose or distribute its contents to any other person.
Questa e-mail e tutti i suoi allegati sono da intendersi inviati in via 
riservata all'effettivo destinatario e possono essere soggetti a restrizioni 
legali. Se non siete l'effettivo destinatario o avete ricevuto il messaggio per 
errore siete pregati di cancellarlo dal vostro sistema e di avvisare il 
mittente. E' vietata la duplicazione, l'uso a qualsiasi titolo, la divulgazione 
o la distribuzione dei contenuti di questa e-mail a qualunque altro soggetto.

Prima di stampare questa comunicazione consideratene, per favore, l'impatto 
ambientale
Please consider the environment before printing this email

Reply via email to