10g UIX UIExtensions

This is sort of a followup to a UIX thread: Refer to 'parent' 'uix.current'?
The extension I posted there appears to be working, but the compiler always complains that it is 'unable to parse binding' on my UIExtension classes. It's just a warning, and the code still compiles and works, but is there a way to avoid the warning?
Also, I wrote another extension for accessing attributes, for which I'll post the code below. I know that objects like 'sessionScope' are available in a UIX page, but without a 'set' like in JSTL, is there another way to set values on the scope objects, short of an extension like below?
Also, if someone could please respond to my question about a place to put the el expressions for my extensions. Currently, I put the 'setter' calls in a text tag, since the setters are void, so the tag doesn't render.
Finally, will there be a 'set' and temporary variables in the production 10g?
public class ScopeAttributeAccessorUIExtension implements UIExtension  {
     public static final String ACCESSOR_NAMESPACE = "http://uix.avega.com/access";
     public void registerSelf(ParserManager parserManager) {
          XMLUtils.registerFunctions( parserManager, ACCESSOR_NAMESPACE, ScopeAttributeAccessor.class );
     public void registerSelf(LookAndFeel lookAndFeel) {
public class ScopeAttributeAccessor  {
     public static void sessionSet( UIImplicitObject uix, String key, Object value ) {
          RenderingContext context = uix.getRenderingContext();
          BajaContext bajaContext = BajaRenderingContext.getBajaContext( context );
          HttpServletRequest request = bajaContext.getServletRequest();
          HttpSession session = request.getSession();
          session.setAttribute( key, value );
     public static Object sessionGet( UIImplicitObject uix, String key ) {
          RenderingContext context = uix.getRenderingContext();
          BajaContext bajaContext = BajaRenderingContext.getBajaContext( context );
          HttpServletRequest request = bajaContext.getServletRequest();
          HttpSession session = request.getSession();
          return session.getAttribute( key );
     public static void requestSet( UIImplicitObject uix, String key, Object value ) {
          RenderingContext context = uix.getRenderingContext();
          BajaContext bajaContext = BajaRenderingContext.getBajaContext( context );
          HttpServletRequest request = bajaContext.getServletRequest();
          request.setAttribute( key, value );
     public static Object requestGet( UIImplicitObject uix, String key ) {
          RenderingContext context = uix.getRenderingContext();
          BajaContext bajaContext = BajaRenderingContext.getBajaContext( context );
          HttpServletRequest request = bajaContext.getServletRequest();
          return request.getAttribute( key );
}

We don't have any special integration with xsql, but you can include non-uix content using urlInclude and servletInclude. See the section "Including JSP, Servlet, and Other HTML Content" in "Building J2EE Applications -> Working with the web tier -> Working with ADF UIX Pages -> UIX Guidelines -> Dynamic User Interfaces -> Includes and Templating in ADF UIX".

Similar Messages

  • OIM 10G : UIX Not found error

    Hello,
    I've moved OIM 10G 9102 to application server Weblogic in cluster (version 10.3.5.0 - 11g).
    All the workflows and provisioning pieces are working as expected.
    However, when a manager user is trying to set his proxy by selecting calender dates. He is not able to select any dates (calender is not opening on button click) and the bottom of the IE page says - Error on Page.
    When i click on "Error on page" it says - Object expected : MyProxy.do... i copied the error details and here it is:
    =============================================================
    Webpage error details
    User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)
    Timestamp: Fri, 16 Dec 2011 00:19:01 UTC
    Message: Object expected
    Line: 936
    Char: 52
    Code: 0
    URI: <hostname>/xlWebApp/MyProxy.do
    Message: Object expected
    Line: 963
    Char: 1
    Code: 0
    URI: <hostname>/xlWebApp/MyProxy.do
    Message: Object expected
    Line: 1107
    Char: 1
    Code: 0
    URI: <hostname>/xlWebApp/MyProxy.do
    Message: Object expected
    Line: 936
    Char: 1
    Code: 0
    URI: <hostname>/xlWebApp/MyProxy.do
    When i check the OIM logs it says,....
    ========================================================================
    FormBean, localName='form': The UIX installable resource files could not be found under the following directories:
    FormBean, localName='form': /opt/Oracle/Middleware/user_projects/domains/oim_domain/servers/OIM_SERVER1/stage/Xellerate/WLXellerateFull.ear/xlWebApp.war/cabo/
    FormBean, localName='form': Please install the UIX installable resource files under one of these directories. Or, set the oracle.cabo.ui.sharedContextPath system property to point to the location of your UIX installable resource files.
    ========================================================================
    This link confused me to the version of Weblogic 11g (10.3.5.0) for OIM 9102 BP15.
    UIX on Weblogic (AS 11G)
    Any help would be deeply appreciated.
    Thanks,

    I've moved OIM 10G 9102 to application server Weblogic in cluster (version 10.3.5.0 - 11g).I don' know how did you move it.
    But it is expecting cabo files. Generally you'll find cabo directory in the ear file parallel to WEB-INF folder.
    It seems that that folder or its content are missing from your ear file. Can you redeploy your ear file or you can also try with copy paste the folder/content from older directory to */opt/Oracle/Middleware/user_projects/domains/oim_domain/servers/OIM_SERVER1/stage/Xellerate/WLXellerateFull.ear/xlWebApp.war/* and restart

  • 10G uix cancel process changes

    I have an application that uses bc4j objects from UIX. In my update and create UIX pages I have cancel buttons, which just trigger the cancel event, like so:
    <button text="Cancel" ctrl:event="cancel" />
    The cancel event does two things:
    1. executes a rollback: <bc4j:rollback/>
    2. returns to the view screen: <ctrl:go name="AspectVision_View" redirect="true" />
    I use the <button> tag because it does not require submitting a form like the <submitButton> does.
    With 10G, <button> no longer supports the event attribute.
    My thoughts on this, in any case, is that the rollback is not necessary. That, if no commit is made, then the data in the update or create form is discarded when I leave the form.
    If this is true, then I can just use the destination attribute of the button to return to the previous page, and not leave data laying around that a commit somewhere else in my application will cause to be saved.
    <button text="Cancel" destination="AspectVision_View.uix" />
    Does anyone know if this is a correct assumption?
    Thanks, Steve

    OK.
    I solved the problem as follows. I replaced the text:
    <button text="Cancel" ctrl:event="cancel" />
    with:
    <button text="Cancel">
    <primaryClientAction>
    <fireAction event="cancel" formSubmitted="false"/>
    </primaryClientAction>
    </button>
    This seems to work ok.
    I noticed there is a primaryClientAction attribute for <button>. Is there an EL expression I can use to replace the text above?
    Thanks, Steve

  • 10g UIX globalHeader style?

    In the UIX 2.1.7 Demo Bundle - Components Guide and in Oracle Portal, the globalHeader bar has a scoop out of it on the right. When we create globalHeaders with JDev 10g preview, they are just a solid line all the way across. Is there a way to choose these styles?

    Is there a way to render the globalHeader bar the same thickness whether there are any links in it or not? I have a page where some tabs have subsections and some don't. I've tried providing the 'text' attribute with a string that's just some spaces, but I guess they're getting stripped.
    Thanks!

  • 10g UIX Where to put ResourceBundle?

    I'm looking at putting all my Strings in a ResourceBundle for my UIX pages. I've read the documentation for Internationalization, but I think the piece that I'm missing is where to put the properties file. Say I've got a file called 'strings.properties', and my provider looks like this:
    <provider>
         <data name="bundle" >
              <bundle class="strings.properties" />
         </data>
    </provider>Then where in the JDev project do I need to have the file in order for it to get deployed properly and found by the UIX framework at runtime?
    Also, just to be sure I'm not going crazy, I know that the documentation and even the bundle tag say to specify a Class, and I just noticed that the ResourceBundle javadoc also says that the 'baseName' parameter to the static 'getBundle' method should be a 'fully qualified class name', but I've always just given it a filename of a properties file before. So I'm assuming that the 'class' parameter to the bundle tag can be a properties filename -- is this correct?

    Whoops! Of course, the argument to the bundle class attribute should just be 'strings'.
    After some experimentation, I discovered that if I put the properties file at the root of the 'src' directory in my JDev project, then it gets transferred to the 'classes' output directory when I compile. This works for running my project in the Embedded OC4J. I haven't tried deploying it to any other app server yet. Is this the right place?

  • Integration of JDeveloper 10G (UIX) with Crystal Reports 10

    My problem here is a conflict between the Oracle xml parser library (xmlparserv2.jar ) and the Crystal Reports 10 xml parser library (xmlParserAPIs.jar).
    The Oracle library is included in my project library list by default. If I add in the Crystal Reports jar file, this seems to cover up the Oracle library and my application failes to launch with a missing class file.
    (uix: java.lang.ClassCastException: oracle.xml.jaxp.JXSAXParserFactory)
    If I leave out the Crystal Reports library, then my JSP that launches the report I want to see fails on a missing class file (document.class).
    Is there a way for these libraries to co-exist in a UIX application?
    I did manage to get my integration to work in a non-UIX test using the Oracle HR sample database.
    Thanks for taking a look at this.
    Best Regards, Steve

    To answer my own question. I did not include the Crystal Reports xml parser library as part of my uix project. This allows the uix application to launch and work successfully.
    I then added all of the Crystal Reports libraries to the oc4j preferences under current workspace.
    This seems to somehow get around the conflict and supplies the needed libraries for the methods invoked in my jsp page.
    Since this jsp page is getting called from a UIX page, I have no idea how this change makes these libraries available without a conflict. If someone can explain it, I would appreciate it.
    Thanks very much, Steve

  • Jdev 10g UIX: invoking an appmodule method inline

    Hello,
    I'm using ADF UIX in Jdev10g. I have a UIX table bound to a ViewObject, which works great. What I'm now trying to do is to create an extra column on this table which displays the result of a method call (from the AppModule). This method call takes some column data from the current row as parameters. (This fn can't be implemented in SQL as calculated col in the SQL query).
    I know how to call this method via an event (from a FireAction), but this needs to be called every time a new row is rendered in the table.
    So, is there a way to dynamically call an event while UIX renders the page, or is there a way to directly call this method?
    My event hander looks something like:
    <event name="calcit" source="*">
    <invoke method="doIt" instance="${bindings.Calc}" type="..JUCtrlActionBinding">
    <parameters>
    <parameter .... value="${uix.current.Field1}"/>
    </parameters>
    </invoke>
    </event>
    Thanks for any help,
    Matt

    You may implement a transient attribute on the ViewObject that in it's getter performs the equivalent logic of calculating the extra attribute value based on that row's data.
    Then simply bind to that attribute in a UI table binding and you should get the equivalent of 'calling a method to calculate this value'.
    Note that if this value changes based on changes in dependent attributes, you also need to send appropriate change notifications for the transient attribute so that it's value is refreshed for the clients. See ADFToyStore sample on OTN on how to send change notifications.

  • 10g UIX / Struts / BC4J

    We are searching for best practices for developping secure web applications using uix / struts / bc4j that demonstrates different login scenario and connection pooling with the database. Did somebody find something in documentation ? or a great book that expose this problematic ?

    Hi, I am also looking for a document or procedure like that.
    Did you get any help, or found any way to do that ?
    Can you share with me ?
    I will appreciate if you could have some time to share the ideas ?

  • 10g UIX includes

    I'm having trouble with the include tag. I thought I could include any XML that represented exactly one root UINode and its children. I've got a main page that has subsections, each of which is to manage its own layout, and within that layout I want to include the same kind of content. I've tried to boil my approach down to a simple example. The files below represent 'Top.uix', 'Middle.uix', and 'Bottom.uix' respectively. In my actual code, the equivalents of the Middle and Bottom files both include <tableLayout> nodes, but here I have the Bottom with just a <cellFormat> for simplicity. With the code below, I get 'Unable to resolve include' already at the Top level. In my actual code, I get this at the equivalent of the Middle include, but if I paste the <tableLayout> from the 'Bottom' file directly into the 'Middle' file, everything works fine. What is it that I'm doing wrong?
    Top.uix
    <?xml version="1.0" encoding="windows-1252"?>
    <page xmlns="http://xmlns.oracle.com/uix/controller"
          xmlns:ui="http://xmlns.oracle.com/uix/ui"
          xmlns:ctrl="http://xmlns.oracle.com/uix/controller"
          xmlns:html="http://www.w3.org/TR/REC-html40"
          expressionLanguage="el">
        <content>
            <dataScope xmlns="http://xmlns.oracle.com/uix/ui">
                <provider>
                    <data name="listOfLists" >
                   <inline>
                        <one text="one one" /><one text="one two" /><one text="one three" />
                        <two text="two one" /><two text="two two" /><two text="two three" />
                   </inline>
              </data>
                </provider>
                <contents>
                    <document>
                        <contents>
                            <body>
                                <contents>
                        <include node="${ ctrl:parsePage( uix, 'Middle' ) } "/>
                                </contents>
                            </body>
                        </contents>
                    </document>
                </contents>
            </dataScope>
        </content>
    </page>Middle.uix
    <?xml version="1.0" encoding="windows-1252"?>
    <tableLayout xmlns="http://xmlns.oracle.com/uix/ui"
                 xmlns:ctrl="http://xmlns.oracle.com/uix/controller" width="100%"
                 height="100%">
        <contents childData="${ listOfLists }">
            <rowLayout>
                <contents childData="${ uix.current }">
                    <include node="${ ctrl:parsePage( uix, 'Bottom' ) }"/>
                </contents>
            </rowLayout>
        </contents>
    </tableLayout>Bottom.uix
    <?xml version="1.0" encoding="windows-1252"?>
    <cellFormat xmlns="http://xmlns.oracle.com/uix/ui" width="100%" height="100%">
         <contents>
              <text text="${ uix.current }" />
         </contents>
    </cellFormat>

    The files sent shouldn't work, however the following "should" work and doesn't and a bug has been filed.
    Thanks,
    Gabrielle
    top.uix
    <?xml version="1.0" encoding="windows-1252"?>
    <page xmlns="http://xmlns.oracle.com/uix/controller"
    xmlns:ui="http://xmlns.oracle.com/uix/ui"
    xmlns:ctrl="http://xmlns.oracle.com/uix/controller"
    xmlns:html="http://www.w3.org/TR/REC-html40" expressionLanguage="el">
    <content>
    <dataScope xmlns="http://xmlns.oracle.com/uix/ui">
    <provider>
    <data name="listOfLists">
    <inline>
    <one text="one one"/>
    <one text="one two"/>
    <one text="one three"/>
    <two text="two one"/>
    <two text="two two"/>
    <two text="two three"/>
    </inline>
    </data>
    </provider>
    <contents>
    <document>
    <contents>
    <body>
    <contents>
    <tableLayout xmlns="http://xmlns.oracle.com/uix/ui"
    xmlns:ctrl="http://xmlns.oracle.com/uix/controller"
    width="100%" height="100%">
    <contents >
    <rowLayout >
    <contents childData="${ listOfLists.one }">
    <${ ctrl:parsePage( uix, 'bottom' ) }"/>
    </contents>
    </rowLayout>
    <rowLayout >
    <contents childData="${ listOfLists.two }">
    <cellFormat xmlns="http://xmlns.oracle.com/uix/ui"
    >
    <contents>
    <text text="${ uix.current.text }"/>
    </contents>
    </cellFormat>
    </contents>
    </rowLayout>
    </contents>
    </tableLayout>
    </contents>
    </body>
    </contents>
    </document>
    </contents>
    </dataScope>
    </content>
    </page>
    bottom.uix
    <?xml version="1.0" encoding="windows-1252"?>
    <page xmlns="http://xmlns.oracle.com/uix/ui"
    xmlns:ui="http://xmlns.oracle.com/uix/ui"
    xmlns:ctrl="http://xmlns.oracle.com/uix/controller"
    xmlns:html="http://www.w3.org/TR/REC-html40" expressionLanguage="el">
    <content>
    <cellFormat>
    <contents>
    <text text="${'Ftesting...'} ${ uix.current.text }"/>
    </contents>
    </cellFormat>
    </content>
    </page>

  • Jdev 9.0.3.3 and uix 2.2

    I'm working on a project where Jdeveloper 9.0.3.3 is used. Is it possible to use the 10g UIX and still use the old bussiness components? And if not not, what is the best way to migrate? Some hints would be highly appreciated.
    greetings, jan

    The JDeveloper 10g online help has a section about upgrading from previous releases:
    http://helponline.oracle.com/jdeveloper/help/state/content/destination.0%7E10%7E/navSetId.jdeveloper/oldNavId.0/navId.0/oldNavSetId.jdeveloper/

  • Date Field has junk in 10g

    10g, UIX, UIX Controller, BC4J.
    I pulled a table object linked to a table straight into the page, all default code. My field has the date "Jan 1, 2004" in it but in the UIX page it displays as "26464861-20-15" -- any ideas why?

    If you run your page with hotspot, not ojvm (see Project Properties..Runner to change this), does it go away? I remember a similar problem that was ojvm-specific.
    -brian

  • How to change the required attribute of a field

    Hi,
    I'm using jdeveloper 10g, uix and jHeadstart to generate my application.
    In my form, I have some attributes that are required and if I change a checkbox, some of these fields that was required, must now be not required.
    How can I do this?
    Any ideas?
    Thanks!
    Martin

    Sounds like a custom validation, but you could also use a partial rendering and EL to achieve this. Lets say you could set the 'required' property of the field based on the EL expression calculating the value in the other field

  • MessageTextInput  allows more then MaximumLength

    Hi,
    Our Uix file has a messageTextInput field, MaximumLength attribute is 250.
    When text is entered using key board it allows only 250 characters but we can paste(cut/paste) more then 250 characters in the messageTextInput. After pressing enter or TAB it truncates the field and only 250 characters are displayed.
    How to restrict users to paste less then 250 characters?
    The messageTextInput field is �.
    <bc4j:messageTextInput name="ShortDesc" prompt=""
    attrName="ShortDesc" columns="50"
    maximumLength="250" rows="5">
    <boundAttribute name="readOnly">
    <dataObject select="readOnly" source="ui:rootAttr"/>
    </boundAttribute>
    </bc4j:messageTextInput>

    Using the UIX that ships with JDeveloper 10G (UIX 2.2), I was unable to paste more characters than a regular <messageTextInput> allows. I used IE 6.0 as my browser.
    This behavior may be affected by the browser and UIX version you use.
    Ryan Pollock
    UIX Team

  • How to use custom defined tags in uix in jdevloper 10g production

    can any one give me sample application for how to work with custom defined tags in uix with jedevloper 10g production
    thanks Venkat

    Hi Venkat,
    Maybe the reason for no one answering is because of lack of information in your post? What are you trying to do? Are you using JSP or UIX XML? Have you checked the online jdeveloper documentation? Have you checked the doc available in the JDeveloper release? Before we have more information we can't help you. Sorry
    Thanks,
    Jonas
    JDev Team

  • UIX table tag's attribute VALUE is missing in jdev 10g production

    In JDeveloper 10g preview, I handled my table's navigation manually and need to set the table's tag attribute VALUE in order to keep the record range.
    However, when i convert my project to JDeveloper 10g Production, eventhought the page is still working fine, but in the design windows will show that the uix page is in invalid state and I found that the attribute VALUE is no more supported.
    Could anyone please help me and let me know how do i set back my record range? Thanks!

    It turns out that you're running into a bug that will be fixed in the soon to be released version of JDev 10g. The good news is that it's a design time bug, so your pages will still work at runtime. You can even fix the bug yourself if you want. In JDEV_HOME\jlib there is uix2-schemas.zip. Inside of that is ui/table.xsd.
    Add the below attribute definition inside of the complex type for the table, and you should be all set.
    <attribute name="value" type="ui:unsignedIntExpressionType" default="1"/>
    Hope this helps,
    Ryan Pollock
    UIX Team

Maybe you are looking for

  • HT204053 how do i move page and numbers documents from one icloud login to another?

    how do i move page and numbers documents from one icloud login to another? I had to change my email address whcih meant new apple login. I have a number of docs in iwork/pages and iwork/numbers.  How do I transfer them to my new login?

  • Internal Error message - Need help please

    I have the administration aspect of my site done. It tests wonderfully on my testing server. Once I uploaded it to the web-server I get this error: Error: Internal error. Developer Details: tNG_update.getLocalRecordset: Error message: No database sel

  • How to hide not all but a specific database on a SQL Server 2008 R2 instance?

    Hello everyone,       I need help from all the SQL Server database security experts out there. Any solution/help or work-around will be really appreciated. Here is the scenario; our client is using our application which is a windows forms application

  • Duplicates in iphoto 11 after Duplicate Annihilator used

    I have photos showing up as duplicate, triplicate and quads in Recent 'Last 18 Months' of iphoto after using duplicate annihilator successfully in the main library.  How to I clean that?

  • Import doesn't see new files

    I am saving a file from Elements 9 into a folder that is managed by LR3.  Usually when i save to this folder I go into LR3 and do a sync folder and the file shows up.  All of a sudden this has gotten very squirrely.  sometimes it works and sometimes