|
      
Source: developerWorks : Linux : Technical library Awk is a very nice language with a very strange name. In this first article of a three-part series, Daniel Robbins will quickly get your awk programming skills up to speed. As the series progresses, more advanced topics will be covered, culminating with an advanced real-world awk application demo.
Source: developerWorks : Linux : Technical library As the Xen open source hypervisor gains traction in many enterprises for production deployment, you may need to provide fully redundant storage to the Xen environment from the host adapter all the way down to the hard drives. In this article, learn how to use Red Hat Enterprise Linux 5.1 to set up Xen and multipath storage access to the IBM System Storage DS4800.
Source: developerWorks : Linux : Technical library The XO laptop (of the One-Laptop-Per-Child initiative) is an inexpensive laptop project intended to help educate children around the world. The laptop includes many innovations, such as a novel, inexpensive, and durable hardware design and the use of GNU/Linux as the underlying operating system. The XO also includes an application environment written in Python with a human interface called Sugar, accessible to everyone (including kids). This article is excerpted from the developerWorks tutorial "Application development for the OLPC laptop," which takes a look at the Sugar APIs and shows how to develop and debug a graphical activity in Sugar using Python.
Source: developerWorks : Linux : Technical library The publications on this page represent contributions by members of the IBM Linux Technology Center to the development community on the topic of Linux security.
  
Source: developerWorks : Linux : Technical library The loss of critical data can prove devastating. Still, millions of professionals ignore backing up their data. While individual reasons vary, one of the most common explanations is that performing routine backups can be a real chore. Because machines excel at mundane and repetitive tasks, the key to reducing the inherent drudgery and the natural human tendency for procrastination, is to automate the backup process.

Source: developerWorks : Linux : Technical library Ease the pain of migrating device control applications from Microsoft Windows to Linux by understanding how device control works in both operating systems. The authors outline these differences and give you a C/C++ migration sample.
Source: developerWorks : Linux : Technical library Terra Soft Solutions IT Manager Aaron Johnson shows you, step-by-step, how to configure and encrypt the built-in Wi-Fi network that comes with the Cell Broadband Engine(TM)-based Sony PlayStation 3. And, as a little bonus, get 16 quick steps that explain how to switch from a wireless network back to a wired network on the PS3.
Source: developerWorks : Linux : Technical library In recent history, journaling file systems were viewed as an oddity and thought of primarily in terms of research. But today, a journaling file system (ext3) is the default in Linux. Discover the ideas behind journaling file systems, and learn how they provide better integrity in the face of a power failure or system crash. Learn about the various journaling file systems in use today, and peek into the next generation of journaling file systems.
 
Source: developerWorks : Linux : Technical library Server consolidation based on Linux for IBM System z offers advantages, but moving existing applications requires some specialized knowledge. In this article, get general advice on how to organize your porting project, including technical details on mainframe virtualization, byte-ordering, and address calculation specific to System z. This article also covers how development tools (compiler, linker, debugger) are supported on System z, and introduces IBM's free-of-charge Migration Kit for Solaris OS to Linux.
Source: developerWorks : Linux : Technical library You've probably heard of Journaling Flash File System (JFFS) and Yet Another Flash File System (YAFFS), but do you know what it means to have a file system that assumes an underlying flash device? This article introduces you to flash file systems for Linux, and explores how they care for their underlying consumable devices (flash parts) through wear leveling, and identifies the various flash file systems available along with their fundamental designs.

Source: developerWorks : Linux : Technical library Several container widgets exist in GTK+, and with the toolkit's API, you can create user-defined containers. This API is also exposed to PyGTK. In this article, learn how to create a "weighted-table" container in PyGTK. The implementation introduces you to the basic model of GTK+ geometry management and gives you a feel for what to consider and expect when implementing container widgets.
Source: developerWorks : Linux : Technical library Learn what's involved when introducing a Linux® client pilot in your organization, including planning for business and IT requirements, architecture decisions, risks, and understanding how IBM's open collaboration client is used to implement this desktop of the future, today.
Source: developerWorks : Linux : Technical library Learn the steps involved in migrating your environment to that of a Linux® client, including organizational planning and user segmentation. Based on customer experiences, this article offers a comprehensive guide to planning and executing your migration while minimizing disruption to your users.
Source: developerWorks : Linux : Technical library Learn the steps involved in migrating your environment to that of a Linux client, including technical planning. Based on customer experiences, this article offers a comprehensive guide to planning and executing your migration while minimizing disruption to your users.
Source: developerWorks : Linux : Technical library The IBM BladeCenter S chassis is the first IBM BladeCenter to integrate server and storage. In this article, learn how to install SUSE Linux 10 on the blade's attached disk and then how to boot the blade server from the attached disk. The article also covers how to check the storage and blade status, how to map the disk to the blade, how to configure an SAS disk as the boot media, how to install the operating system on the attached disk, and how to handle the most common installation error.
     
Source: developerWorks : Linux : Technical library Ext4 is the latest in a long line of Linux file systems, and it's likely to be as important and popular as its predecessors. As a Linux system administrator, you should be aware of the advantages, disadvantages, and basic steps for migrating to ext4. This article explains when to adopt ext4, how to adapt traditional file system maintenance tool usage to ext4, and how to get the most out of the file system.
Source: developerWorks : Linux : Technical library Linux has been described as one of the most secure operating systems available, but the National Security Agency (NSA) has taken Linux to the next level with the introduction of Security-Enhanced Linux (SELinux). SELinux takes the existing GNU/Linux operating system and extends it with kernel and user-space modifications to make it bullet-proof. If you're running a 2.6 kernel today, you might be surprised to know that you're using SELinux right now! This article explores the ideas behind SELinux and how it's implemented.
Source: developerWorks : Linux : Technical library Have you wanted to port your infrastructure and business line applications to a Linux desktop environment, but been deterred by the need to access critical Microsoft Windows or legacy applications? Finding a way to support these critical business line applications is crucial when considering the move to Linux. This article highlights the various tools that let you access these applications from Linux desktops.
   
Source: developerWorks : Linux : Technical library You have a number of options when configuring WebSphere Message Broker on z/Linux, including support for 64-bit applications in order to access DB2 and WebSphere MQ data on z/OS, use of IFL processors to lower the cost of ownership for WebSphere Message Broker, and use of HiperSockets for fast communication using TCP/IP-based protocols. This article has the details.
 
Source: developerWorks : Linux : Technical library This introductory tutorial, designed as a companion for the IBM SDK for Multicore Acceleration, Version 3.0 (otherwise known as the Cell Broadband Engine(R) SDK), teaches you how to use five performance tools that reside in the SDK 3.0: OProfile, Cell Performance Counter, Performance Debugging Tool, the PDT Trace Reader, and FDPR-Pro. The Visual Performance Analyzer, available separately, is also highlighted.
Source: developerWorks : Linux : Technical library In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam. In this last in a series of six tutorials, Sean walks you through monitoring your system resources, troubleshooting resource problems, and analyzing system capacity.
Source: developerWorks : Linux : Technical library It's not that Linux isn't fast or efficient, but in some cases fast just isn't good enough. What's needed instead is the ability to deterministically meet scheduling deadlines with specific tolerances. Discover the various real-time Linux alternatives and how they achieve real time -- from the early architectures that mimic virtualization solutions to the options available today in the standard 2.6 kernel.
Source: developerWorks : Linux : Technical library In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam. In this fifth in a series of six tutorials, Sean walks you through integrating LDAP with your system's logins and applications. He also details the procedure to integrate your server into a foreign Microsoft Active Directory.
  
Source: developerWorks : Linux : Technical library The Sony PlayStation 3 (PS3) runs Linux, but getting it to run well requires some tweaking. In the third and final article of this series on PS3 Linux, Peter Seebach talks about ways to get X11 slimmed down to fit on a smaller memory budget.
   
Source: developerWorks : Linux : Technical library One of the strongest assets UNIX has is the ability to make shell scripts to ease users' lives. These scripts can range from simple one-liners to several thousand lines. Many times, shell scripts evolve into menu-based scripts, and the scripter wants to display more to users than simply scrolling text. Other times, a simple line or two of output are displayed to users, and the shell scripter wants to put emphasis on a warning message.

Source: developerWorks : Linux : Technical library The Sony PlayStation 3 (PS3) runs Linux, but getting it to run well requires some tweaking. In this article, the second in a series, Peter Seebach takes a look at where all the memory goes and how to reclaim it.

Source: developerWorks : Linux : Technical library Selective acknowledgment (SACK) is an optional feature of TCP that is necessary to effectively use all of the available bandwidth of some networks. While SACK is good for throughput, processing this type of acknowledgment has proven to be CPU intensive for the TCP sender. This weakness can be exploited by a malicious peer even under commodity network conditions. This article presents experimental measurements that characterize the extent of the problem within the Linux TCP stack. SACK is enabled by default on most distributions.
    
Source: developerWorks : Linux : Technical library In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam. In this fourth in a series of six tutorials, Sean walks you through searching your LDAP tree and using the command-line tools. You'll also learn how to set up Microsoft Outlook to query your LDAP tree.
Source: developerWorks : Linux : Technical library Users access z/OS mainframes using a 3270 terminal emulator. In this article, learn how to build a simple shell script for UNIX or Linux that gives you a second terminal emulator to view everything a mainframe user is doing in real time.

Source: developerWorks : Linux : Technical library The Sony PlayStation 3 (PS3) runs Linux, but getting it to run well requires some tweaking. In this article, first in a series, Peter Seebach introduces the features and benefits of PS3 Linux, and explains some of the issues that might benefit from a bit of tweaking.
    
Source: developerWorks : Linux : Technical library It's important to know what happens to file ownership in AIX once you make a UID or GID change. If you don't understand the results of altering a UID or GID, you could cause serious issues to your server and environment.
    
Source: developerWorks : Linux : Technical library The multitenant nature of Software as a Service (SaaS) applications makes security an essential concern. This article introduces a viable and practical approach to securing a multitenant Java application with the open source Spring Security framework combined with Apache Directory Server. The authors present a multitenant example Web application to demonstrate this approach.
Source: developerWorks : Linux : Technical library The latest release of the IBM JRE for Java SE 6 enhances IBM's class sharing feature first introduced in Version 5. In this article, performance analysts Adam Pilkington and Graham Rawson detail the changes, which include improvements in application startup times and memory utilisation.
Source: developerWorks : Linux : Technical library In Part 2 of this brief series, Bilal Siddiqui explains how to use BPEL to express the logic of configurable business workflows. You'll learn how to host your BPEL applications on a BPEL engine and make them work in conjunction with an IoC implementation.
Source: developerWorks : Linux : Technical library The WebSphere sMash environment enables rapid development of interactive Web applications based on popular Web technologies such as PHP, and it lets you reuse existing Java assets from PHP scripts. This article introduces the Java Bridge and shows how to access Java classes from PHP.
Source: developerWorks : Linux : Technical library The session state management mechanism provided by the Servlets framework, HttpSession, makes it easy to create stateful applications, but it is also quite easy to misuse. Many Web applications that use HttpSession for mutable data (such as JavaBeans classes) do so with insufficient coordination, exposing themselves to a host of potential concurrency hazards.
    
Source: developerWorks : Linux : Technical library We live in the era of mashups. Creating Web pages that give users the information they want is a good start, but offering a source of raw data that other Web developers can easily mix in with their own applications is better. In this installment of Mastering Grails, Scott Davis introduces various ways to get Grails to produce XML instead of the usual HTML.
Source: developerWorks : Linux : Technical library Start with a Java applet and build a server-based proxy system that uses your browser to access an arbitrary Web service. You'll use JavaScript code to access applet-based information and call a servlet, which retrieves the remote information. Thus, you bypass the same-server restrictions on what an applet can and cannot do.
Source: developerWorks : Linux : Technical library Domain-specific languages have become a hot topic; much of the buzz around functional languages is their applicability to build such languages. In this, the eighth article in The busy Java developer's guide to Scala, Ted Neward starts building a simple calculator DSL that demonstrates the power of functional languages for building "external" DSLs. Toward that end, he explores a new feature of Scala, case classes, and revisits an old functional friend, pattern matching.
Source: developerWorks : Linux : Technical library Apache XMLBeans does not inherently support multiple versions of an XML schema. For applications that need this type of support to manage compatibility, this limitation is serious. But there is a solution, and in this article, you'll learn how dynamic class loading techniques can help.
    
Source: developerWorks : Linux : Technical library Elliotte Rusty Harold demonstrates Java 5's new XPath API.
Source: developerWorks : Linux : Technical library This tutorial takes you beyond the basics of the JAX-RPC and shows how to customize your JAX-RPC Web services and clients with the help of Apache Axis. On the client side, you can autogenerate much of the code required to connect with new JAX-RPC Web services, focusing your time on the interactions themselves rather than on routine Web service calls. On the server side, you can add additional options, limit the methods you expose, and restrict parameters you'll accept. All of this is possible with a little customization and a deeper understanding of the Apache Axis toolset.
Source: developerWorks : Linux : Technical library Get started with configuring, testing, and modifying the Universal Services.
Source: developerWorks : Linux : Technical library pureQuery is a high-performance Java data access platform focused on simplifying the tasks of developing, managing and optimizing applications and services that access data. It consists of tools, APIs and a runtime engine. The previous articles in this series introduced the two programming styles to help users access the database through simple but powerful APIs. This article summarizes some best practices for development using the pureQuery API and gives you real-world scenarios to see how to implement these practices.

Source: developerWorks : Linux : Technical library Everything in Grails, from build scripts to individual artifacts such as domain classes and controllers, throw events at key points during an application's life cycle. In this Mastering Grails installment, you'll learn how to set up listeners to catch these events and react to them with custom behavior.
Source: developerWorks : Linux : Technical library Download and try the IBM Cognos Validation tool, a command line utility written in Java using the IBM Cognos SDK. This tool can run a complete validation check of all the reports in the Content Store by automating the Report Studio validate process.
Source: developerWorks : Linux : Technical library This article explains how to use IBM Rational Software Architect v7.0 to develop Ajax-supported JSF components.
Source: developerWorks : Linux : Technical library Part 1 of this three-part series on run-time monitoring of Java applications focuses on the JVM's health and ways to instrument source code to capture performance metrics. This second installment presents techniques for instrumenting Java classes and constructs without modifying the original source code.
Source: developerWorks : Linux : Technical library Databases are often out of sync with the applications they support, and getting the database and data into a known state is a significant challenge to manage. In this installment of Automation for the people, automation expert Paul Duvall demonstrates how the open source LiquiBase database-migration tool can reduce the pain of managing the constant of change with databases and applications.

Source: developerWorks : Linux : Technical library Get the details on how to use the common SQL API (CSA), a set of stored procedures that exist across all IBM data servers. Learn to employ the common SQL API and integrate it in an application. Explore a small J2EE Web application, based on the common SQL API, that compares the subsystem parameters of two IBM DB2 for z/OS subsystems by employing the GET_CONFIG CSA stored procedure.
Source: developerWorks : Linux : Technical library Run-time performance monitoring is critical to achieving and maintaining a well-performing system. In this article, the first in a three-part series, Nicholas Whitehead explains how to do low-level granular monitoring of Java performance efficiently. The data you generate can provide valuable insights into system operation and reveal constraints and influences that affect an environment's stability and performance.
Source: developerWorks : Linux : Technical library JavaServer Pages (JSP) and JavaServer Faces (JSF) used to have different variants of the Expression Language (EL). Their unification in JSP 2.1 opened new possibilities, allowing you to use deferred values and deferred method attributes in your custom JSP tags. This article shows how to develop Java Web components based on JSP tag files, which are much simpler and easier to build than the JSF components.
Source: developerWorks : Linux : Technical library In the real world, code has to be referenced and packaged. In this installment of The busy Java developer's guide to Scala series, Ted Neward covers Scala's package and access modifier facilities before continuing to explore of the functional side of Scala by examining the "apply" mechanism.

Source: developerWorks : Linux : Technical library This article introduces using the Ruby Development Tools (RDT) plug-in for Eclipse, which allows Eclipse to become a first-rate Ruby development environment. Ruby developers who want to learn how to use the rich infrastructure of the Eclipse community to support their language will benefit, as will Java developers who are interested in using Ruby.
Source: developerWorks : Linux : Technical library XML serialization has a myriad of uses, including object persistence and data transport. However, some XML-serialization technologies can be complex to implement. XStream is a lightweight and easy-to-use open source Java library for serializing Java objects to XML and back again. Learn how to set up XStream, and discover how to use it to serialize and deserialize objects as well as to read configuration properties from an XML configuration file.
    
Source: developerWorks : Linux : Technical library Representational state transfer (REST) is a style of designing loosely coupled applications that rely on named resources rather than messages. The hardest part of building a RESTful application is deciding on the resources you want to expose. Once you've done that, using the open source Restlet framework makes building RESTful Web services a snap. This tutorial guides you step-by-step through the fundamental concepts of REST and building applications with Restlets.
    
Source: developerWorks : Linux : Technical library XML parsing is a part of nearly every enterprise application. Error handling, though, is absent from most of those same applications. Learn how to use the Simple API for XML (SAX) to deal with errors in your XML parsing -- even if your applications are using the DOM, JAXP, or another API to deal with XML.
Source: developerWorks : Linux : Technical library In the first part of this series, you saw how to generate JavaScript code for sending Ajax requests and processing Ajax responses. The second part showed how to create HTML forms, using conventions and JSP tag files to minimize setup and configuration. In this third part of the series, you'll learn how to develop client-side validators based on JavaScript as well as server-side validators, which are implemented as JSP tag files backing up their JavaScript counterparts. You'll also learn how to use resource-bundles that are reloaded automatically when changed, without requiring the restart of the application.
Source: developerWorks : Linux : Technical library Remote procedure calls (RPCs) are the precursors to modern Web services that are based on the Simple Object Access Protocol (SOAP) or Representational State Transfer (REST). Because all of the Java platform's Web service APIs are built on the concepts introduced in RPC, understanding the Java APIs for XML-Based RPC (JAX-RPC) is an almost mandatory step for writing efficient and effective Web services in the Java language. This tutorial takes you through getting and installing JAX-RPC, configuring it, and building a server-side RPC receiver and a simple client-side application.
Source: developerWorks : Linux : Technical library In this Mastering Grails installment, Scott Davis explores the various ways that Grails can use database tables that don't conform to the Grails naming standard. If you have Java classes that already map to your legacy databases, Grails allows you to use them unchanged. You'll see examples that use Hibernate HBM files and Enterprise JavaBeans 3 annotations with legacy Java classes.
Source: developerWorks : Linux : Technical library If you've been curious about the new release of WebSphere Customer Center (now named IBM InfoSphere Master Data Management Server), then this series is for you! This series describes how and why pureQuery technology was used in the new release, the implementation and migration to pureQuery, and the results of performance and capability testing to validate this critical decision. Part 2 focuses on our productivity and performance measurements in making the decision to user pureQuery and also provides some hints and tips for working with pureQuery.
Source: developerWorks : Linux : Technical library XPath makes selecting elements, attributes, and text in an XML document easy. Learn how to evaluate XPaths from Java programming, and work with the returned nodes.
Source: developerWorks : Linux : Technical library Refactoring is a well-accepted practice for improving existing code. Yet, how do you find the code that should be refactored, in a consistent and repeatable manner? In this installment of Automation for the people, you'll learn how to use static analysis tools to identify code smells to refactor, with examples showing how to improve odiferous code.
Source: developerWorks : Linux : Technical library Inversion of Control (IoC) and Web Services Business Process Execution Language (WS-BPEL) can be effective tools for implementing dynamic business workflows. In this article, the first in a two-part series, Bilal Siddiqui describes business workflows' dynamic nature and proposes a two-layer workflow model that lets you use XML to build configurable and flexible solutions.
Source: developerWorks : Linux : Technical library If you've been curious or confused about the new release of WebSphere Customer Center (now named IBM InfoSphere Master Data Management Server), then this series is for you! This series describes how and why pureQuery technology was used in the new release, the implementation and migration to pureQuery, and the results of performance and capability testing to validate this critical decision. Part 1 focuses on the evaluation of persistence mechanisms and our plan to validate the technology.
Source: developerWorks : Linux : Technical library Wildcards can be very confusing when it comes to generics in the Java language, and one of the most common mistakes is to fail to use one of the two forms of bounded wildcards ("super T" and "? extends T") when needed. You've made this mistake? Don't feel bad, even the experts have, and this month Brian Goetz shows you how to avoid it.
Source: developerWorks : Linux : Technical library Objects have their place in Scala, but so do functional types such as tuples, arrays, and lists. In this installment of Ted Neward's popular series, you'll begin to explore the functional side of Scala, starting with its support for types common to functional languages.
Source: developerWorks : Linux : Technical library pureQuery is IBM's new platform within Data Studio for developing Java database access applications. Its simple API and integrated tooling make data access developers more productive and encourages coding best practices for improved performance. Spring is an open source Java/J2EE application framework that offers higher level data access features like transaction management, resource management, and Data Access Object hierarchies which, when integrated with pureQuery, lead to a simpler application development and maintenance experience. This tutorial guides you in creating a pureQuery application that uses the Spring Framework's Data Access features.
Source: developerWorks : Linux : Technical library Program performance is always a concern, even in this era of high-performance hardware. This article, the second in a two-part series, covers the statistics of benchmarking and offers a framework you can use to benchmark Java code ranging from self-contained microbenchmarks to code that calls a full application.
Source: developerWorks : Linux : Technical library Program performance is always a concern, even in this era of high-performance hardware. This article, the first in a two-part series, guides you around the many pitfalls associated with benchmarking Java code. Part 2 covers the statistics of benchmarking and offers a framework for performing Java benchmarking. Because almost all new languages are virtual machine-based, the general principles the article describes have broad significance for the programming community at large.
Source: developerWorks : Linux : Technical library Part 1 of this tutorial gave you a foundational understanding of XPath. Using slash notation, wildcards, unions, and simple text, you learned how to locate elements and attributes anywhere within an XML document. However, sometimes you need more than just matching based on the name of a node. Predicates give you advanced and refined searching capabilities, allowing you to evaluate the values of attributes and the parent and child nodes of a targeted element. Rather than find a wider node set and refine or filter that set programmatically, you can add predicates to your XPaths to find exactly the nodes you want.
Source: developerWorks : Linux : Technical library The number of cell phone users worldwide is at 3.3 billion and rising, and Internet access from mobile phones is on a rapidly upward trajectory. Developing for the mobile Web has its unique demands. In this Mastering Grails installment, Scott Davis shows you how to make your Grails applications mobile phone friendly.
Source: developerWorks : Linux : Technical library XML is a data format concerned primarily with compatibility and flexibility. But as useful as XML is, it's limited without the abilities to find specific portions of a document quickly and to filter and selectively locate data within a document. XPath provides the ability to easily reference specific text, elements, and attributes within a document -- and with a fairly low learning curve. Additionally, XPath is key to many other XML vocabularies and technologies, such as XSL and XQuery. This tutorial will teach you the fundamentals of XPath, including all of its various selectors and semantics, in an example-driven and hands-on manner.
Source: developerWorks : Linux : Technical library Project documentation is often one of the necessary evils in delivering a software product. But imagine being able to generate your documentation at the click of a button. In this installment of Automation for the people, automation expert Paul Duvall explains how you can use open source tools to automate the generation of Unified Modeling Language (UML) diagrams, build figures, entity-relationship diagrams (ERDs), and even user documentation.
Source: developerWorks : Linux : Technical library The Ruby Java Bridge (RJB) lets you load Java classes directly to, and call them from, Ruby on Rails applications. This tutorial shows how you can put this toolkit to work by reusing your legacy Java Web application code in a modern Web development platform.
Source: developerWorks : Linux : Technical library The open source World Wind Java (WWJ) SDK by NASA creates new possibilities for the open Geographic Information Systems (GIS) community. World Wind, a 3D interactive world viewer written in the Java language and OpenGL, lets users zoom from outer space into any place on Earth. This article explains how GIS developers who want to enhance their Eclipse-based applications can embed the WWJ SDK as an Eclipse plug-in.
Source: developerWorks : Linux : Technical library Scala gives you just as much support for implementation inheritance as the Java language does -- but Scala's inheritance yields a few surprises. This month, Ted Neward introduces you to polymorphism done the Scala way, blending functional and object-oriented language styles while still mapping perfectly to the Java platform's inheritance model.
Source: developerWorks : Linux : Technical library The Ruby on Rails framework has handy XML features that will make developing with and serving database data in XML format to your JavaScript applications easier than ever. JavaScript also has built-in XML parsing capabilities that make it a snap to receive and parse data in XML format. But what if you now want to hook into Java applications without having to deploy another server? That's where JRuby comes in. JRuby on Rails is the Java implementation of the Ruby on Rails framework and brings the benefits of Rails to Java programming by allowing deployment of Ruby apps to Java application servers. In this tutorial, you'll develop a JRuby on Rails application deployable to a Java application server that will serve database data in XML format to an Ajax client that you'll build for film lovers to manage their online films database. You'll also deploy a couple of Java Server Pages pages on the same Java application server to assist the Ajax client in adding and updating films.

Source: developerWorks : Linux : Technical library Gant is a highly versatile build framework that leverages both Groovy and Apache Ant to let you implement programmatic logic while using all of Ant's capabilities. In this tutorial, Andy Glover guides you step-by-step through Gant's fundamental concepts. You'll learn how to define behavior in your build through Gant's flexible domain-specific language, how to reuse Ant features, and how to define functions that make your builds more efficient and even proactive.
Source: developerWorks : Linux : Technical library Linux kernel 2.6.25 introduces a new process state called TASK_KILLABLE. This state is the outcome of an issue raised in 2002 about the OpenAFS file system driver waiting for an event interruptibly after blocking all signals. However, there are some specific reasons for doing it. This new sleeping state echoes TASK_UNINTERRUPTIBLE with the ability to respond to fatal signals. In this article, the author sheds light on this area and discusses the related changes to the Linux kernel and the new APIs that resulted from these changes.
Source: developerWorks : XML : Technical library The XQuery specification is well over a year old now. A surfeit of solid implementations combined with (if developer chatter is anything to go by) marked new interest, seems to indicate that XQuery is finally experiencing higher adoption rates. Possibly this is due to developers starting to figure out how to utilize XQuery within a rich mixture of XML technologies (such as XML databases. XSLT, XML Schema). Learn how to use XQuery beyond its original role as an XML query language and apply it toward the development of middleware and Web applications.
       
Source: developerWorks : Open source : Technical library Security in a PHP application includes remote and local security concerns. Discover the habits PHP developers should get into to implement Web applications that have both characteristics.
Source: developerWorks : Open source : Technical library Learn how to use the Eclipse C Development Toolkit (CDT) to program native applications for the Apple iPhone, using open source tools to enable iPhone OS development on any Eclipse-supported platform.
|