cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Maxim Solodovnik <solomax...@gmail.com>
Subject Re: Page with list of all services
Date Fri, 19 Aug 2016 15:51:58 GMT
Actually I can see no difference between
http://localhost:5080/openmeetings/services
and
http://localhost:5080/openmeetings/services/

The weird thing is: CalendarWebService has annotation
@Path("/calendar")

BUT
http://localhost:5080/openmeetings/services/calendar?_wadl
results to d== null

id seems like d == null for mapped path and d != null for the root path

On Fri, Aug 19, 2016 at 10:40 PM, Sergey Beryozkin <sberyozkin@gmail.com>
wrote:

> OK, I have tried one of the demos we ship with CXF,
> jax_rs/description_swagger2_web which uses Tomcat 7 plugin, its
> CXFServlet has "/app/*".
>
> If I try:
>
> http://localhost:9000/app/services/
>
> then I do get the services page back but I also see in the logs:
>
> WARNING: Can't find the the request for http://localhost:9000/app/serv
> ices//'s Observer
>
> But if I do
>
> http://localhost:9000/app/services
>
> then I get the service page immediately
>
> If we have a trailing "/" and you have a JAXRS endpoint CalendarWebService
> also listening on "/" then it is a match.
>
> I think as long as you have "/services" without the trailing slash you
> should see the services pages - can you try it please or may be update
> CalendarWebService to listen on something more specific than "/" ?
>
> Thanks, Sergey
>
>
>
> On 19/08/16 16:07, Maxim Solodovnik wrote:
>
>> for some unknown reason d != null in this line :(
>>
>> d == ServletDestination
>> endpointInfo == BindingQName={http://apache.org/cxf/binding/jaxrs}binding
>> ,
>> ServiceQName=, QName={
>> http://webservice.openmeetings.apache.org/}CalendarWebService
>> path == "/"
>>
>> not sure why endpointInfo is like this :(
>>
>>
>> On Fri, Aug 19, 2016 at 8:22 PM, Sergey Beryozkin <sberyozkin@gmail.com>
>> wrote:
>>
>> Hi Max
>>> On 19/08/16 13:56, Maxim Solodovnik wrote:
>>>
>>> you can download binary snapshot from here
>>>> https://builds.apache.org/view/M-R/view/OpenMeetings/job/
>>>> Openmeetings%203.2.x/146/
>>>> extract it to some new folder
>>>>
>>>> run red5.sh (red5.bat) (or red5-debug.sh (red5-debug.bat))
>>>> go to http://localhost:5080/openmeetings/services/
>>>> this will result empty page (and 404 in the log)
>>>>
>>>> Oh, I see, this is now different to what I thought the problem was,
>>> I thought that the services page that you see does not show JAX-RS links
>>> but the problem is - you do not see the service page at all
>>>
>>> Hmm... I only updated there the formatter code which is used by the
>>> service list page handler.
>>>
>>> Have you added an endpoint that can handle 'services' path by any chance
>>> ?
>>>
>>>
>>> to use application you need to
>>>> go to http://localhost:5080/openmeetings and walk through installer :(
>>>>
>>>> or you can ask me to do some investigation :))
>>>>
>>>> It would be nice :-).
>>> Can you please try
>>>
>>> http://localhost:5080/openmeetings/services
>>>
>>> (without the trailing '/') - that should not make a difference but who
>>> knows, just in case.
>>>
>>> Can you also please download CXF 3.1.7 source (from Central) it is the
>>> same as in 3.1.8-SNAPSHOT in ServletController which is where I'd like to
>>> ask you to put a breakpoint:
>>> https://github.com/apache/cxf/blob/cxf-3.1.7/rt/transports/h
>>> ttp/src/main/java/org/apache/cxf/transport/servlet/ServletCo
>>> ntroller.java#L168
>>> there you should reach line 176
>>>
>>> Can you please try it and see why the service page branch is skipped in
>>> your case ?
>>>
>>> Thanks, Sergey
>>>
>>>
>>>
>>>> On Fri, Aug 19, 2016 at 7:17 PM, Sergey Beryozkin <sberyozkin@gmail.com
>>>> >
>>>> wrote:
>>>>
>>>> Sorry. I'm confused - that is 404.
>>>>
>>>>> What about the services page ?
>>>>>
>>>>> Is there an easy way for me to reproduce it with open meetings ?
>>>>>
>>>>> Cheers, Sergey
>>>>>
>>>>>
>>>>> On 19/08/16 12:35, Maxim Solodovnik wrote:
>>>>>
>>>>> just have tried:
>>>>>
>>>>>>
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-core-3.1.8-SNAPSHOT.jar
>>>>>>
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-bindings-soap-3.1.8-
>>>>>> SNAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-bindings-xml-3.1.8-S
>>>>>> NAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-databinding-jaxb-3.1
>>>>>> .8-SNAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-frontend-jaxrs-3.1.8
>>>>>> -SNAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-frontend-jaxws-3.1.8
>>>>>> -SNAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-frontend-simple-3.1.
>>>>>> 8-SNAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-rs-extension-provide
>>>>>> rs-3.1.8-SNAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-rs-service-descripti
>>>>>> on-3.1.8-SNAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-transports-http-3.1.
>>>>>> 8-SNAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-ws-addr-3.1.8-SNAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-wsdl-3.1.8-SNAPSHOT.jar
>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-ws-policy-3.1.8-SNAPSHOT.jar
>>>>>>
>>>>>> spring config:
>>>>>> https://github.com/apache/openmeetings/blob/3.2.x/openmeetin
>>>>>> gs-web/src/main/webapp/WEB-INF/classes/openmeetings-appli
>>>>>>
>>>>>> cationContext.xml#L271
>>>>>>
>>>>>> Result:
>>>>>>
>>>>>> ---------------------------
>>>>>> ID: 1
>>>>>> Response-Code: 404
>>>>>> Content-Type:
>>>>>> Headers: {Date=[Fri, 19 Aug 2016 11:32:51 GMT], Content-Length=[0]}
>>>>>> --------------------------------------
>>>>>>
>>>>>>
>>>>>> On Fri, Aug 19, 2016 at 4:14 PM, Sergey Beryozkin <
>>>>>> sberyozkin@gmail.com
>>>>>>
>>>>>>>
>>>>>>> wrote:
>>>>>>
>>>>>> Hi Max
>>>>>>
>>>>>>
>>>>>>> To have WADL links you need to add cxf-rt-rs-service-description
>>>>>>>
>>>>>>> Can you try again please with 3.1.8-SNAPSHOT
>>>>>>>
>>>>>>> Cheers, Sergey
>>>>>>>
>>>>>>> On 19/08/16 04:15, Maxim Solodovnik wrote:
>>>>>>>
>>>>>>> hmm,
>>>>>>>
>>>>>>>
>>>>>>>> just have tested, not working :( details:
>>>>>>>>
>>>>>>>> libraries in classpath
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-core-3.1.8-SNAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-bindings-soap-3.1.8-
>>>>>>>> SNAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-bindings-xml-3.1.8-S
>>>>>>>> NAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-databinding-jaxb-3.1
>>>>>>>> .8-SNAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-frontend-jaxrs-3.1.8
>>>>>>>> -SNAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-frontend-jaxws-3.1.8
>>>>>>>> -SNAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-frontend-simple-3.1.
>>>>>>>> 8-SNAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-rs-extension-provide
>>>>>>>> rs-3.1.8-SNAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-transports-http-3.1.
>>>>>>>> 8-SNAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-ws-addr-3.1.8-SNAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-wsdl-3.1.8-SNAPSHOT.jar
>>>>>>>> webapps/openmeetings/WEB-INF/lib/cxf-rt-ws-policy-3.1.8-SNAP
>>>>>>>> SHOT.jar
>>>>>>>>
>>>>>>>> servlet configuration:
>>>>>>>>         <servlet>
>>>>>>>>                 <servlet-name>CXFServlet</servlet-name>
>>>>>>>>
>>>>>>>> <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</
>>>>>>>> servlet-class>
>>>>>>>>                 <init-param>
>>>>>>>>                         <param-name>config-location</param-name>
>>>>>>>>
>>>>>>>> <param-value>classpath:openmeetings-applicationContext.xml</
>>>>>>>> param-value>
>>>>>>>>                 </init-param>
>>>>>>>>                 <load-on-startup>1</load-on-startup>
>>>>>>>>         </servlet>
>>>>>>>>         <servlet-mapping>
>>>>>>>>                 <servlet-name>CXFServlet</servlet-name>
>>>>>>>>                 <url-pattern>/services/*</url-pattern>
>>>>>>>>         </servlet-mapping>
>>>>>>>>
>>>>>>>> SOAP services are configured in spring config, REST are configured
>>>>>>>> via
>>>>>>>> annotations
>>>>>>>> I'm using java only no XML approach :)
>>>>>>>>
>>>>>>>> What am I missing?
>>>>>>>>
>>>>>>>>
>>>>>>>> On Fri, Aug 19, 2016 at 8:29 AM, Maxim Solodovnik <
>>>>>>>> solomax666@gmail.com
>>>>>>>>
>>>>>>>>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>
>>>>>>>> Thanks for the quick answer Sergey :)
>>>>>>>>
>>>>>>>> I'll check SNAPSHOT and will write back here :)
>>>>>>>>
>>>>>>>>>
>>>>>>>>> What additional dependencies need to be added to display
the list
>>>>>>>>> of
>>>>>>>>> both
>>>>>>>>> SOAP and REST services?
>>>>>>>>>
>>>>>>>>> On Thu, Aug 18, 2016 at 10:38 PM, Sergey Beryozkin <
>>>>>>>>> sberyozkin@gmail.com
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> Hi Max
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I updated CXF 3.1.7 to show the available endpoints if
they exist,
>>>>>>>>>> previously, if you only used either JAXWS or JAXRS
you could get
>>>>>>>>>> for
>>>>>>>>>> example:
>>>>>>>>>>
>>>>>>>>>> SOAP endpoints:
>>>>>>>>>> (empty space)
>>>>>>>>>>
>>>>>>>>>> REST endpoints:
>>>>>>>>>> some endpoints listed here
>>>>>>>>>>
>>>>>>>>>> or
>>>>>>>>>>
>>>>>>>>>> SOAP endpoints:
>>>>>>>>>> some endpoints listed here
>>>>>>>>>>
>>>>>>>>>> REST endpoints:
>>>>>>>>>> (empty space)
>>>>>>>>>>
>>>>>>>>>> which was 'noisy' so now in such case you'd either
get only
>>>>>>>>>>
>>>>>>>>>> SOAP endpoints:
>>>>>>>>>> some endpoints listed here
>>>>>>>>>>
>>>>>>>>>> or
>>>>>>>>>>
>>>>>>>>>> REST endpoints:
>>>>>>>>>> some endpoints listed here
>>>>>>>>>>
>>>>>>>>>> So far it all should be fine.
>>>>>>>>>>
>>>>>>>>>> Additionally, for JAXRS, I made it conditional on
the availability
>>>>>>>>>> of
>>>>>>>>>> the
>>>>>>>>>> bus property. Some users now use Swagger, some WADL,
so until
>>>>>>>>>> 3.1.7
>>>>>>>>>> you'd
>>>>>>>>>> get an empty WADL link even if you use Swagger or
if no WADL
>>>>>>>>>> dependency
>>>>>>>>>> exist.
>>>>>>>>>> So in CXF 3.1.7 WADLGenerator, if loaded, will set
a bus property
>>>>>>>>>> that
>>>>>>>>>> WADL is available, and if Swagger feature is loaded
it will set a
>>>>>>>>>> property
>>>>>>>>>> indicating Swagger is available.
>>>>>>>>>>
>>>>>>>>>> This helps to present JAX-RS links correctly in Services
page, but
>>>>>>>>>> we've
>>>>>>>>>> found with Lukasz that in Blueprint one can get an
empty bus
>>>>>>>>>> reference
>>>>>>>>>> in
>>>>>>>>>> the Service list formatter - it looks like you may
be seeing such
>>>>>>>>>> a
>>>>>>>>>> case
>>>>>>>>>> too. So in 3.1.8-SNAPSHOT I added the code that checks
a default
>>>>>>>>>> bus
>>>>>>>>>> in
>>>>>>>>>> such cases in the services page formatter
>>>>>>>>>>
>>>>>>>>>> Can you please check 3.1.8-SNAPSHOT ?
>>>>>>>>>>
>>>>>>>>>> Thanks, Sergey
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 18/08/16 15:45, Maxim Solodovnik wrote:
>>>>>>>>>>
>>>>>>>>>> Hello,
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> recently I find out the list of all REST/SOAP services
is not
>>>>>>>>>>> available
>>>>>>>>>>> anymore (CXF 3.1.7)
>>>>>>>>>>> It was working some time ago
>>>>>>>>>>>
>>>>>>>>>>> Should I make any changes to make it work again?
>>>>>>>>>>>
>>>>>>>>>>> I tried to add cxf-rt-rs-service-description-3.1.7.jar
as
>>>>>>>>>>> dependency,
>>>>>>>>>>> but
>>>>>>>>>>> it doesn't help :(
>>>>>>>>>>>
>>>>>>>>>>> Thanks a lot for your help
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>
>>>>>>>>> WBR
>>>>>>>>> Maxim aka solomax
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>> --
>>> Sergey Beryozkin
>>>
>>> Talend Community Coders
>>> http://coders.talend.com/
>>>
>>>
>>
>>
>>
>
> --
> Sergey Beryozkin
>
> Talend Community Coders
> http://coders.talend.com/
>



-- 
WBR
Maxim aka solomax

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message