Blog Goal

This Blog is intended to offer and share some relevant information about the jPOS Presentation Manager module.
The project is still under develop but source code is avaible at GitHub.

Monday, December 13, 2010

New econverters

New econverters or External converters are avaible. External converter are intended to be a way to modularize and simplify converter definition for any field. Also this isn't a replacement, it is an addition to de converters definition.

The way to use this new external converters is:

1) Define one or more xml files with the following definition, lets say

cfg/some.external.converters.xml



<?xml version="1.0" encoding="UTF-8"?>
<external-converters>
<external-converter id="edit-string">
<converter
class="org.jpos.ee.pm.struts.converter.EditStringConverter"
operations="add edit" />
</external-converter>
<external-converter id="show-date">
<converter
class="org.jpos.ee.pm.converter.ShowDateConverter"
operations="list show sort" >
<properties>
<property name="format" value="dd/MM/yyyy HH:mm:ss" />
</properties>
</converter>
</external-converter>
...
</external-converters>



2) Include file in pm QBean

deploy/pm_80.xml



...
<property name="external-converters" value="cfg/some.external.converters.xml"/>
...



3) Use it as an "econverter" instead of "converter" just using the id.



...
<converters>
<econverter id="edit-string" operations="add edit" />
</converters>
...



You can now use it in any entity. This is specially useful for complex or very used converters. You just need to define it once and reuse the definition just with the id.

Enjoy :)

Thursday, December 9, 2010

Commits on Twitter!

Now, you can see all source code commits and news following @jpospm . Enjoy!

Friday, July 23, 2010

jPOS debug with Netbeans

Well, this is kinda out of topic but I am really exited with this feature. I should say THANKS to Osagie for this really useful post.

Osagie describe this in his pots but i will add/change some things that make this fully work with almost all modules of jPOS.

I will assume that you already have a jPOS project in some $home directory.

1) Create NB project. You can do this in File->New Project menu. Then choose category "Java" and project "Java Project with Existing Source" and select the existing folder where jPOS project resides $home

2) Set sources folders. Make sure you add ALL yours and jPOS optional modules src folder into the source tab of project properties.



3) Set run parameters.



4) Modify nbbuild.xml adding the following lines at the end of the file:


<target name="clean">
<ant antfile="build.xml" target="clean" />
</target>
<target name="compile">
<ant antfile="build.xml" target="compile" />
</target>
<target name="run">
<ant antfile="build.xml" target="run" />
</target>


5) Modify nbproject/project.properties and replace

build.dir=nbbuild

for

build.dir=build

6) Now you must "clean & build" project. If everything went ok, you must now add all the build/lib/*.jar to the Project Properties->Libraries option. Just add this jars, do not add Netbeans librarys!



7) Have Fun! Now you will me able to run / debug / profile / or anything else in your jPOS project, including breakpoints and all this nice stuff :)

Sunday, June 13, 2010

Quick Guide Released!

I've released a Quick Guide. Take a look at what can be done with jPOS Presentation Manager.

This document can be freely download here

It's unfinished but is a good start. Any suggestion is welcome.

Enjoy!

Tuesday, May 25, 2010

What's going on

Im still around, but working on some enhancements and working on user manual, thats why im not posting a lot here, documentation is an evil but necesary thing to do :)

I've been working on

- Highlight of rows and items on list. It works now but its too basic and, honestly, very ugly. I am trying to make it better.

- Fix bugs

- New converters (ISO Dump, DateTime, better boolean)

- Enhanced validators

- Better pagination for list. Actual is basic.

I have also some new ideas like

- Conditional operations (show an operation depending on the instance state)

- Permission based operations, fields and highlights. With this we can keep the same configuration file for one entity and PM change it behavior depending on loged user permissions.

- Export lists in Excel, txt and some other formats.

I will try to keep this blog more actualized :)

Monday, April 12, 2010

new! JPOS Presentation Manager Editor 0.9

I created a new project "jPOS-PM-Editor" in GitHub.

This project has 2 goals. First is to provide new users a fast view of the power of PM. This is a simple use case to watch out as a first step. Second goal is to provide a simple editor for PM configuration files. Its still in an early develop but it can get you started with something.

You can clone git project or, if you want to take a look, you can download the "ready to go" version here

I will gladly help anyone that want to give a try to this.

Sunday, March 21, 2010

New Feature! Monitors

I just added a new feature to Presentation Manager: Monitors.

A monitor is a unit of observation of something, usually a system log, like Q2.log, or a log DataBase table or a transactional table.

Here is the model.



An example monitor is:


<!DOCTYPE entity SYSTEM "cfg/monitor.dtd">
<monitor>
<id>q2</id>
<source class="org.jpos.ee.pm.core.monitor.FileMonitorSource" >
<properties>
<property name="filename" value="log/q2.log" />
</properties>
</source>
<formatter class="org.jpos.ee.pm.core.monitor.MonitorFormatter" />
<delay>3000</delay>
<max>100</max>
</monitor>



The result of monitoring this file is something like



It's an auto-refresh window that shows the tail of the file.

Sunday, February 21, 2010

Security core module release!

As a part of PM project, i included a Security core module intended to be a generic way to manage authentication aspect of the project. The main goal is to provide an interface to any security engine that the final user wants. I will soon post a module with a standard DB user authentication and I will be working soon in LDAP authentication module and in a simple file authentication to take users and other information from xml files. Feel free to suggest me another authentication mechanisms that may apply to this project.

The global structure of security module is to have users, user's groups and profiles. All of then can have a list of permissions and a user can have several profiles or to be included in one or more groups.

The main functionality is authentication and permission check. It also includes administration (add, update or delete any of this entities) but its not mandatory to be implemented on an instance module.

I will also include soon a module implemented with PM to administrate security mainly to be used as an example of the PM power.

Saturday, February 13, 2010

First version!

Well, finally I uploaded a first version of pm_core and pm_struts modules at GitHub. This modules are the heart of my work.

pm_core is the generic definition and the basic implementation of the architecture. It defines how xml must be built and provides an Object hierarchy for the visual representation of any entities that want to be visualized. The idea under this module is to define and allows any visual representation be based on it.

pm_struts is my implementation for the core. This module uses pm_core and increase it with a specific web based implementation, mainly developed in jsp and struts.

How to get source code to take a look?


First step is to install git.
In Ubuntu / Debian is enought with
sudo apt-get install git-core

In others O.S. you will need to google it :)

Next step is to create a directory named jPOS-Presentation-Manager and with a console, enter on it. Inside type
git clone git://github.com/jpaoletti/jPOS-Presentation-Manager.git

and there you are. Thats all. If you have questions fell free to contact me or post any comments here.

I will soon post more information about how to use all of this.

Monday, January 25, 2010

About jPOS PM

What is?



Presentation Manager is a module of the jPOS engine that intends to solve the whole visualization thing in an easy, flexible, scalable way.

Why?



When a new transaction project begin, it often comes with a business model associated. Of course, you need some way to administrate this model (add, edit, list, and so on) and to monitoring the server status. But... hey! its a transactional server, i must concentrate my job in develop my transactions, not in the visualization. But, without visualization, its hard to administrate things and the client usually likes to "see" something.

That's the idea beyond PM. With this module you can run an integrated web server and, with a little configuration, you have a running, cute and customized administrative site with some basic operations and you can integrate some of the main entities of your modules with some minimal operations and voilà, there you are, with a simple configuration you have something "visual" to show to your client and you can happily start the transactional develop.

Briefly, the main goal is to provide an easy tool to get started in the administrative interface fast and to give developers a lot of tools to make it extensible, so it can be continuously enhanced without interfering in the transactional develop.

When?


As soon as a decent version comes to life. I hope pretty soon.

Where?


Here:
http://github.com/jpaoletti/jPOS-Presentation-Manager


Do you have some questions? Ask! I will gladly answer all i can. :)

Welcome

Welcome to jPOS Presentation Manager (PM) blog.

I hope that this blog can be useful for someone that is using PM or is looking for some easy, fast and scalable way to develop a Web based administration site for your jPOS based solution.

I apologies for my terrible English but i think that this project is good enough to be a world-wide project and i will try to keep it at least readable.