Document Object Models for XML
— There are several competing document object models that can be used in order to load XML into memory. These include W3C standardized DOM, JDOM, dom4j, XOM and Saxon XDM.
Labels: xml, dom, jdom, dom4j, xom, saxon
|
MLJMS - JMS Driver for MarkLogic
— MLJMS is a XQuery and Java library that enables marklogic content to be sent over JMS. Basically whenver the state (create, update, delete) of a document or collection of documents changes, external parties may be interested in these changes. MLJMS uses the Marklogic triggers framework to send messges to a JMS destination.
Labels: xml, xquery, java, marklogic, jms
|
CSharp Code Generation for FpML with Xsd2Code
— This article focuses primarily on C# code generation of the FpML schema (v5.0) using Xsd2Code. Xsd2Code is an open source CSharp or Visual Basic Business Entity class Generator from XSD schema. In the Java world, this can be handled by using jaxb and maven as decribed in the article 'FpML Integration with JAXB and Maven'.
Labels: fpml, dotnet, xml, xsd, csharp
|
Demo Using Drools, FpML, XPath and JMX
— This article showcases the use of Drools, FpML, XPath and JMX in the context of a deal approval engine through a working demo. The demo will demonstrate the use of Drools, FpML and XPath for trade message validation and the ability to update business rules dynamically using JMX and Drools.
Labels: drools, fpml, xpath, jmx
|
Loading Large FpML data into MarkLogic
— Lets take the case where we need to load a set of FpML representation of credit default swaps in MarkLogic . This article explains how to use XQuery to load documents into Marklogic, the issues and using xdmp:invoke and xdmp:spawn to overcome these issues.
Labels: fpml, marklogic, xquery, xml
|
Using Saxons S9API Interface
— Saxon is an integrated XML processor that offers tree based XML representation, schema validation, XPath and XQuery evaluation and XSLT processing. Its new s9api interface provides simple, integrated access to all Saxon's XML processing capabilities in a uniform way, taking advantage of the type safety offered by generics in Java 5.
Labels: xml, xpath, saxon, xquery
|
JAXB Custom Bindings HashCodes and Equals
— When using generated classes, it's natural to want to use these domain objects in some sort of Collection. The problem presented here is that the hashCode and equals methods do not get generated, resulting in an obvious problem.
Labels: fpml, jaxb, technical, java
|
Ivy in .Net
— This article demonstrates how Ivy can be setup for a .Net Project using NAnt. The issues covered include: environment setup, how to declare project dependencies, dependency resolution using multiple repositories and building projects using NAnt.
Labels: ivy, nant, csharp, dotnet
|
Singleton JAXBContext
— One of the most common patterns with the JAXBContext is to have one context per Thread using a ThreadLocal. However, one of the chief complaints about JAXB is that its a memory hog. So the key is to initialize the context once and vend out (un)marshallers. Since creating the context can be quite expensive, its quite common to create it on server startup. The tricky part, when using Spring's ApplicationContext, is how do we get the the paths of the ObjectFactory.class and jaxb.index files?
Labels: technical, spring, java, jaxb
|
MarkLogic Training
— MarkLogic is an industry leading XML Server, designed and optimized for XML content. It provides capabilities to store, manage, enrich, search, navigate, and dynamically deliver content. We recently had the opportunity to attend a 3-day basic training on MarkLogic.
Labels: marklogic, xpath, xquery, xml
|
Useful Bash snippets
— Having to work on different Linux boxes that are locked down and often lack common utilities, I like to keep around a few snippets for inclusion in .bashrc or .bash_profile. E.g., here are a couple, to make searching easier and to convert DOS-formatted files when the dos2unix binary is missing.
Labels: technical, linux, bash, shell-scripting
|
jmock me
— In hindsight, it seems like a particularly painful experience. Whenever I would need to mock or stub out an interface, I would do it myself. Either using dynamic proxies or an anonymous inner class in the form of
Labels: spring, testing, java, technical
|
Bean startup using Lifecycle
— Working with Spring, I have noticed that developers have a hard time creating and starting a container correctly. Often, the startup class will consist of a ClassPathXmlApplicationContext with a base context file to digest. The problem lies in the fact that most do not pay attention to the Lifecycle interface, and proceed to mix initialization and on-start behavior using either the InitializingBean or the explicitly declared init-method.
Labels: technical, java, spring, jms
|
FpML Integration with JAXB and Maven
— Getting started with a new technology can be quite daunting and, when you have a number of inter-dependencies, it can seem impossible. This article will describe how to get a quick start using: FpML 4.4, JAXB 2.1.6 and Maven 2.0.7
Labels: maven, fpml, jaxb
|
Changing lead into gold Revealing the XO impedance mismatch
Labels: xsd, object, modeling
|
OSGI - Spring DM Sample
Labels: osgi, java, spring
|
Using ActiveMQ with embedded broker for JMS testing
— When unit testing code with JMS you'll typically want to avoid the overhead of running separate proceses; plus you'll want to increase startup time as fast as possible as you tend to run unit tests often and want immediate feedback.
Labels: activemq, jms, testing
|
Maven Introduction - Part I
— Why are we talking about build tools when we have Ant? Why bother? I equate Ant to Perl. While Perl is a very powerful language, with which you could probably build a house with, in a record amount of time, you pay for the maintenance and support costs. Any one who worked for our "farm of choice" can attest to the fact that the build environment written in Perl was a nightmare. Furthermore, it was quite difficult to add new functionality. Similarly most Ant environments get out of hand. Powerful, yet when a new joiner comes on board, frequently they are frustrated by the implementation choices, and worse, fear breaking the current functionality with new requirements.
Labels: technical, maven, java
|
pastebin - collaborative debugging tool
Labels: share, source, code
|
Protocol Buffer, a Look
— Protocol buffers are an efficient and flexible way of serializing structured data, conceptually similar to the popular data exchange format XML. It was developed at Google and used as their key data serialization format. It is now available as open source.
Labels: technical, xml, java
|
ClearStore
Labels: xml, gemfire, clearstore
|
Assert Eventually
— When it comes to testing, there are a number of conditions which JUnit does not support explicitly. One of these is asynchronous message flow. When a thread is used to perform a unit of work, which is deterministic, its convenient to test that work within the wider scope of the executing code. This leads to the following two interesting cases regarding testing:
Labels: testing, technical, junit, java
|
Injecting objects, not object factories
— While I'm not certain since when Spring has supported the factory-method, its certainly present in version 2.5. Its a handy way to inject the desired class as opposed to the factory managing it into the target class.
Labels: spring, java, technical
|
Fast Retrieval of CLOBs
— Performance characteristics of extracting CLOBs from an Oracle database can be quite poor, particularly in comparison to extracting VARCHAR2 data types. Typical benchmarks (on Oracle 10g), show this performance degradation to be around a factor of ten with a JDBC driver (more on the difference between thin and thick drivers later).
Labels: technical, oracle, jdbc
|
Spring Context Lifecyle
— What happens when you want to intercept the container itself? There is much less information available for the overall lifecyle of a container. For instance, if you need the container to be aware of all the beans prior to starting a bean?
Labels: technical, spring, java
|
Triggers in Marklogic
— MarkLogic has the capability of firing triggers when certain events occur. These events include: Document events like create, delete and update, Property Change events and Database Coming online.
Labels: xml, xquery, marklogic
|
Java Training & Software
— There are a number of things every developer must know. It is the foundation on which everything else is built on top of. It does not matter if you are junior, senior or an architect, these are some of the building blocks of software development.
Labels: technical, java, sql
|
TeamViewer - Free Remote Access and Remote Desktop Sharing over the Internet
Labels: remote, access
|
Does delegate.BeginInvoke actually use the ThreadPool?
Labels: technical, dotnet
|
Trains, Elevators, and Computer Science (How can classical engineering be used to make more-stable software?)
Labels: code, reliability
|
Introduction to OSGi
— Osgi (formerly Open Services Gateway initiative) refers to a Java based services platform that allows for remote management of a system, as well as adding life cycle management of internal components (bundles), allowing the dynamic install, delete, and updating of these components with minimal impact to the system. OSGi allows for the quick release and incorporation or interconnected components into an active system, and have them interact with no interruption to the active system.
Labels: osgi, java
|
Hivelogic - Top 10 Programming Fonts
Labels: fonts, programming
|
XStream
Labels: java, serializer
|
SDLC
Labels: ba, sdlc
|
Spring DM - Introduction
Labels: java, osgi
|
Quince Home
Labels: quince, ui, design, patterns
|
Client source-code case studies
Labels: source, code, malpractice
|
Tools & Libraries - GemFire Enterprise -Â Gemstone Community
Labels: gemfire, tools
|
codepad
Labels: code, sharing
|
Fluent NHibernate
Labels: fluent, nhibernate
|
Welcome to BLToolkit - Business Logic Toolkit for .NET
Labels: codegen, toolkit
|
Design Patterns in C and VB.NET - Gang of Four (GOF)
Labels: design, patterns
|
The Automated Tester .Net Gem - How to Unit Test Internal Methods
Labels: unit, test, internal
|
Introduction to Rule System and Drools
— This article introduces basic concepts of a rule system. It lists the advantages of a rule system and discusses when and why using one can be helpful. Finally, it gives a high level overview of the open source Drools Rule System.
Labels: drools, technical
|
Aggregating and Viewing multiple service logs
— Most developers quickly realize that the ability to look and query a central log file that contains log errors from all system services is of great help in debugging and tracing how requests get handled. So is a Graphical UI tool that displays log events. This can all be achieved using Apache Log4j framework and companion application Chainsaw.
Labels: log4j, chainsaw, technical
|
Dependency Injection Inversion
Labels: guice, ioc, di, dependency, injection
|
Thread Abort and Thread Pools
Labels: technical, dotnet
|
Dr. Dobb's Why Software Really Fails And What to Do About It March 11, 2010
Labels: software, failure
|
Brahma
Labels: brahma, c#, parallel
|
Software maintenance - Clarity in Code
Labels: software, maintenance
|
Maven Introduction - Part 2 Profiles and Filters
— Profiles and Filters go hand in hand, especially the way we use these concepts in Maven. Such as when specifying different build environments, we generate the property file for our programs. Within a profile, you declare all non standard information. Using the filter mechanism, you can have these properties set, just like an ant task that sets values of your config files.
Labels: technical, maven
|
Thread Death & UncaughtExceptionHandler
— While working on the previous post, I came across an interesting issue. How to propagate exceptions across thread boundaries? In the first iteration, I called the custom runnable's template method to rethrow the exception. The downside was that the logic was rerun in entirety. Tinkering with the code to improve the responsibilities, the test cases started to fail as the AssertionError was being swallowed.
Labels: technical, java
|
Unpacking Resources for Program Execution in Maven
— While using Maven, its often necessary to unpack dependencies in order to execute a program or to run some test cases. Typically its because some resource or data files needs to be extracted to the file system.
Labels: maven
|
Externals Definitions
Labels: svn, externals
|
JNI4NET
Labels: java, c#, .net
|
Accessing Bean Properties in Drools
— In Drools, the data against which rules are evaluated are Java Beans instances. The Rule Language syntax allows you to access properties of these beans while declaring rule conditions in the rule file (drl file).
Labels: drools
|
Project SIKULI
Labels: code, future
|
OCI versus Thin Driver
Labels: jdbc
|
Singularity Blog Covering Robots, Genetics, Stem Cells, Transhumanism, The Brain, The Future
Labels: singularity
|
JANETDEV
Labels: java, c#, .net
|
Nine Things Developers Want More Than Money Software by Rob
Labels: programming
|
Ideal Domain Object Model in Drools
— The Drools Rule Language allows you to access nested properties directly while declaring rule conditions in the rule file (drl file). However, there are few things about nested properties and domain object model that Drools developer should understand.
Labels: drools
|
CWE - 2010 CWESANS Top 25 Most Dangerous Programming Errors
Labels: coding
|
Microsoft Application Architecture Guide, 2nd Edition
Labels: architecture, ehosca
|
My Tech Interviews
Labels: interview
|
My Top 20 Most Popular Posts (So Far) The Inquisitive Coder â Davy Brion's Blog
Labels: code
|
The One Skill You Need To Master To Succeed And Grow As A Developer
Labels: coding
|
A Visual Git Reference
Labels: git
|
Maven - Json-libGetting Started
Labels: json
|
Google Visualization API
Labels: java
|
How can you tell if a person is a programmer? - Stack Overflow
Labels: humor, programming
|
Configuring Apache for ASP.NET All About .NET
Labels: apache, asp.net
|