//AMIS Technology Blog » Technical Architecture » Page 4

Technical Architecture

Knowledge Center Technical Architecture

Vacatures bij AMIS services

Oracle Diagnostics Logging (ODL) for application development

1

Logging is a very important aspect of application development as it offers run-time access to the behaviour and data of the application. It’s important for debugging purposes but also to investigate exception situations on production. The Java developer has a choice between logging frameworks but Log4J is probably the most used one. The usage is quite simple: grab a Logger, e.g. private static Logger log = Logger.getLogger(MyBean.class);, and then use that logger to log the actual message at the required level, log.debug(“This is a debug message”);. To print the logmessages, the Log4J is configured externally with a properties file that defines the location (e.g. console, file, database etc.) and the format of the logmessages. Other logging frameworks, like Java Util Logging, are used in a similar way. It’s actually a good practice to not use Log4J directly, but to use a wrapping or facade framework, that allows switching of the actual logging implementation itself. In the past that would have been Apache Commons Logging (ACL), but now SLF4J is commonly used because it doesn’t have the classloader issues of ACL and it provides some nice message formatting (and performance) More >

SIG Event

ADF 11g : Drag’n Drop and Contextual Events

0

While going through my list of requirements for our AMIS re-usable ADF taskflow library, I ran into the following requirement: publish a contextual event on a Drag and Drop action. If you know contextual events, you immediately notice that there is no way to publish a contextual event from a Drag and Drop action. There are two types of events: ADF Binding Type events or JSF Component Type Events such as actionEvents, valueChangeEvents or clickEvents (also called eventBindings). However none of those is directly related to Drag and Drop. With some knowledge of the ADF Framework you will be able to create contextual events anyway. This post describes how to publish contextual events when a Drag and Drop action occurs. (more…)

SIG Event

ADF 11g: Ode to the Task Flow

2

Last night we organized the “Ode to the Task Flow” session at AMIS. After a short presentation introducing the Bounded Task Flow it was time for the hands-on lab: “Build your first taskflow”.

In this lab many of the attendees created their first taskflow, learning the basics of ADF taskflows. This first taskflow receives a job title, and optionally your favorite color via input parameters. Based on that information a welcome message is created. The taskflow is smart enough to invoke the proper logic by using a router to show the correct page fragment based on an input parameter. From this activity, you can change your name in another view activity. This taskflow includes routers, method calls, input parameters, default activities and wild card control flows.

After diner (great Chinese food) there was no time for my usual after diner dip. I had to present a demo on packaging an ADF Task Flow as an ADF Library, and invoking it into a new application. After this demo, the second hands-on lab started. This part of the “Ode to the Taskflow” hands-on lab, was about the mechanism used to achieve reuse across applications: the ADF Library – the bundle in which reusable taskflows are More >

Vacatures bij AMIS services

An Evening with Oracle Database Security Expert: Pete Finnigan

1

AMIS Technology School is proud to present, in collaboration with Miracle Benelux Masterclasses:

  • An Evening with Oracle Database Security Expert: Pete Finnigan on Tuesday 25th of May, 2010.

Miracle Benelux and Pete Finnigan agreed to do an extra special on the AMIS premises the evening just before Pete’s 2 day Masterclass in Utrecht will start (for the 2 day Masterclass agenda, see also the following URL). During this AMIS Query, besides the free food and normal standard setup of such an AMIS Query Event, Pete will have a presentation on Oracle security and there will be a lot of room of informal discussions during and after this session. There is still some room if you would like to learn from one of the best on Oracle database security.

More details on those masterclasses can be found on the Miracle Benelux site. Hopefully this will be the first of series… More details about this event will follow shortly.

About Pete Finnigan…

Pete is a world renowned expert in the area of Oracle security providing consultancy, design, security audits and trainings all in the area of Oracle Security. Pete is a member of the Oak table network, he has spoken regularly all over the world at More >

SIG Event

Agile software development, the principles. Principle 11: The best architectures, requirements, and designs emerge from self-organizing teams.

1
This is the eleventh of 12 posts about the principles of agile software development. Purpose is to go back to the start of the agile manifesto (http://agilemanifesto.org/principles.html) and discuss the implementation of the 12 principles in real life software engineering. Goals of agility are to go deliver software of higher quality, faster, with a higher acceptance to end-users and able to follow the changing business requirements to strive for competitive advantage.   The question is: is this going to work in practice or is this only based on a nice marketing and sales story.   Principle 11: The best architectures, requirements, and designs emerge from self-organizing teams.   For a long time the engineering expertise (and also software engineering) was based upon the condition that you worked with specialists. These specialists emerged from the principle of division of labour and made it possible for these specialists to focus their attention on their specialism and create the best solution within their field of expertise. The Interaction designer designed a user interface, the architect created a global systems model, developers created code and More >
Vacatures bij AMIS services

Enhancing fast queries using "Tapio-Indexes"

During the years I have a lot of times encountered performance problems that ended up to be fast queries (less than 10ms) which are executed very much. In these situations the execution plans, from such queries can look like:

 

OPERATION            OPTIONS                 OBJECT# NAME                         -------------------- -------------------- ---------- ----------------------------------- SELECT STATEMENT                                     .                           SORT                 ORDER BY                        .                           TABLE ACCESS         BY INDEX ROWID           120713 XXX.TABLE_WITH_MANY_COLUMNS INDEX                RANGE SCAN               121558 XXX.INDEX_WITH_FEW_COLUMNS 

 

In a lot of cases we deal with a query for example which is returning fewer columns than exists in the involved table like four, from an involved table having twenty columns. Although the execution plan looks already pretty “OK”, it still results in a query which is in top three most resource taking queries.

 

To enhance the query we can use “Fat Indexes” or nowadays better known “Tapio Indexes” (I call them like that nowadays). What are these kind of indexes…. In More >

Go to Top