bookmarks  1899

  •  

    JuiPiter provides a mechanism to separate Swing tasks from long running non-UI tasks. The core of the JuiPiter mechanism is the Window Logic Decoupler. The decoupler, in addition to memory management and externalized strings, adds a single local Thread (non-Swing) per window that acts as the delegate. The single thread aspect solves the multi-Thread concurrency management that the developer must handle is using other options, i.e., SwingWorkerThread, FoxTrot, Spin. All Swing and delegate tasks communicate through a message passing, publish and subscribe mechanism. Each task publishes messages through the decoupler. The use of queues allows the tasks to communicate without specific synchronization. There is one set of queues and a delegate thread for each Window, though a way to pass messages between Windows has been implemented. Along with this simple messaging infrastructure, JuiPiter also includes a number of Swing component helper classes and an extensive sample application, similar to the SwingSet, that demonstrates all the aspects of the JuiPiter framework. JuiPiter is designed in layers so that some developers may use just the messaging foundation while others will also use the component helpers and utility classes.
    16 years ago by @gresch
     
     
  •  

    WebOnSwing is a revolutionary multiple environment application framework that allows you to create web applications in the same way you develope a desktop one. You dont need to use JSP files, special tags, XML files, requests, posts, etc. Everything is Java and pure HTML files that comes directly from the graphic designer. WebOnSwing is an open source project distributed under LGPL license. This framework constructs and handles html pages with Swing components, allowing to use MVC architecture and all the facilities provided by Swing in the web. The main purpose of WebOnSwing is not to provide a migration tool for preexisting Swing applications to a web environment, although you can use this framework to do that kind of tasks. WebOnSwing make a re use of a solid, tested and well known architecture like Swing's one in web developement process. Provides a powerful template engine that simplify the integration of components and windows with html templates. WebOnSwing templates dont need any special tag and dont have absolutly nothing of logic inside, so you can interchange those in a polimorphic way to create differents skins of your component, pages or entire site, with no recoding. WebOnSwing default window manager allows the use of modal windows transparently, keeping the stack of windows and each one state within the html page, to be able to reconstruct navigation completely, with no need to maintain any data in the server session. With this aproach passing parameters throught differents windows is easy and dont need a special treatment. Another interesting feature is the capacity to refresh components, that allows to update single parts of the page which have changed from last request, remarkably lowering to the traffic of the sucesive requirements and increasing the speed of page responses. Also using the automatic refresh feature is possible to simulate the behavior of a desktop application from web, obtaining the differences of the view by periodics polling from client side to server.
    16 years ago by @gresch
     
     
  •  

     
  •  

    To someone who is new to unit testing, the idea of mock objects can be confusing to say the least. I have covered in previous tutorials how to use various mock object frameworks (EasyMock and jmockit). However in this tutorial, we will focus on the concept of mocking in general. What is a mock object? What is it used for? Why can't I mock object XYZ? Let's look into these questions and maybe clear a bit of the air on the use of mock objects.
    16 years ago by @gresch
     
     
  •  

    SwingLabs is an Open Source laboratory for exploring new ways to make Swing applications easier to write, with improved performance and greater visual appeal. It is an umbrella project for various Open Source initiatives sponsored by Sun Microsystems and is part of the java.net community. Successful code and concepts may be migrated to future versions of the Java™ platform.
    16 years ago by @gresch
     
     
  •  

    Workflow Reloaded : Moving to OSWorkflow I have been trying to model a workflow for one of my applications. I started with Bossa, but after getting stuck using parts of its API, I was well on my way to designing my own workflow engine using Bossa's Petri Net abstraction, until a colleague pointed out that I was trying to re-invent something for which solid, mature implementations already existed in the open-source world, and that, down the road, other developers would curse me for having stuck them with having to maintain this component.
    16 years ago by @gresch
     
     
  •  

    Teaser for an interesting book... EAI - The Broader Perspective No one should have (or will) ever dared to build a 'Single System' which will take care of the entire business requirements of an enterprise. Instead, we build few (or many) systems,and each of them takes care of a set of functionalities in a single Line of Business (LOB). There is absolutely nothing wrong here, but the need of the hour is that these systems have to exchange information and interoperate in many new ways which have not been foreseen earlier. Business grows, enterprise boundaries expands and mergers and acquisition are all norms of the day. If IT cannot scale up with these volatile environments, the failure is not far.
    16 years ago by @gresch
     
     
  •  

    Abeille Forms Designer is a GUI builder for Java applications. Developers and designers can create complex, professional forms in minutes. Designers can drag and drop components onto a WYSIWYG editor. Full support for undo/redo and copy/paste is provided. Components can be easily customized by adding images or modifying their properties. Advanced fill effects are supported such as textures and gradients. Abeille has intuitive layout rules and is based on the JGoodies FormLayout system (https://forms.dev.java.net). The FormLayout is a popular, open source layout manager for Java and is used by thousands of developers worldwide. Abeille comes with all the required software. Abeille stores forms in binary files which can be loaded by your application and added to any Swing container. While the designer is licensed under the LGPL, the forms runtime has a BSD license. This allows forms created by the designer to be used freely in commercial applications. * WYSIWYG Editor * 3rd Party Java Bean Support * Swing Based * Borders, Gradients, Textures, Images, and Shadow Effects * Undo/Redo * Intuitive Layout Rules (based on JGoodies Form Layout) * Open source runtime (BSD License) * Code Generation * Supports Windows, Linux, and Mac OS X.
    16 years ago by @gresch
     
     
  •  

    RMock 2.0.0 is a Java mock object framework to use with jUnit. RMock has support for a setup-modify-run-verify workflow when writing jUnit tests. It integrates better with IDE refactoring support and allows designing classes and interfaces in a true test-first fashion.
    16 years ago by @gresch
     
     
  •  

    Mock is a widely used technology in unit test domain. It shields exteral and unnecessary factors and helps developers focus on the specific function to be tested. EasyMock is a well known mock tool which can create mock object for given interface at runtime. The mock object's behavior can be fine defined prior the test code in the test case. EasyMock is based on java.lang.reflect.Proxy, which can create dynamic proxy class/object according to the given interfaces. It has the inherent limitation from the Proxy. It can create mock object for given interface only. Mocquer is a similar mock tool as EasyMock. With the help of Dunamis Project, it extends the function of EasyMock to support mock object creation for both class and interface.
    16 years ago by @gresch
     
     
  •  

    ChartCreator is a custom JSF component and serves for creating charts in JSF pages. Currently 27 types of charts are supported.
    16 years ago by @gresch
     
     
  •  

     
  •  

    The goal of the DoCASU project is to provide to the Alfresco Community a Custom Alfresco UI: * with a strong focus on User eXperience (e.g. ease of use, responsiveness) * which will be less confusing for average end users (99% vs. the 1% power users), * which will permit a broader acceptance of the solution by a larger group of users * and being a scalable solution based on the assembly of standard components.
    16 years ago by @gresch
     
     
  •  

    ven though Web 2.0 and rich Internet applications (RIAs) are all the rage these days, building a rich Web front end for your stakeholders is not the answer when thick-client functionality is what you really need. I stated as much in my previous article, "Building a Java App Server Foundation for Thick-Client Deployment," which showed how to leverage a traditional Java Web server architecture to easily deploy thick clients.
    16 years ago by @gresch
     
     
  •  

    Fura is a self-contained grid middleware that allows the grid enablement and distribution of applications on heterogeneous computational resources. Fura features a web-based GUI, wizard-guided installation and configuration, and Web Services compliance. Fura's component based plug-in architecture allows grid services to be extended or replaced, and new services can be developed reusing existing components. Fura is for developers or highly technical enthusiasts who want the open and latest grid technology early and often to use it in non-critical computing environments. It is not recommended to use Fura where support options, maintenance, and software/hardware certifications are valued. For such environments, you must use either Fura Open Enterprise Edition (GPL Licensed) or Fura Commercial Enterprise Edition (Commercial EULA).
    16 years ago by @gresch
     
     
  •  

    In order to solve web application vulnerabilities we have created HDIV (HTTP Data Integrity Validator) open source project. We can briefly define HDIV as a Java Web Application Security Framework. HDIV extends web applications’ behaviour by adding Security functionalities, maintaining the API and the framework specification. This implies that we can use HDIV in applications developed in Struts 1.x, Struts 2.x, Spring MVC and JSTL in a transparent way to the programmer and without adding any complexity to the application development. It is possible to use HDIV in applications that don’t use Struts 1.x, Struts 2.x, Spring MVC or JSTL, but in this case it is necessary to modify the application (JSP pages). The security functionalities added to the web applications are these: INTEGRITY: HDIV guarantees integrity (no data modification) of all the data generated by the server which should not be modified by the client (links, hidden fields, combo values, radio buttons, destiny pages, etc.). Thanks to this property HDIV helps to eliminate most of the vulnerabilities based on the parameter tampering. EDITABLE DATA VALIDATION: HDIV eliminates to a large extent the risk originated by attacks of type Cross-site scripting (XSS) and SQL Injection using generic validations of the editable data (text and textarea). CONFIDENTIALITY: HDIV guarantees the confidentiality of the non editable data as well. Usually lots of the data sent to the client has key information for the attackers such as database registry identifiers, column or table names, web directories, etc. All these values are hidden by HDIV to avoid a malicious use of them. For example a link of this type, http://www.host.com?data1=12&data2=24 is replaced by http://www.host.com?data1=0&data2=1, guaranteeing confidentiality of the values representing database identifiers. Also it is possible to hide the name of the parameters becoming the link into http://www.host.com?0=0&1=1. ANTI-CROSS SITE REQUEST FORGERY (CSRF) TOKEN: Random string called a token is placed in each form and link of the HTML response, ensuring that this value will be submitted with the next request. This random string provides protection because not only does the compromised site need to know the URL of the target site and a valid request format for the target site, it also must know the random string which changes for each visited page.
    16 years ago by @gresch
     
     
  •  

    Exception Handling with Spring and Log4J How to log exceptions. This technique will log messages to your server log file, send an email, with the tag stack of the error, for error level warnings and display a generic page to the user. First step is to set up Log4j. Make sure you have the following classes in application lib or common server lib. activation.jar This can be got from http://java.sun.com/products/javabeans/jaf/downloads/index.html Set up your log4J configuration file, put this file in your WEB-INF directory
    16 years ago by @gresch
     
     
  •  

    Gecode/J is a Java interface for the Gecode C++ constraint programming library. It allows you to model and solve constraint problems in Java. explore the search tree with Gist, the Graphical Interactive Search Tool. Either using the built-in depth-first search strategy, or manually and interactively. Solutions and choice nodes can be inspected by clicking on them, and visualized using custom actions. implement propagators in Java. Whether for prototyping, for teaching, or just for fun. The propagators are integrated fully, so in your model you can mix them freely with the built-in propagators provided by Gecode. implement branchings for custom heuristics. Just like propagators, custom branchings fully integrate into Gecode/J. implement search engines using copying and recomputation. As search is fully programmable, you can write your own search engine, e.g. for LDS or A* search. In fact, Gist is implemented entirely in Java using the Gecode/J interface.
    16 years ago by @gresch
     
     
  •  

    Reverspring is a Java library that allows you to create Spring IoC XML files from POJO at runtime. CoI stands for Control of Inversion: Reverspring just inverts the inversion of control mechanism of Spring Framework, allowing you to (re)write Spring descriptors starting from your Java objects. With Reverspring you can write process descriptors on XML files without re-inventing a new DTD or XML-Schema, but just using the well known Spring IoC syntax.
    16 years ago by @gresch
     
     
  •  

    Physhun is a framework for modeling, building and executing processes as Finite State Models in J2SE and J2EE environments. It allow complex processes to be layed out and managed graphically which promotes rapid development and ease of maintenance. Physhun is lightweight enough to run in simple standalone applications, but flexible and powerful enough to be used for orchestration in SOA. Physhun allows processes to be long lived, persistent and transactional. Processes can be purely synchronous, or can be interacted with asynchronously as is common in Workflow processes. The Physhun framework uses the Spring framework, and exposes all of the value added services provided by Spring, including inversion of control (IOC), aspect-oriented programming (AOP) and transaction management. Process control with Physhun is accomplished by defining processes as state models. A state model is defined as a Spring bean, comprised of States, Transitions, Conditions and Actions, all of which are also defined as Spring beans. Actions contain the implementation of the behavior that is executed on state transitions. Similarly, conditions contain the implementation that codifies the conditions that must be met for a state transition to occur. Predefined Actions and Conditions are provided in the Physhun framework and the Physhun-XML packages, or the user can easily define custom Actions and Conditions as necessary. Furthermore, the framework is built in such a way that things like state machine rules, process storage, caching and lookup, etc can be customized and plugged in. State models can be defined programatically, by writing XML defining the state model, or graphically using an editor like freely available Physhun Modeler. Physun Modeler is a free GUI that can be used to graphically define state models. PhyshunModeler software is provided free of charge, but is not open source software.
    16 years ago by @gresch
     
     

publications  16  

  • ⟨⟨
  • 1
  • ⟩⟩