Skip to main content

Home/ Java Development/ Group items tagged of

Rss Feed Group items tagged

Hendy Irawan

jMock - An Expressive Mock Object Library for Java - 3 views

  •  
    JMock is a library that supports test-driven development1 of Java2 code with mock objects3. Mock objects help you design and test the interactions between the objects in your programs.
  •  
    "JMock is a library that supports test-driven development of Java code with mock objects. Mock objects help you design and test the interactions between the objects in your programs. The jMock library: makes it quick and easy to define mock objects, so you don't break the rhythm of programming. lets you precisely specify the interactions between your objects, reducing the brittleness of your tests. works well with the autocompletion and refactoring features of your IDE plugs into your favourite test framework is easy to extend."
Hendy Irawan

JAnnocessor is a new open-source framework for powerful, flexible, yet easy processing ... - 0 views

  •  
    "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."
Rinav G

JDBC 4.0 Enhancements in Java SE 6 - 0 views

  • In JDBC 4.0, we no longer need to explicitly load JDBC drivers using Class.forName(). When the method getConnection is called, the DriverManager will attempt to locate a suitable driver from among the JDBC drivers that were loaded at initialization and those loaded explicitly using the same class loader as the current application.
  • Auto-loading of JDBC driver class
  • Service Provider mechanism (SPM).
  • ...4 more annotations...
  • META-INF/services directory.
  • META-INF/services/java.sql.Driver.
  • java.sql.Driver.
  • the META-INF/services/java.sql.Drive
  •  
    JDBC 4.0 Enhancements in Java SE 6 Java Platform, Standard Edition (Java SE) version 6 (code name Mustang), is currently in its second beta release and is scheduled to be delivered in October of this year. Java SE 6 includes several enhancements to the Java Database Connectivity (JDBC) API. These enhancements will be released as JDBC version 4.0. The main objectives of the new JDBC features are to provide a simpler design and better developer experience. This article provides an overview of the JDBC 4.0 enhancements and what benefits they offer to enterprise Java developers. We will explore the new JDBC features with the help of a sample loan processing application using Apache Derby as the back-end database.
anonymous

Organize Projects - Google Web Toolkit - Google Code - 0 views

  • com.google.gwt.gears.Gears
    • anonymous
       
      Gears.gwt.xml does not define andy entry point. It can only be inherits
  • two ways to approach loading them
  • nclude each module with a separate <script> tag
  • ...118 more annotations...
  • Create a top level module XML definition
  • Compile the top level module
  • the second approach will lead to much better end-user performance
  • each module has to be downloaded separately by the end-user's browser
  • each module will contain redundant copies of GWT library
  • conflict with each other during event handling
  • Linkers are divided into three categories, PRE, POST, and PRIMARY
  • one primary linker is run for a compilation
  • everal linkers are provided by Core.gwt.xml, which is automatically inherited by User.gwt.xml.
  • monolithic JavaScript file.
  • cross-site deployment model.
  • standard iframe-based
  • <add-linker name="xs" />
  • The GWT compiler
  • packaging its output with the Linker subsystem
  • responsible for the final packaging of the JavaScript code
  • providing a pluggable bootstrap mechanism
  • re-use an existing Java API for a GWT project,
  • <super-source>
  • "re-root" a source path
  • to emulate part of the JRE not implemented by GWT
  • tells the compiler to add all subfolders of com/example/myproject/jre/
  • to the source path
  • com/google/myproject/gwt/jre/java/util/UUID.java
  • most commonly used elements in the module XML file.
  • <inherits name="
  • herits all the settings from the specified module
  • <entry-point class=
  • Entry points are all compiled into a single codebase
  • when the onModuleLoad() of your first entry point finishes, the next entry point is called immediately.
  • Any number of entry-point classes can be added
  • <source path="
  • resources get copied into the output directory during a GWT compile.
  • client subpackage is implicitly added to the source path
  • <public path="path" />
  • treated as a publicly-accessible resource.
  • resources get copied into the output directory
  • the public subpackage is implicitly added to the public
  • <servlet
  • For RPC, this element loads a servlet class
  • mounted at the specified URL path
  • path=
    • anonymous
       
      monting location
  • class="
    • anonymous
       
      Which servlet class
  • URL path should be absolute
  • @RemoteServiceRelativePath attribute
  • you must configure a WEB-INF/web.xml in your war directory to load any servlets needed.
  • n development mode,
  • <script src="
  • external JavaScrip
  • <stylesheet src="
  • Extends the set of values
  • for an existing client property
  • <replace-with-class>
  • <generate-with-class>
  • <when-property-is
  • three different types of predicates are
  • <when-type-assignable
  • <when-type-is
  • <all>
  • <any>
  • <none>
  • GWT libraries are organized into modules
  • you want to inherit at least the User module
  • contains all the core GWT functionality
  • including the EntryPoint class
  • widgets and panels
  • History feature
  • Internationalization
  • DOM programming, and more
  • Low-level HTTP
  • Use the following syntax to cause an external JavaScript file to be loaded
  • before your module entry point is called.
  • as if you had included it explicitly using the HTML <script
  • loaded before your onModuleLoad() is called.
  • all included scripts will be loaded when your application starts, in the order in which they are declared.
  • associate external CSS files with your module
  • GWT.getModuleBaseURL() + "foo.css" in client code
  • module's public path
  • useful when
  • inheritance makes resource inclusion particularly convenient.
  • If you wish to create a reusable library that relies upon particular stylesheets or JavaScript files, you can be sure that clients
  • see the documentation for FileSet for a general overview
  • <public>
  • <super-source>
  • <source>
  • includes
  • excludes
  • defaultexcludes
  • casesensitive
  • By default, the patterns listed here are excluded.
  • defaultexcludes is true
  • <script src='myApp/myApp.nocache.js'></script>
  • <script> tags always block evaluation of the page
  • <img> tags do not block page evaluation
  • two simultaneous connections
  • The body.onload() event will only fire once all external resources are fetched, including images and frames.
  • GWT selection script
  • like a normal script tag
  • but the compiled script will be fetched asynchronously.
  • Parsing is blocked until externalScriptZero.js is done fetching and evaluating.
  • myApp/myApp.nocache.js completes
  • the compiled scrip
  • (<hashname>.cache.html
  • begins fetching in a hidden IFRAME (this is non-blocking).
  • onModuleLoad() is not called yet, as we're still waiting on externalScriptOne.js
  • body.onload() fires
  • onload='alert("w00t!")
    • anonymous
       
      is the last line executed
  • put the GWT selection script as early as possible
  • because it won't block any other script requests
  • <img> tags are not guaranteed to be done loading when onModuleLoad() is called
  • <script> tags are guaranteed to be done loading when onModuleLoad() is called
  • multiple EntryPoints
  • will all be called in sequence as soon as that module (and the outer document) is ready
  • multiple GWT modules within the same page
  • each module's EntryPoint will be called as soon as both that module and the outer document is ready
  • EntryPoints are not guaranteed to fire at the same time
  • or in the same order
  • in which their selection scripts were specified in the host page
Hendy Irawan

Saga EDA pattern - distributed transaction coordinator manager - SOA patterns - Reserva... - 0 views

  •  
    "Unfortunately, in a distributed world, SOA or otherwise, it is rarely a good idea to use atomic short lived transactions (see the Cross-Service Transactions anti-pattern in chapter 10 for more details). Indeed, the fact that cross service transactions are discourages is one of the main reasons we would to consider using the Saga pattern in the first place. One of the obvious shortcomings of Sagas is that you cannot perform rollbacks. The two conditions mentioned above, locking and isolation do not hold anymore so you cannot provide the needed guarantee. Still, since interactions, and especially long running ones, can fail or be canceled Sagas offer the notion of Compensations. Compensations are cool; we can't have rollbacks so instead we will reverse the interaction's operation and have a pseudo rollback. If we added one hundred (dollars/units/whatnot) during the original activity we'll just subtract the same 100 in the compensation. Easy, right?"
anonymous

1. Working with Spring Data Repositories - 0 views

  • Typically, your repository interface will extend Repository, CrudRepository or PagingAndSortingRepository. Alternatively, if you do not want to extend Spring Data interfaces, you can also annotate your repository interface with @RepositoryDefinition
  • It allows quick query definition by method names but also custom-tuning of these queries by introducing declared queries as needed.
  • CREATE_IF_NOT_FOUND (default)CREATE_IF_NOT_FOUND combines CREATE and USE_DECLARED_QUERY.
  • ...21 more annotations...
  • the first By acts as delimiter to indicate the start of the actual criteria
  • The mechanism strips the prefixes find…By, read…By, and get…By from the method and starts parsing the rest of it
  • you can define conditions on entity properties and concatenate them with And and Or
  • The introducing clause can contain further expressions such as a Distinct to set a distinct flag
  • List<Person> findByEmailAddressAndLastname(EmailAddress emailAddress, String lastname); // Enables the distinct flag for the query List<Person> findDistinctPeopleByLastnameOrFirstname(String lastname, String firstname); List<Person> findPeopleDistinctByLastnameOrFirstname(String lastname, String firstname); // Enabling ignoring case for an individual property List<Person> findByLastnameIgnoreCase(String lastname); // Enabling ignoring case for all suitable properties List<Person> findByLastnameAndFirstnameAllIgnoreCase(String lastname, String firstname); // Enabling static ORDER BY for a query List<Person> findByLastnameOrderByFirstnameAsc(String lastname); List<Person> findByLastnameOrderByFirstnameDesc(String lastname);
  • You can combine property expressions with AND and OR. You also get support for operators such as Between, LessThan, GreaterThan, Like for the property expressions
  • AllIgnoreCase
  • IgnoreCase
  • The resolution algorithm starts with interpreting the entire part (AddressZipCode) as the property and checks the domain class for a property with that name (uncapitalized). If the algorithm succeeds it uses that property. If not, the algorithm splits up the source at the camel case parts from the right side into a head and a tail and tries to find the corresponding property, in our example, AddressZip and Code.
  • he infrastructure will recognize certain specific types like Pageable and Sort to apply pagination and sorting to your queries dynamically
  • Pageable
  • Sort sort
  • The first method allows you to pass an org.springframework.data.domain.Pageable instance to the query method to dynamically add paging to your statically defined query. Sorting options are handled through the Pageable instance too
  • <repositories base-package="com.acme.repositories" />
  • Spring is instructed to scan com.acme.repositories and all its subpackages for interfaces extending Repository or one of its subinterfaces. For each interface found, the infrastructure registers the persistence technology-specific FactoryBean to create the appropriate proxies that handle invocations of the query methods. Each bean is registered under a bean name that is derived from the interface name, so an interface of UserRepository would be registered under userRepository
  • This postfix defaults to Impl.Example 1.12. Configuration example<repositories base-package="com.acme.repository" /> <repositories base-package="com.acme.repository" repository-impl-postfix="FooBar" />The first configuration example will try to look up a class com.acme.repository.UserRepositoryImpl to act as custom repository implementation, where the second example will try to lookup com.acme.repository.UserRepositoryFoo
  • To exclude an interface that extends Repository from being instantiated as a repository instance, you can either annotate it with @NoRepositoryBean or move it outside of the configured base-package.
  • ]In general, the integration support is enabled by using the @EnableSpringDataWebSupport annotation in your JavaConfig configuration class.
  • @Configuration @EnableWebMvc @EnableSpringDataWebSupport class WebConfiguration { }
  • In case you need multiple Pageables or Sorts to be resolved from the request (for multiple tables, for example) you can use Spring's @Qualifier annotation to distinguish one from another
  • Spring HATEOAS ships with a representation model class PagedResources that allows enrichting the content of a Page instance with the necessary Page metadata as well as links to let the clients easily navigate the pages.
Hendy Irawan

Seam Framework - Home - 0 views

  •  
    "Seam 3 is collection of modules and developer tools based on the Java EE platform. The modules are portable extensions to CDI that integrate with other technologies to extend the core Java EE functionality. These modules bring you many of the beloved features and integrations from Seam 2 (security, internationalization, JSF, rules, business process management) and also branch out into new areas. IDE support is provided by the JBoss Tools Eclipse plugins. Before diving in, get up to speed with the status and direction of Seam 3. Also be sure to check out the latest news at the bottom of the page. "
Hendy Irawan

Apache Aries (incubating) -- Index - 0 views

  •  
    The Aries project is delivering a set of pluggable Java components enabling an enterprise OSGi application programming model. This includes implementations and extensions of application-focused specifications defined by the OSGi Alliance Enterprise Expert Group (EEG) and an assembly format for multi-bundle applications, for deployment to a variety of OSGi based runtimes. The OSGi R4 V4.2 Enterprise Specification can be found here: http://www.osgi.org/Download/Release4V42 To understand the complete scope of the Aries project, see the Aries proposal document on the incubator wiki.
Paul Sydney Orozco

http://www.adobocode.com/spring/marshallingunmarshalling-java-objects-into-xml-file-usi... - 0 views

  •  
    The release 3.0 of Spring Framework added the Spring Module OXM which supports the marshalling and unmarshalling of Java objects and XML documents.In this post, we will be using Spring OXM to take a Java object, convert it to a XML-format and save it in the hard-disk as an XML file containing information of that Java object. We will also cover how to retrieve back the serialized state of that XML file and reconstruct it back to it's original state as a Java object.
Jackie Fields

IT Management Conference & Expo in NYC Oct.14-16 - 0 views

  •  
    http://www.manageit.me ---The greatest minds in IT in 50+ presentations : top industry-leaders: Creator of MySQL Michael "Monty" Widenius, Internet Celebrity Gary Vaynerchuk, Co-Creator of PHP & Zend CTO Zeev Suraski, Richard Sheridan, CEO of Menlo Innovations & Pioneer of Agile eXtreme Programmi...
DJHell .

http://www.getopt.org/luke - 1 views

  •  
    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.
Baron M

Page 2 - Java Developers Leery of IBM-Sun Merger - 0 views

shared by Baron M on 01 Apr 09 - Cached
  • IBM still runs basic physics last I checked and has deep resources in research to throw at any problem it wants
  • with more money and influence than nearly all of their competitors
  • both companies are highly invested in Java, which means it will continue, but in what form we have no idea
  • ...7 more annotations...
  • IBM is not interested in Sun software but in the Sun hardware and storage
    • Baron M
       
      different perspective
  • pose a number of integration issues for IBM Software Group
  • expect that IBM will take the long view, that an open, flourishing ecosystem around Java will be the tide that lifts all boats
  • some observers say IBM would do well to merge the best parts of both platforms into one.
  • IBM has been a proponent of open standards in the Java ecosystem, and I expect that will continue
  • shed a lot of the weaker products (and a significant number of redundant staff)
    • Baron M
       
      conclusion: SUN and JCP suck, so they deserve this. God bless java and java dependent vendors.
Hendy Irawan

Apache Felix - Apache Felix Gogo - 0 views

  •  
    "Apache Felix Gogo is a subproject of Apache Felix implementing the OSGi RFC 147, which describes a standard shell for OSGi-based environments. See RFC 147 Overview for more information. Using Gogo with the Felix Framework The Gogo subproject consists of three bundles: runtime - implements the core command processing functionality. shell - provides a simple textual user interface to interact with the command processor. command - implements a set of basic commands. As of the Apache Felix Framework 3.0.0, Gogo is included as the default shell in the framework distribution. To use it, you just start the framework like normal:"
Hendy Irawan

Chapter 6. HTTP Caching - 0 views

  •  
    HttpClient Cache provides an HTTP/1.1-compliant caching layer to be used with HttpClient--the Java equivalent of a browser cache. The implementation follows the Decorator design pattern, where the CachingHttpClient class is a drop-in replacement for a DefaultHttpClient; requests that can be satisfied entirely from the cache will not result in actual origin requests. Stale cache entries are automatically validated with the origin where possible, using conditional GETs and the If-Modified-Since and/or If-None-Match request headers. HTTP/1.1 caching in general is designed to be semantically transparent; that is, a cache should not change the meaning of the request-response exchange between client and server. As such, it should be safe to drop a CachingHttpClient into an existing compliant client-server relationship. Although the caching module is part of the client from an HTTP protocol point of view, the implementation aims to be compatible with the requirements placed on a transparent caching proxy. Finally, CachingHttpClient includes support the Cache-Control extensions specified by RFC 5861 (stale-if-error and stale-while-revalidate).
Hendy Irawan

1060 Research NetKernel - 0 views

  •  
    "The NetKernel Resource Oriented Computing (ROC) platform separates architecture from code. With ROC you can compose your architectural design independently from implementation code. By keeping the details of code separate from high-level information architecture you gain: freedom of choice in implementation language rapid click-fit compositional development long-term evolvable solutions Threading and scheduling is managed by the microkernel so your code execution is efficiently optimised with linear scaling on multi-core without the need to learn new languages. Something brand-new also comes from separating architecture and code. NetKernel provides system-wide caching of every area of your system. For free. No configuration. NetKernel learns what information is reusable and reuses it. This makes NetKernel systems fast. Very fast."
Hendy Irawan

Java Tips - Inheritance and the Java Persistence API - 0 views

  •  
    "This Tech Tip presents some of the features of inheritance supported in the Java Persistence API. A sample package accompanies the Tech Tip. It demonstrates some of the features discussed in the tip. The examples in the tip are taken from the source code for the sample (which is included in the package). The sample uses an open source reference implementation of Java EE 5 called GlassFish. You can download GlassFish from the GlassFish Community Downloads page."
Hendy Irawan

Virgo - Home - 0 views

  •  
    The Virgo Web Server from EclipseRT is a completely module-based Java application server that is designed to run enterprise Java applications and Spring-powered applications with a high degree of flexibility and reliability. It offers a simple yet comprehensive platform to develop, deploy, and service enterprise Java applications. The Virgo kernel supports the core concepts of Virgo and is not biased towards the web server, thus enabling other types of server to be created. The kernel can also be used stand-alone as a rich OSGi application platform. A server runtime can easily be constructed by deploying suitable bundles on top of the kernel.
Hendy Irawan

eik - Eclipse Integration for Apache Karaf runtimes - Google Project Hosting - 0 views

  •  
    Eclipse Integration for Karaf is the integration of the Apache Karaf application platform and the Eclipse IDE. Notable features include: An Eclipse Run/Debug launcher configuration that configures Karaf to run inside the workbench transparently to the developer Automatic deployment of workspace plugin projects to running Karaf instances without copying files A Target Platform Definition that allows developers to target only the bundles found in Karaf distributions A Target Platform Provisioner that automatically constructs a target platform from any Karaf distribution on the user's local disk JMX instrumentation of the Running/Debugging Karaf instance. Eclipse views that display the Bundle and Service status of Karaf instances Experimental features: Web Tools Platform integration including: Karaf server runtime with associated classpath maintenance Karaf runtime locator that scans local disks for compatible Karaf distributions Install from the EIK Update Site
Hendy Irawan

unitsofmeasure - Units of Measurement API - Google Project Hosting - 0 views

  •  
    "Units of Measurement API specifies one or more JavaTM packages for the programmatic handling of physical quantities and their expression as numbers of units."
Baron M

Java Developers Leery of IBM-Sun Merger - 0 views

  • Java must advance into the new world of the cloud and big developer productivity.
  • Java will become a legacy platform.
  • slow down innovation
  • ...10 more annotations...
  • It would certainly bring us down to two major players on the Java side: IBM and Oracle.
    • Baron M
       
      this is damn TRUE!
  • IBM likes to create these 'boil the ocean' kinds of solutions
    • Baron M
       
      this is the GENERAL PRACTICE of IBM and Oracle
  • IBM could wind up having six different JVM [Java Virtual Machine] implementations
    • Baron M
       
      I like this example... and most likely, this would happen if IBM buys SUN
  • it's a good thing for Sun to get out of the doldrums
  • Every time IBM has bought a company that was in a leadership position, that company seems to have lost market share
    • Baron M
       
      sad but it's a fact...
  • JCP for behaving like a "Russian commissar.
  • Although many have lost faith in the JCP, this is one area where a new steward could really breathe new life into Java
  • the speediest when it comes to keeping their Java technologies up-to-date
  • hold back innovation in support of their own client needs
  • server market would become a bit tighter and that playing field would be altered as well
‹ Previous 21 - 40 of 293 Next › Last »
Showing 20 items per page