I have to write a web-service client and server (a kind of proxy) and was looking at my options. I narrowed it down to Axis2/C and gSOAP for a number of reasons. I tended toward Axis2/C mainly because of the more permissive license, but saw that the last version is dated April 2009!
Is it still being maintained? Has everyone gone to something else (gSOAP or something else entirely)?
PS: I have no experience in WS and got all my info from Google searches.
Axis2/C is still maintained but progress is too slow, it has only few commits in last year.
Consider using of Axis2/C-unofficial project which is a fork of Axis2/C-1.6.0.
For details please see this answer.
Related
I have got an opportunity to work on a legacy web service project
which has been written 10 to 12 years before . I happily took this
assignment as i really wanted to check out how much effort the
developers had put decades before to write web services without the
advanced framework which we have nowadays . I really think they had
put a lot !!! coz the pkg has so many classes which i dont even
understand what is it ... It has BO ,PO , WSAO classes , CXF mapping ,
marshalling and unmarshalling .. So i want help from senior
developers here who have worked on web services decades before coz i
couldn't find any example in net really , all seems to be archived or
Page not found link .so please provide me any links or examples to
understand JAX-WS 1.2 , Webservice client - service . It might not be
a coding question but a question which would really others who are
willing to work on legacy projects .Thanks in Advance
You might start with just the "spec" jax-ws classes first. Various implementations have a lot of other, non-spec features that aren't portable and go beyond the spec, I'd save those for later. There are parts of jax-ws that are "off the beaten path", (handlers, low level api's, attachments, etc.) you can save those for later too.
This might be a good place to start: https://docs.oracle.com/javaee/6/tutorial/doc/bnayl.html
Java 6 through 8 contains jax-ws (unfortunately it's removed starting with java11) so you don't need an app server to experiment with it, just a java 8 jdk.
This seems to be a pretty good article on using jax-ws with just a jdk:
https://www.javaworld.com/article/3215966/web-services-in-java-se-part-2-creating-soap-web-services.html
The spec, JSR-224, is a good explanation, but it's not light reading, and you have to accept their license.
https://jcp.org/en/jsr/detail?id=224
I'm looking to "embed" a forum into an existing website. I've talked to Ray about what it'd take to do this with Galleon (a great CF-based forum), and it's doable.
As part of due diligence, I'd like to know if any existing ColdFusion-based forum software was designed with embeddedness in mind; in other words, forum software that wasn't built to just be run as a standalone application.
Thanks!
Marc, if you're looking for an add-on to a Mura CMS site, you should check out Meld Forums - https://github.com/meldsolutions/Meld-Forums. Free, open-source, etc.
I am about to start some work on Axis/C. I have a fair idea of C and webservices separately. I am also fairly ok with *nix.
Can someone tell me about the complexity related to creating a webservice with support for MIME/DIME and MTOM with Axis/C? The webservice will be invoked from Java as well as C++ clients.
Does Axis/C have any known limitations in this regard? What are the best starting points for learning Axis/C in general and MTOM et al. support in particular.
I would advise against Apache Axis/C or Axis2c for that matter. Both these projects lack active development and member contribution. Last Axis2c release was in 2009 and Axis/c release page link doesn't even work.
I have developed a reasonably complex web-services implementation (both client and server), and I have ran into these issues:
Documentation is just OK. Nothing great.
Returning status codes of your choice is not easy.
Some HTTP verbs have bugs - for example I couldn't get DELETE to work.
I have faced issues with the supplied XML library guththila. libxml worked better for me.
It's hard to build complex REST routes for your application.
Handling incoming XML objects is quite cumbersome and inconvenient. I ended up writing a library of convenience functions.
JSON support is missing.
Your application will tend to become large with each server-side service implementation running into at lease a hundred lines of code.
WSO2 seems to be another option as far as web-services in C is concerned. The Axis2C team is mostly full of WSO2 people anyways. I haven't tried it though, but definitely looks more promising than Axis2C.
I had to modify the code to get it axis 1 to compile on fedora 13 + I believe I had to add a pure virtual some where in the code
I am currently working on a program that I really think is a good idea (at least I sure hope it is). For the program I am building I am using (after some very long consideration) ColdFusion - Flex - Adobe Air. However, I have to learn ColdFusion to do this.
I am an independent developer that for the most part uses PHP to build my client's websites. Since I plan on learning ColdFusion to build this program, do you guys have any advice on how I can use ColdFusion elsewhere. It is not very exciting to think that I am learning this language for just one thing.
I don't plan on bulding Coca-Cola's lastest greatest website anytime soon, but I (for some odd reason) enjoy coding and was just wondering if you guys had any advice on any smaller-time avenues that one could persue??
Any advice would be greatly appreciated! :)
Cliff notes: I'm an independent PHP developer learning ColdFusion for a client. Its not exciting to learn a language which I will never use again. Where can I apply ColdFusion in the future?
You can use ColdFusion to build any webapp you could build with PHP. I've seen a few articles lately with comments from PHP developers switching to ColdFusion. This one was posted today, and lists some pros and cons of switching to ColdFusion.
http://blog.rubicon.je/2009/09/coldfusion-half-a-year-away/
I wouldn't consider it an either/or proposition though. If you want to learn CF for your AIR app, it will absolutely come in handy for something else down the road, even if you don't plan for that. Knowing more than one (or three) languages is always beneficial, as it gives you additional insight into other ways to solve problems.
Dan
ColdFusion or CFML the language is a tool, like any other you might add to your toolkit. As developers I personally feel we choose choose the best tool for the job. That said having another tool available will invariably come in handy down the road rather you write another CFML application or not. General solid programming advice is to try and learn at least one new language a year.
CFML is easy to learn, yet also provides for advanced development, which is why many choose to go with it. I came from a PHP/Perl background and picked it up in a couple weeks. If you are comfortable programming once you get the syntax down you can use to it do anything you can do with PHP. I wrote at length on the comparison in this answer.
Further lengthy Question/Answers to the viability/use of ColdFusion:
Is ColdFusion a good choice for web development?
What is the status of ColdFusion today?
I know you didn't ask about comparisons, you have made your decision. For building Flex/AIR apps with a data back-end imho ColdFusion or BlazeDs is the way to go. ColdFusion allows you to hook up the power of java to serve data with the easy of a scripting language. With that starting point you have your foot in the Java platform which is tremendously powerful and extensive. You can invoke interact with the Java layer and harness that power. Many will make the leap to Java or a more "friendly" JVM language like Groovy or JRuby.
do you guys have any advice on how I can use ColdFusion elsewhere.
slidesix is a recent example of an interesting use of ColdFusion. NASDAQ built Flex/AIR market replay application. Also you can check Ben Forta's site for more sites running ColdFusion to get some ideas.
But I think you already hit the nail on the head with Flex/AIR apps if you plan on making more, much of what Adobe does is work to make integration with their technologies as seamless as possible. Honestly that alone has been what has excited me most about using CFML and the recent addition of open source alternatives in Railo/BlazeDs I have been building Flex apps powered by Railo/BlazeDs without paying a dime to Adobe.
I guess the bottom line is that the Java platform (via CFML) and the Flash Platform (via Flex Framework ) are both not going anywhere any time soon, and for that matter neither is PHP so I think you will have a solid set of skill from which to build on either way you go.
ColdFusion is huge in Government, both at the Federal and State level. I moved to the D.C. area in large part because of the number CF jobs available around here.
So, you could always use it for gainful employment.
Update: Some links as requested
Ben Forta's list of sites using ColdFusion, Government category
Who uses ColdFusion - a list of ColdFusion development shops
GotCFM?com - a list of sites using ColdFusion; lots of government sites there (look under "N"; the "Government" category isn't fleshed out)
Adobe.com - abridged list of customers, some with links to case studies
Monster.com search "coldfusion" in Washington, DC
Dice.com search "coldfusion" in Washington, DC
You can get a basic reading of what people are paying for via (shudder) RentACoder: http://www.google.com/search?q=coldfusion+site%3Arentacoder.com
You can use coldfusion everywhere and as much as you like in PHP. There's enough free engines (Railo, Smith, OpenBlueDragon) that you can load into Tomcat instances, or use something like stax to put a coldfusion app into the cloud.
How far you do or don't go is up to you. I find that I write about 1/2 the code in coldfusion that I do in PHP. Maybe it's syntax that I feel less, I don't know.
But build your first project, I think the dots to connect will become apparent on their own
Has anyone here had any experience with running OpenBD or Railo in production? We have some legacy CF6.1 apps that need to be hosted somewhere and I'm wondering if OpenBD or Railo is stable enough for production use, won't require a great deal effort to migrate to, etc.
I'll chime in as the 'Adobe' guy and say that yes, both OpenBD and Railo are viable CFML engines. The main hurdles are around CFML compatibility. For the last decade Allaire/Macomedia/Adobe has been driving the CFML standard, but we've formed an open CFML Advisory board made up of various experts in the field to help drive the future of the language.
Today it seems that ColdFusion 7 is the foundational standard. From there the CFML standard seems to splinter between vendors. ColdFusion 8 added a number of exclusive features that haven't been added to the other engines and vice-versa with Railo and OpenBD. In the future, the CFML Advisory should solve this problem.
Using ColdFusion as the standard, I find the following two link to be the best places to understand the compatibility differences.
OpenBD Compatibility
Railo Compatability
Here is the url for the CFML Advisory group. They just started the site so there isn't too much info up there yet.
OpenCFML.org
The CFML compatibility in Railo is a major focus for us. If there are things in Railo that aren't compatible with Adobe CF, then please let us know about them and then we'll try to fix them asap. We are of course trying to get all the requirements of the CFML Advisory Committee implemented in Railo 3.1.x so that we can call ourselves CFML 2009 compatible.
AFAIK an engine should implement the core and the extended core to be called CFML 2009 compatible, but I guess the Advisory Committee hasn't agreed on this. In fact the vendors (like we are) should obey these standards and implement them accordingly.
If of course you experience any problems, just let the Railo Google group know or contact us at www.getrailo.com
Gert Franz
Railo Professional Open Source
Both are on par with CFMX 7 compatability so you shouldn't have any problems migrating a cf6.1 site to either.
Be for warned through that OpenBD DOES NOT support the CFDOCUMENT tag so PDF generation is going to be a problem. Railo on the other hand does.
Railo has an express version, which doesn't require an install and makes it real easy to see if an existing application works with it or not.
OpenBD also has a download and ready to run version, though I haven't tried it out, it should be as easy to setup as the Railo Express version.
It seems that there is project started for OpenBD to integrate the Flying Saucer project as a replacement for CFDOCUMENT support. More can be found here about this.
Absolutely! Both are enterprise class solutions and shouldn't pose too many problems. As rip747 mentions there are copies you can download to quickly test your applications compatibility.
As for performance it's generally believed that Railo is the fastest of the three engines while BlueDragon is the slowest. Although it's not currently in production I'm developing an application against Railo 3.0 and intend to deploy to Railo 3.1 once it's released.
Support for cfdocument will be included in the next "major" versioned release of OpenBD.
Just to give folks a bit of background on cfdocument support in OpenBD, a commercial library was used for cfdocument in New Atlanta BlueDragon, so that had to be removed when OpenBD went open source. The "hooks" are still in the OpenBD engine, however, so it's really just a matter of implementing the underlying functionality using an open source document engine, of which there are many.
I think replacedirect.nl recently migrated their webshop to railo.
Railo virtually has no documentation. It does not seem to be a priority for the core team, they have not managed the Railo open source project well. It is a case of lost momentum due to incompetency.
Railo is quite difficult to deploy on account of very weak documentation and consequently cannot be taken seriously. Furthermore the tag and function tags are empty when you scroll down to usage examples. This open source project and the team running it are a joke, completely out of touch with the recurrinfg complaints of install/config difficulties over the past 2 years.
Stick with Adobe Coldfusion which has good documentation or switch to another language.
Rob, mind if I try to solve your problem by providing a different solution than your question asks?
In that you mention an interest in hosting, just keep in mind that if you mean shared hosting, then you don't need to worry about the cost of the CFML engine. That will be born by the hosting provider, and amortized over the folks on the server. As such, you will find many low- (and even no-) cost CF hosting providers running on Adobe CF (and you'll find a range of them running different versions to suit one's taste, from CF 6, 7, 8, or 9, as I write today.)
There are various lists of CF hosting providers. I offer one (and also provide pointers to still other lists) at a category of my CF411 site: http://www.cf411.com/#cfhost