Skip navigation.

Development

Modifying the Oracle Alta Skin

Shay Shmeltzer - Wed, 2014-11-19 14:38

In the previous blog entries I showed you how to create an ADF project that uses the new Alta UI and then showed you an example of implementing one of the design patterns for a flip card. In this blog/video I'm going to show you how you can further fine tune the look and feel of your Alta application by modifying and extending your skin with CSS.

At the end of the day, this is going to be done in a similar way to how you skinned previous ADF applications. (If you have never done this before, you might want to watch the videos in these two blog entries).

But since the skinning design time is not completely there for Alta in JDeveloper 12.1.3 there are a couple of tricks. Specifically when you create the new skin, you'll need to change the trinidad-skins.xml file to indicate it is extending the alta-v1 and not skyros-v1  - <extends>alta-v1.desktop</extends>

Then the rest of your tasks would be basically the same (although you won't see the overview tab in your skin editor).

So here we go:

Categories: Development

The Case for migrating your Oracle Forms applications to Formspider

Gerger Consulting - Wed, 2014-11-19 08:37
We’ve been getting a lot of inquiries asking whether we have a tool that will automatically convert Oracle Forms applications to Formspider.We don’t have an automatic converter. We don’t view this as a disadvantage at all. We are solving the modernization problem with a different approach:Formspider does not automatically converts your Forms applications to web apps but it converts your Forms developers to first rate web developers.We think this approach produces the best results and lowest cost in conversion projects. We’ve seen this many times.Formspider is an application development framework just like Oracle Forms and just like Forms its programming language is 100% PL/SQL. (You can think of it as Oracle Forms built for 21st century.) Because Formspider works very similar to Oracle Forms (event driven architecture, Formspider built-ins instead of Forms built-ins etc…) it is an order of magnitude easier to learn for Oracle Forms developers compared to any other tool.A conversion project using Formspider is not a complete rewrite where you start with a blank page. This is absolutely not true. Just to give few examples; All of your existing business logic implemented in PL/SQL can be reused in your new application. And because both Forms and Formspider are event driven and use similar API’s, code that manages the UI can be translated fairly easily. In other words, there is no impedance mismatch between the two products unlike between Forms and (say) ADF, .NET or any other popular web development framework.There are several problems with automatically converting Oracle Forms applications to another tech stack:1) The new target tech stack is not known by your team
I cannot overstate how important this is. You end up with an application that you cannot maintain. Your team, who knows the business, who knows what your customers want, who obviously can deliver a successful application to the users, needs training in the new tech stack. This means they go back to becoming junior developers for quite some time. (Even the most zealous ADF proponents admit to a year or longer learning curve.) This feeling of helplessness is very frustrating for experienced developers who know exactly what they wants to implement. It hurts the team moral and motivation during the project. It’s also very costly because, well, training costs money and the output of the developers lower significantly for months but their salaries do not.2) The output of an automatic converter is usually of low quality
Almost always the target tech stack uses the web page paradigm instead of the event driven architecture of Forms. This impedance mismatch is very very difficult to overcome automatically and the customer ends up with a low quality application design that no engineer would architect by himself. This makes the application very difficult and expensive to maintain.Moreover, if the target tech stack uses an object oriented programming language, this adds another magnitude of complexity because PL/SQL is not object oriented. This is why most automatic conversion projects start with the manual process of moving as much code to the database as possible.3) Automated converters are expensive
Best to my knowledge these converter tools are not cheap at all. These tools come with bundled services (they never get the job done 100% automatically) so you also pay for consulting services on top of the conversion fees.Formspider customers around the World have been upgrading their Forms applications with Formspider successfully for years. The same team who built and maintained the Forms applications builds the application in Formspider. They get excited and motivated because finally they have a tool that they can use to build what they want. They feel empowered instead of helpless. The cost savings we provide might be up to hundreds of thousands of dollars depending on the size of your application. I have seen this over and over again many times:Put Formspider in the hands your Forms developers and they will modernize your Forms applications with the highest return on investment.Yalim K. Gerger
Founder
Categories: Development

Interstellar Madness

FeuerThoughts - Sun, 2014-11-16 09:19
Saw Interstellar last night. Only had to wait through TWENTY MINUTES of trailers. Had to put fingers in my ears for much of it. So loud, so invasive, so manipulative. Anyway....

I don't watch TV anymore, rarely watch a movie or read a novel. So when I do subject myself to high-resolution artificial input to my brain, it is a jarring experience.
And enjoyable. I haven't stopped watching TV because I don't like it. I have stopped watching TV because I can't help but "like" it, be drawn to it. I am a product of millions of years of evolution, and both Madison Ave (marketeers) and Hollywood know it, and take advantage of it.
Anyway....
I enjoyed watching Interstellar, with its time-traveling plot ridiculousnesses and plenty of engaging human drama. 
But one line really ticked me off. The movie is, to a large extent, a propaganda campaign to get Americans excited about being "explorers and pioneers" again. 
Cooper (McConaughey) complains that "Now we're a generation of caretakers." and asserts that:
"Mankind was born on earth. It was never meant to die here."
That is the worst sort of human species-ism. It is a statement of incredible arrogance. And it is an encouragement to humans to continue to despoil this planet, because don't worry! 
Science and technology can and will save us! Right? 'Cause it sure has done the trick so far. We are feeding more people, clothing more people, putting more people in cars and inside homes with air conditioners, getting iPhones in the hands of more and more humans. 
Go, science, go!
And if we can't figure out how to grow food for 10 billion and then 20 billion people, if we totally exhaust this planet trying to keep every human alive and healthy into old age, not to worry! There are lots of other planets out there and, statistically, lots and lots of them should be able to support human life. Just have to find them and, oh, right, get there.
But there's no way to get there without a drastic acceleration of consumption of resources of our own planet. Traveling to space is, shall we say, resource-intensive.
Where and how did we (the self-aware sliver of human organisms) go so wrong? 
I think it goes back to the development of recorded knowledge (writing, essentially or, more broadly, culture). As long as humans were constrained by the ability to transmit information only orally, the damage we could do was relatively limited, though still quite destructive.
Once, however, we could write down what we knew, then we could build upon that knowledge, generation after generation, never losing anything but a sense of responsibility about how best to use that knowledge.
That sense of responsibility might also be termed "wisdom", and unfortunately wisdom is something that humans acquire through experience in the world, not by reading a book or a webpage. 
Mankind was born on earth and there is no reason at all to think that we - the entire species - shouldn't live and die right here on earth. Especially if we recognize that the price to be paid for leaving earth is the destruction of large swaths of earth and our co-inhabitants and....
Being the moral creatures that we like to think we are, we decide that this price is unacceptable.

Categories: Development

Free Version Control Tool for Oracle Database

Gerger Consulting - Sat, 2014-11-15 02:54
Gitora is a free version control tool for PL/SQL. Gitora hooks Git to the Oracle database and helps you manage your PL/SQL code easily.

It helps you perform common version control tasks such as reverting to previous commit point, branching, merging and cloning. Gitora updates the PL/SQL objects in the database automatically when version control tasks are performed eliminating the need to save files to an OS folder manually. It also implements a check-in check out system in the database.

Gitora is development tool agnostic. It works with any development tool such as SQL Developer, TOAD, SQL Navigator and PL/SQL Developer.

There is no need to know Git to use Gitora because it comes with a point and click GUI.

Watch these short videos below to see Gitora in action.





Sign up at http://www.gitora.com to get notified when the product launches.

Please share this news in your social networks and help us spread the word.

Thank you.
Categories: Development

Card Flip Effect with Oracle Alta UI

Shay Shmeltzer - Fri, 2014-11-14 17:00

The Oracle Alta UI focuses on reducing clatter in the user interface. So one of the first thing you'll try and do when creating an Alta UI is decide which information is not that important and can be removed from the page.

But what happens if you still have semi-important information that the user would like to see, but you don't want it to overcrowd the initial page UI? You can put it on the other side of the page - or in the Alta UI approach - create a flip card.

Think of a flip card as an area that switches the shown content to reveal more information - and with ADF's support for animation you can make a flip effect.

In the demo below I show you how to create this flip card effect using the new af:deck and af:transition components in ADF Faces. 

A few other minor things you can see here:

  • Use conditional ELs and viewScope variables - specifically the code I use is 
#{viewScope.box eq 'box2' ? 'box2' : 'box1'} 
  • Add additional field to a collection after you initially drag and dropped it onto a page - using the binding tab
  • Setting up partialSubmit and PartialTriggers for updates to the page without full refresh 

Categories: Development

How to uninstall/remove EM12c Agent

Arun Bavera - Tue, 2014-11-11 15:59
./emctl stop agent

/opt/app/oracle/agent12c/core/12.1.0.3.0/perl/bin/perl /opt/app/oracle/agent12c/core/12.1.0.3.0/sysman/install/AgentDeinstall.pl -agentHome /opt/app/oracle/agent12c

rm -Rf /opt/app/oracle/agent12c

From host where emcli is installed:
emcli delete_target -name="test.example.com:1836" -type="oracle_emd" -delete_monitored_targets –async

Reference:
https://docs.oracle.com/cd/E24628_01/install.121/e24089/deinstall_agent.htm#CBBCEJHG

Check any left out info:
select target_name,target_type from MGMT_TARGETS_DELETE where DELETE_COMPLETE_TIME is null

select target_name,target_type from MGMT_TARGETS_DELETE where target_name like '%spare%' and target_type='oracle_emd'



You can try:

exec mgmt_admin.delete_target('target_name','target_type');


If the agent install fails to register with OEM than try:

     cd /opt/app/oracle/agent12c/agent_inst/bin/
    /opt/app/oracle/agent12c/agent_inst/bin/emctl secure agent
    /opt/app/oracle/agent12c/agent_inst/bin/emctl start agent
    /opt/app/oracle/agent12c/agent_inst/bin/emctl config agent addInternalTargets

   /opt/app/oracle/agent12c/agent_inst/bin/emctl upload
Categories: Development

Value Placeholder

Denes Kubicek - Tue, 2014-11-11 05:46
Did you know that you can use Value Placeholder in your page items to display hints for the users? This is a quite neat feature you can implement without using different plugins for displaying hints. It will also work with the APEX ampersand substitution strings like

&P1_ITEM.

Here is how it looks like. Be carefull with this. It will work only for the browsers supporting HTML5.

Categories: Development

Seeing slow startup of SOA OSB and other Java based application then verify Entropy

Arun Bavera - Mon, 2014-11-10 09:20
We faced slow startup of Domain Creation, slow startup  of Domain and resolved using proper Entropy settings:
You should be able to select the faster-but-slightly-less-secure /dev/urandom on Linux using:
$JAVA_HOME/jre/lib/security/java.security
Default /dev/urandom is configured, but as mentioned this is ignored by Java.
-Djava.security.egd=file:/dev/urandom
However, this doesn’t work with Java 5 and later (Java Bug 6202721). The suggested work-around is to use:
-Djava.security.egd=file:/dev/./urandom(note the extra ‘/./’)
 
You can also set in your environment like below in setDomainEnv.sh
if [ "${USER_MEM_ARGS}" != "" ] ; then
MEM_ARGS="${USER_MEM_ARGS}
export MEM_ARGS
fi
MEM_ARGS="${MEM_ARGS} -Djava.security.egd=file:/dev/./urandom"
 
 
Or at runtime:
export CONFIG_JVM_ARGS="-Djava.security.egd=file:/dev/./urandom"
/u01/app/oracle/product/fmw/wlserver_12.1/common/bin/config.sh
 
References:
http://theheat.dk/blog/?p=1539
http://stackoverflow.com/questions/137212/how-to-solve-performance-problem-with-java-securerandom

















Categories: Development

Getting too much alerts for Database Time Spent Waiting (%) Metric in EM12c ?

Arun Bavera - Thu, 2014-11-06 11:17

 

It is Better to set the Database Time Spent Waiting (%)= 99 in Monitoring Templates , so that any new Database discovered will gets synced with the Template collection and changes the default 30% to 99%.

 

Verify that the DBA_THRESHOLDS in target database is updated.

i.e the below query should return no rows:

SELECT metrics_name, critical_value, warning_value, object_name, status
FROM SYS.DBA_THRESHOLDS
where metrics_name like '%Database Time Spent%';

 

Refer:

How to Disable Alerts for The Database Time Spent Waiting (%) Metric? (Doc ID 1500074.1)

Database Server Generated Metrics Alerts Not Cleared In Grid Console Even After Disabling the Metric (Doc ID 786520.1)

"Database Time Spent Waiting (%)" at 100 for Event Class "Other" when Database is not Under Load (Doc ID 1526552.1)

http://docs.oracle.com/cd/E24628_01/em.121/e25160/oracle_database.htm#EMDBM3180

Categories: Development

Find and Replace in a file

Arun Bavera - Wed, 2014-11-05 14:12

Had to replace all the occurrence of wrong  inventory then use this:

grep -rl 'oraInventory' .  | xargs sed -i 's|'/home/emuser/oraInventory'|'/opt/app/oracle/oraInventory'|g'

Categories: Development

Webinar: Building Secure Apps with PL/SQL and Formspider

Gerger Consulting - Wed, 2014-11-05 00:58
We are hosting a free Formspider webinar on November 25th. Join in and find out how Formspider helps PL/SQL developers build secure web applications.

In the webinar, the following topics will be covered:

- Formspider Security Architecture
- Built-in countermeasures in Formspider for OWASP Top 10 Security Vulnerabilities
- Introduction to Formspider Authentication and Authorization Repository

Sign up now.
Categories: Development

Git for PL/SQL

Gerger Consulting - Tue, 2014-11-04 07:42
Gitora, the free version control system for PL/SQL is launching early December '14. Gitora hooks Git to the Oracle database and helps you manage your PL/SQL code easily. Sign up at http://www.gitora.com to get notified when the product launches.

Please share this news in your social networks and help us spread the word.

Thank you.
Categories: Development

Three Level Master Detail with Formspider and PL/SQL

Gerger Consulting - Tue, 2014-11-04 00:28
TANI, a subsidiary of the Koç Holding, provides value-added integrated marketing solutions for offline, digital and mobile platforms. TANI chose Formspider, the application development tool for PL/SQL developers, to implement the application that manages its core business.

Business Need

TANI wanted to improve the efficiency of their business unit and help them make better decisions. As part of this goal TANI decided to upgrade the current campaign management application which is used to manage the online banner ad  campaigns of their customers.

Specifically TANI’s goals in this upgrade were:

  • Increase the data entry/modification speed in the application
  • Improve the reporting capabilities in the application
  • Improve the application’s UI with a fresh and modern look.


The Challenge

The core campaign information in the database spans three tables which are tied to each other in a master-detail-detail relationship. For any campaign, the data in the master row, the detail rows and the detail-detail rows must be validated, committed or rolled backed in the same logical transaction.

The current application did not support batch validation and commit of the entire campaign and therefore was prone to human errors.

The Solution

Since Formspider has an integrated model layer that supports transactions, building a master-detail-detail screen which enforces data validation over three tables was a breeze. The Formspider application easily validates and commits updates to a campaign in the same logical transaction preventing data entry errors.

The Campaign Edit Screen
The master-detail-detail screen also greatly improved the data entry speed of the application because the user could edit the entire campaign information in one screen.

Reporting capabilities of the application also increased significantly thanks to the Formspider grid and its built-in features such as ordering, hiding and filtering of columns.

The Campaign Search Screen with Enhanced Reporting Capabilities
The new application featured new a brand new look&feel in harmony with TANI’s corporate colors. As with every Formspider application, the new campaign management application is a single page application functioning 100% with AJAX giving it the modern effect TANI desired.
New Fresh Look that matches TANI's Corporate Guidelines
Conclusion

Formspider enabled us to deliver TANI a high quality application that features a master-detail-detail data entry screen with validations spanning multiple tables with a fraction of the cost it would take using other technologies.
The application enabled TANI business units to work more efficiently and helped them make better decisions while serving their customers.  
Categories: Development

Science needs to explain this?

FeuerThoughts - Sun, 2014-11-02 08:57
Christopher Nolan of Dark Knight fame releasing new sci-fi movie: Interstellar.

In a Chicago Tribune interview, he says:
I could be wrong, but science needs to cross a threshold and explain why a monkey typing infinitely would never type the works of Shakespeare.
Well, I could be wrong, but maybe Nolan is a bit of an idiot when it comes to science.
Please, Mr. Nolan, tell me which scientists make this claim?
I guess he read somewhere about infinity and how incredibly awesome and big and never-ending it is, and so eventually anything would be done by anybody or anything and so even monkeys would "eventually" write Shakespeare and and and....
Produce a movie called Interstellar with Matthew McConaughey. 
In fact, maybe Chris Nolan is actually a monkey who crossed over from that obelisk in 2001, and got super smart and so a monkey already has produced a movie called Interstellar.
Damn, that is just so cool and so weird and it's like, that's never going to happen, man, no way.
So scientists had better figure out WHY that is not going to happen when they obviously really believe that it WILL happen (go, monkey, go!).
And to do that, they are going to have a cross a threshold, 'cause clearly science has hit its limit here. Just like with souls. Science can't explain souls, so I guess scientists had better cross over - maybe into a parallel universe -
Because really what could be cooler than parallel universes?



Categories: Development

Developing Your First Oracle Alta UI page with Oracle ADF Faces

Shay Shmeltzer - Mon, 2014-10-27 11:20

At Oracle OpenWorld this year Oracle announced the new Oracle Alta UI - a set of UI guidelines that will help you create better looking and functioning applications. We use these guidelines to build all our modern cloud based applications and products - and you can use it too today if you are on JDeveloper 12.1.3. 

The Alta UI site is at http://bit.ly/oraclealta

Take a look for example at one page from the master details pattern page:

altapage

You might be wondering how do I go about starting to create such an Alta page layout?

Below is a quick video that shows you how to build such a page from scratch.


A few things you'll see during the demo:

  • Basic work with the panelGridLayout - for easier page structure
  • Working with the new tablet first page template 
  • Enabling selection on a listView component
  • Working with the circular status meter
  • The new AFAppNavbarButton style class
  •  Hot-swap usage to reduce page re-runs

One point to raise about this video is that it focuses more on getting the layout and look rather then the Alta way of designing an application flow and content. In a more complete Alta mind-set you'll also figure out things like fields that probably don't need to be shown (such as the employee_id), you'll think more about "why is the user on this page and what will he want to do here?" which might mean you'll add things like a way to see all the employees in a department in a hierarchy viewer rather than a form that scroll a record at a time.  There are more things you can do to this page to get even better functionality, but on those in future blog entries... 

Categories: Development

Creating FMW12c Domain using EM12c User Defined Deployment Procedure

Arun Bavera - Tue, 2014-10-21 16:03
1. Installing Software example: Install JDK, INFRA, OSB, RCU Creation in 5 minutes, 58 secondsimage

2. Second example: creating BAM12c 2 node cluster in 9 minutes,  Create RCU, Create domain, Extend Domain, startNodemanger, start admin, start Nodemanager on Mgrserver, startall ManagedServers
image
2 Nodes, BAM Cluster
Categories: Development

APEX Connect 8th and 9th of June 2015 in Duesseldorf Germany

Denes Kubicek - Tue, 2014-10-21 03:34
APEX Connect is the first big APEX event in Germany and will be taking place in Duesseldorf on 8th and 9th of June 2015. You can still apply for a presentation using this link. I will be there with a presentation on APEX Plugins. As far as I know a couple of international guests are expected to be there as well. This event will for sure be interesting and informative so you should think about participating. Düsseldorf is close to Belgium and Holland so I think that we will have quite a lot of visitors from those counties as well. It just comes to my mind that the presentation should be in English. So, you should make sure to book your ticket, hotel and travel in time.

Categories: Development

MS Sharepoint and Oracle APEX integration

Dimitri Gielis - Thu, 2014-10-16 15:11
At Oracle Open World I gave a presentation about the integration of Microsoft Sharepoint and Oracle Application Express (APEX).

I see a lot of companies using Microsoft Sharepoint as portal for their intranet. For many people it’s the first place they go to when they start their day. But to do their job they make also use of other applications, some which are build in Oracle Application Express (APEX). This presentation will show the different options you have to integrate both worlds of Sharepoint and APEX.

The integration can be both ways;
  • in Sharepoint you get data or screens from APEX 
  • in APEX you want to use data (or a screen) maintained and coming from Sharepoint. 


In the next weeks I'll add some more detailed blog posts, things I told during the presentation... for example how to setup your own MS Sharepoint environment.
Categories: Development

Just a couple of screenshots of sqlplus+rlwrap+cygwin+console

XTended Oracle SQL - Thu, 2014-10-16 14:06

I previously wrote that I peeped the idea about showing the session information in terminal title from Timur Akhmadeev’s screenshots, and Timur wrote:

I’m using (a bit modified) Tanel Poder’s login.sql available in his TPT scripts library: http://tech.e2sn.com/oracle-scripts-and-tools

Scripts:
Tanel’s i.sql
My title.sql and on_login.sql

Colored prompt is the one of many features of rlwrap.

Screenshots:
Connected as simple user:
baikal-xtender
Connected as sysdba:
xtsql-sysdba

SQL*Plus on OEL through putty:
putty-to-oel-sqlplus

@inc/title “*** Test ***”
inc-title-test

Categories: Development