Apache Axis2™ is a Web Services / SOAP / WSDL engine, the successor to the widely used Apache Axis SOAP stack. There are two implementations of the Apache Axis2 Web services engine - Apache Axis2/Java and Apache Axis2/C
While you will find all the information on Apache Axis2/Java here, you can visit the Apache Axis2/C Web site for Axis2/C implementation information.
Apache Axis2, Axis2, Apache, the Apache feather logo, and the Apache Axis2 project logo are trademarks of The Apache Software Foundation.
Writing your own logging framework is the perfect
coding crime.
Writing your own logging framework is the perfect
coding crime
Even the Sun engineers fell into this trap. Prior to Java 4,
we had a perfectly good logging framework in Log4J. However,
instead of adopting this into the standard Java distribution,
we ended up with java.util.logging. There are lots of Java
logging frameworks available, even meta-logging frameworks
like SLF4J and Jakarta Commons. These are supposed to
abstract the logging frameworks so you can change the
implementation without touching your code.
Writing your own logging framework is the perfect coding crime. If you can convince your manager to put it on the project plan, you are guaranteed to have success. At the end of each day, you will go home feeling happy and satisfied. It will feel like you are doing something creative. You will get the intellectual stimulation without the risk of failure.
Even the Sun engineers fell into this trap. Prior to Java 4, we had a perfectly good logging framework in Log4J. However, instead of adopting this into the standard Java distribution, we ended up with java.util.logging. There are lots of Java logging frameworks available, even meta-logging frameworks like SLF4J and Jakarta Commons. These are supposed to abstract the logging frameworks so you can change the implementation without touching your code.
http://www.javaspecialists.eu/archive/Issue177.html
"JAnnocessor is a new open-source framework for powerful, flexible, yet easy processing of annotated Java code. Its main purpose is compile-time, annotation-driven source code generation in a declarative and customizable fashion. JAnnocessor is built on top of Java APT, encapsulating the Java source code model in a rich and convenient high-level domain model that serves as a good target for expressive matching and transformation. Finally, a template engine is used for customizable template-based source code generation. Having simplicity and productivity in mind, JAnnocessor has many useful features that make it enjoyable: smart imports organization, logging delegation, graphical UI for real-time debug, hot swap of processors and templates, as well as out-of-the-box common annotations, processors and templates."
"To keep our code at Google in the best possible shape we provided our software engineers with these constant reminders. Now, we are happy to share them with the world."
Today most of big or small companies find outsource software development company in Google or other search engine like MSN, Bing and Yahoo. Moreover, their first choices are Indian developers or Indian software development companies.
Janino is a super-small, super-fast Java™ compiler. Not only can it compile a set of source files to a set of class files like the JAVAC tool, but also can it compile a Java™ expression, block, class body or source file in memory, load the bytecode and execute it directly in the same JVM. Janino is not intended to be a development tool, but an embedded compiler for run-time compilation purposes, e.g. expression evaluators or "server pages" engines like JSP.
JANINO is integrated with Apache Commons JCI ("Java Compiler Interface") and JBoss Rules / Drools.
JANINO can also be used for static code analysis or code manipulation.
JANINO can be configured to use the javax.tools.JavaCompiler API (available since JDK 1.6), which removes the Java 5-related limitations.
Lucene is an Open Source, mature and high-performance Java search engine. It is highly flexible, and scalable from hundreds to millions of documents.
Luke is a handy development and diagnostic tool, which accesses already existing Lucene indexes and allows you to display and modify their content in several ways:
* browse by document number, or by term
* view documents / copy to clipboard
* retrieve a ranked list of most frequent terms
* execute a search, and browse the results
* analyze search results
* selectively delete documents from the index
* reconstruct the original document fields, edit them and re-insert to the index
* optimize indexes
* and much more...
Recent versions of Luke are also extensible through plugins and scripting.
I started this project because I needed a tool like this. I decided to distribute it under Open Source license to express my gratitude to the Lucene team for creating such a high-quality product. Lucene is one of the landmark proofs that Open Source paradigm can result in high-quality and free products.
"Jaxen is an open source XPath library written in Java. It is adaptable to many different object models, including DOM, XOM, dom4j, and JDOM. Is it also possible to write adapters that treat non-XML trees such as compiled Java byte code or Java beans as XML, thus enabling you to query these trees with XPath too. "
"Enunciate is an engine for dramatically enhancing your Java Web service API.
It's simple. You develop your Web service API using standard Java technologies and attach Enunciate to your build process. Suddenly, your Web service API is boasting some pretty impressive features:
Full HTML documentation of your services, scraped from your JavaDocs.
Client-side libraries (e.g. Java, .NET, iPhone, Ruby, Flex, AJAX, GWT, etc.) for developers who want to interface with your API.
Interface Definition Documents (e.g. WSDL, XML-Schema, etc.)
Etc."
In this article, we are going to look at how the Activiti BPM engine can be used together with Vaadin. We are going to do this in the form of a case study of a demo application that is available on GitHub. The code is licensed under Apache License 2.0 and can freely be used as a foundation for your own applications.
Before continuing, you might want to check out this screencast of the demo application in action (HD quality is recommended):