Archive for February, 2008
Writing tables to xml
Feb 14th
I was
searching information about writing tables to a XML file. The process consists
of 2 step
-
Creating the XML file
- Writing the XML to disk
The last step is easy (see http://technology.amis.nl/blog/?p=2853 Of my colleague Marco).
This post
concentrates on the first step.
Read the rest of this entry »
Saving (XML) data directly to disk
Feb 14th
I was asked, also after the former post "Selecting (XML) data directly from disk", what the best way would be to save data directly (locally) to disk via XMLDB methods. I proposed a simple solution based on DBMS_XMLDOM.WRITETOFILE, I will demonstrate this below. My colleague Anton came also today up with an "older" method, at least it was a more appropriate one in Oracle 9.2, but after testing it is looks (I didn’t trace the method, yet) like it is actually faster then my proposed one with DBMS_XMLDOM.WRITETOFILE, in Oracle 11gR1.
How to create windows services (Command Line)
Feb 13th
When confronted with microsoft security there are still some things you just cant do even if your administrator. There obviously is a very good reason for it (usually these things break your system), But there are ways to get passed it. Obviously this is also a nice way to explain a nice feature in windows wich allows you to create your own services, so lets get on with it.
First the basics,
A windows service is actually an entry in the windows registry that is being used by the so called "NT Service Controller and services" to identify the binairies to run and the manner in wich to run them. To manipulate the NT Service controller and services a tool is introduced in windows by default that allows the user (or an application) to install new services, manipulate existing ones, query services and service states, or delete them.
As one might now one can controll allot of these features in the windows GUI also called the MMC "Microsoft Management Console" Services plugin. One of the features one can controll is the user under wich the service is started. Also the way the service should start, like on-demand, or boot, or simply disabled. All these features can also be changed altered and removed from the command prompt. Isnt that cool?
Well we all might have had a moment in wich we wanted to know what this "SYSTEM" guy could do? Well if your about to try this, do try this on some allready assigned as lost and destroyed system because the command prompt we are giving you is surely capable of doing so.
The SC command,
For the creation of windows services from the commandline we use a tool called SC, which should be availble from 2000 up. It can do all kind of neat stuff with the installed services like shutdown or query the states of various services. For isntance "what drivers are installed on my machine?"
sc query type= driver
most will obviously have "IGNORES_SHUTDOWN" somewhere. But sometimes you might find very strange services in there. Some stuff like:
Wanarp
Remote Access IP ARP Driver – Some critical windows proces doing arp.
The removal of services is also possible using the sc delete "serviceName" command. Note that a service is being "marked for deletion" and is never deleted in the same session. And then we naturaly have the sc create "serviceName" command that allows us to create services. So…
Lets create a service that runs a dos box and gives us access to the NT AUTHORITY\System account this way for us to discover its "power" on the opperating system.
Lets do something like,
sc create MySystemCmdBox binPath= "C:\windows\system32\cmd.exe /k cmd" type= own type= interact error= ignore start= demand
[SC] CreateService SUCCESS
Running this will open a command box, lets have a quick peek at the syntax. When using this for legal goals like making your VMware run forever. There are some minor downfals to consider…
when using the type= command the options you get are :
own|share|interact|kernel|filesys|rec
Using some of the options will trigger a "[SC] CreateService FAILED 87" this usually means the option used like "type" needs another declaration. In case for instance when using type= interact, the type= option must be declared again with an alternative type like own. So effectivly the service type will be type= own interactive.
when addressing the binPath= pathToBin
its obvious that you should use " quotes " when you need to set all kind of switches behind the binairy. Dont ask, people seem to find this weird on occation
Do mind that when setting the options there should be a space between the equal to sign ( = ) and the actuall value of that option.
So type=interactive (Is wrong) and type= interactive (Is correct)
Well guys, have a blast. There is also a detailed tutorial somewhere on the Microsoft site about this feature:
http://msdn2.microsoft.com/en-us/library/ms810435.aspx
Regards,
Chris Gralike
Using database tables for authentication in ADF applications
Feb 8th
This article describes how to make a login feature for your application, which uses database tables for authentication and authorization.
Read the rest of this entry »
AMIS Query 28/2: Een nieuwe denkwijze op het gebied van Business Proces Performance
Feb 7th
Op 28 februari geeft Gerwin Hendriksen een voorbeschouwing op zijn presentatie tijdens het Hotsos Symposium 2008, in Dallas (TX). Het zal weer een zeer boeiende presentatie worden daar ik weet dat Gerwins methodiek een heel andere kijk geeft om performance problemen te detecteren. De conceptuele aanpak die hij tijdens deze presentatie uit de doeken zal doen, laat een manier zien om over de volle breedte van de architectuur aan profiling te kunnen doen.
Voor meer informatie en om je aan te melden voor deze gratits AMIS Query zie hier: AMIS Query 28/2: Een nieuwe denkwijze op het gebied van Business Proces Performance
Zoals altijd zijn de kennissessie, het diner en verfrissingen kosteloos.
Decorating the render result of 3rd party JSF components by injecting a custom ResponseWriter
Feb 7th
Today I crossed some boundaries with my personal understanding of Java Server Faces. I have gone where I had not gone before.
We were facing the following situation: our application is built using a 3rd party JSF library – in our case ADF Faces. These components provide us with 95% of what we need in terms of both behavior – event handling, validation, conversion, AJAX-support – and UI. The HTML they render may not always be to our liking, but by and large we manage to get the look and feel our users requested or at least will accept. That leaves some 5% of situations where only a lot of CSS, Skinning and even run-time JavaScript DOM manipulation is required to make the users happy.
Sometimes this gets frustrating: a 3rd party JSF components renders a bunch of HTML – it can be quite a bit of complex HTML with several Form input elements, some CSS styling and some JavaScript – and if only we could change one or two tiny little things. Add one CSS StyleClass to one of the HTML elements or change the name of an icon. All I want to do is take the component as it is, wrap it somehow and amend its behavior ever so subtly.
Read the rest of this entry »
SOA Training Program – Getting started with BPEL
Feb 5th
Two weeks ago, during the first session of our 3-month SOA Training program, we worked very hard on XML (and XSD, XPath and XSLT). Today, this starts to pay off: we are entering the world of Business Processes and their implementation through the Business Process Execution Language, or BPEL for short. This session is led by Peter – who managed to find some time between the two SOA projects he is currently working on.
He introduced BPEL, with a strong focus on the Process character. However
Read the rest of this entry »
Selecting (XML) data directly from disk
Feb 4th
On the OTN XMLDB Forum, a question was asked if you could directly select from a XML file on disk, or to be more precise "
XQUERY / XMLTABLE Syntax to read and XML from a Windows local drive?". I had the idea that this could be easily done, nowadays via XMLDB functionality. So I tried it and came to the following conclusions. Although tested on Oracle 11.1.0.6.0 on Windows, this should also work on Oracle 10.2.x.
ADF: making an operation (binding) available in every Page Definition (Binding Container)
Feb 2nd
Our challenge: from every one of our 100+ pages we would like to be able to invoke a specific operation on the ApplicationModules Client Interface. Ideally, we should create an OperationBinding (MethodAction) in every PageDef that binds this AppMod Method. However, that is too much trouble…
Our options:
Read the rest of this entry »

