Developing Restful Web Service with JAX-WS/Axis2 - java

I'm new with Restful Web Services and got some questions about some of the requirements needed to create one.
1) I got only Apache2 installed on machine and I can't install any EE Server. Is it possible in this circumstances create Restful Web Service? What is better in my case Axis2 or JAX-WS?
2) I want to make the content of some file accessible to Internet, so I need to create the function which is going to be called by client and return for example XML from file? Is there any way to share directly the files using URL mapping?
Thanks a lot!

1) you can't install any EE Server, OK. If you can install Apache Tomcat, use mod_jk so that Apache can redirect some requests to Tomcat. In this case you can use Apache Axis2, Apache CXF or METRO (mainly SOAP services) or Jersey (for RESTful services). On the other hand, if you can't install tomcat, try PHP with Zend Framework to develop web services;
2) with RESTful web services you can return any resource (a file content) to the user using XML or JSON.
Best regards,
Romualdo.

Related

How to secure a SOAP web service with WSS with CXF

My application has a SOAP web service implemented using Apache CXF. I'm not using Spring or EJB, it's just a simple web application deployed in an application container (Payara). The web service is configured through web.xml and sun-jaxws.xml and deployed automatically. It's completely written by source code with annotations (#WebService, #WebMethod, etc) without any pre-existing WSDL file.
I need to secure it with WS-Security but I can't find how...
The most promising solution is configuring an out interceptor as this page indicates, but I don't know how to get an instance of Server or Endpoint of my deployed WS. If I use the ServerFactoryBean class, I'm creating a new Server object, but will this help me if my WS is deployed by the container?
So, how can I obtain a org.apache.cxf.endpoint.Server? Other ways of adding security to my WS?
I haven't had to build a service yet, only a consumer but you may want to take a look at the Apache CXF examples available on github under the ws_security directory.
Apache CXF Examples Page
Apache CXF GitHub Examples Repo

What is the relationship between Apache Tomcat and Apache Axis2 in the context of RESTful API and WSO2

I know I want to build a RESTful api and use Angular on client side. I am choosing between server technologies. Apache Tomcat can do RESTful web services and could do for years now. I was wondering if Axis2 is meant to be replacement for Tomcat. Also I have been encouraged to incorporate WSO2 middleware which uses Axis2. Ideally I'd like to use REST on Axis2 and then WSO2 middleware.
What is the relationship between Apache Tomcat and Apache Axis2 in the context of RESTful API and WSO2? Does Axis2 run within Tomcat?
Apache tomcat is an application server whereas Axis 2 is a Web Services engine.
So no, Axis2 is not meant to be replacement for Tomcat. An application built with Axis2 can be deployed on Tomcat or any other compatible Application Server(AS).
So yes, Axis 2 can run within Tomcat.
WSO2 is irrelevant to your question. Middleware includes Web servers, application servers, content management systems, and similar tools that support application development and delivery.
For a quick description Apache Tomcat is a web server and more precisely a servlet container that allows you to handle HTTP resquest inside servlet.
Apache Axis 2 is a librairy that can handle web services (SOAP and RESTFull), it can run on a server such as Tomcat.
For REST API you can use WSO2 ESB or WSO2 API Management...also if you want to build a restful service you can create a webapp with JAX-RS and deploy it in WSO2 Application Server. As WSO2 Application server use Apache Tomcat you donĀ“t require an Apache Tomcat Server.

How to Consume java web-service (jetty) in C#

I am a newbie to C# development.
Scenario -
We have an application running on .NET 2.0 framework and IIS 6.5. Now, we have installed another application on a remote server which utilizes Jetty web server. For us to integrate both the applications we need to add a reference to a web service in jetty. I have found the web service path on the server which is a .class file and I want to add a reference to my .NET application.
My problem is - how do I find the URL to add a web reference to the .NET application in Visual Studio ? or is there another way to integrate both the applications ?
Thanks
Have you tried using the .wsdl of the .NET web service to generate a proxy class in the Jetty web server? I am assuming there is some type of discovery mechanism built into the Jetty web server for web service capabilities, right?

which is better apache or tomcat apache for webservice of java application..?

I have Used Tomcat Apache to use my java desktop application as a webservice.so is that good option Or i need to use apache server to make my java application as a webservice?
Wht i want is after my webservice made with apachetomcat ..can i call that webservice with wcf or desktop application of .net?
wcf service -> call webservice of java application(using apache tomcat) ->execute java application on server->and return resutl to wcf service
wcf service has function as below
call Javaapplication();
and throught that can i invoke java programm on server?
is it possible?
Apache is an http server. Tomcat is a Java EE environment which includes the ability to function as an http server.
Apache alone won't run your Java application. In many cases, Tomcat will be enough, but in higher-volume situations, you may want to use Apache and Tomcat together.
Other than that, it looks like you need to find a good tutorial on Java EE and Web Services, like, perhaps, this one by Oracle
If you are looking at Apache products, Axis is the tool for web services. And to that, I would look at Axis2. But, I would encourage you to look at the variety of options out there and select the best for you.

java web app calling a web service client (in cxf)

I need a very performant and scalable solution to calling web services from java webapp.
Could someone please suggest the best options for calling webservices from java webapp?
Much appreciated
If you are using a restful web service, there are a lot of client libraries which you can choose. Eg. RestEasy Client, Jersey Client,....

Categories