Classpath issues inside custom component

Hi Forum,
we have created our own component for a special database task.
Within the the component implementation we have used XMLBeans 2.4.
Now we run into a classloader issue because LC already contains a very old version of XML Beans (from 2004).
Is there a way to have our own classloader that uses the new XML Beans version instead of the already existing one?
We have planned to migrate several other components to be available inside Workbench and I'm afraid we will run into the same problem several times.
Thank and best regards,
Timo

Timo,
If you would like to override the classpath then I would suggest you to put your version of the XMLBeans jar file while making a component jar file and override the classpath in your service java class.
See if that help.
Thanks
YogLC
component.xml file defines service impl class as below
<services>
<service name="MY_Service">
<!-- service implementation class definition -->
<implementation-class>com.company.component.MYServiceImpl</implementation-class>
package com.company.componen;
public class MYServiceImpl{
     public void myServiemethod(){
          // first line in your service method
          ClassLoader originalClassloader = Thread.currentThread().getContextClassLoader();
          //--- your code here ---
          // finally make sureset the classloader back
          if (originalClassloader != null) {
               Thread.currentThread().setContextClassLoader(originalClassloader);

Similar Messages

  • Entity not saved inside custom component embedded in standard view

    Hi ,
    I have embedded a custom component inside a standard component. The custom component has two views. The first view is assigned to the item overview page and the second view is assigned to the main window of the standard component.
    I have enhanced the BOL model (using EEWB) and created a new entity with z structure.
    There is a button in the first view which is used to navigate to the second view. The custom fields are filled up in the second view.
    Even though I am able to fill up the custom fields in the second view, these fields are not getting saved when I save the main transaction.
    However, If I fill up the fields from the first view ( ie the overview page ) , these are getting saved.
    Please let me know if you have any solution. This would be very helpful.
    Regards,
    Jaydip

    Hi Anubhav,
       I have created the Custom Component(zso_disclaimer)  with the BOL Object BTAdminH. I have used few fields which is available in the BTAdminH(ZZDISC_WAR_ID,ZZACC_EX_CONT,ZZACCEPT_WAR and ZZFLD00004G). I have used this custom component(zso_disclaimer) in the standard conponent BT115H_SLSO as Assignment block. when i enter the values in the fields and press enter the values get disappears. So i am not able to proceed further. Can anyone help me to solve this problem.
    Thanks & Regards,
    Ashok.

  • Mxml elements inside custom component

    Hi all, i'm a flex newbie but i know AS3, i've encountered a problem during the development of a custom component: my custom component is a panel with some buttons, but i want that anyone can insert mxml elements (especially form elements) inside this panel in this way:
    ActionScript Code:
    <custom:myDialogBox >
       <mx:Form ...>
            <mx:TextInput ...>
    </custom:myDialogBox>
    So i created myDialogBox component:
    ActionScript Code:
    <mx:Panel xmlns:mx="http://www.adobe.com/2006/mxml">
        <mx:Metadata>
                 [DefaultProperty("hboxFirstLine")]
            </mx:Metadata>
        <mx:Script>
            <![CDATA[
                import mx.containers.HBox;
                import mx.containers.Panel;
                import mx.controls.Button;
                import mx.controls.Text;
                import mx.core.UIComponent;
            ]]>
        </mx:Script>
        <mx:HBox id="hboxFirstLine" width="100%">
        </mx:HBox>
        <mx:HBox id="hboxSecondLine" width="100%" horizontalAlign="center">
                    <mx:Button label="Conferma" />
            <mx:Button label="Annulla" />
        </mx:HBox>
        <mx:ControlBar id="controllBar" horizontalAlign="right">       
            <mx:Label id="alertFooter" text="sFooter" />
            </mx:ControlBar>
    </mx:Panel>
    I expect that the form goes inside hboxFirstLine... but instead i get this error:
    Error: In initializer for 'hboxFirstLine': type mx.controls.Form is not assignable to target type mx.containers.HBox. 
    Any idea?

    hboxFirstLine has to be a Form, not an HBox.
    Also, if that is all the code of your component, you don't need import statements.
    HTH.

  • Issue in custom component in custom timecard layout-OTL

    Hi,
    I have created a custom layout based on seeded layout.Added new custom component Dept reference field to the sedded layout.
    When trying to save the timecard template including dept reference field completed.The saved timecard template is dropping Dept reference filed.therefore,it is also dropped from the exported/downloaded .csv file.
    code details:
    BEGIN HXC_LAYOUT_COMPONENTS
    "US Projects Alternate Timecard Layout-Dep field"
    OWNER = "CUSTOM"
    SEQUENCE = "226"
    COMPONENT_DEFINITION = "TEXT_FIELD"
    RENDER_TYPE = "WEB"
    PARENT_COMPONENT="US Projects Alternate Timecard Layout-Day Scope Building blocks for worker timecard matrix"
    REGION_CODE="HXC_CUI_TIMECARD"
    REGION_CODE_APP_SHORT_NAME="HXC"
    ATTRIBUTE_CODE="DEPT_REF"
    ATTRIBUTE_CODE_APP_SHORT_NAME="HXC"
    LAST_UPDATE_DATE = "2004/05/23"
    BEGIN HXC_LAYOUT_COMP_QUALIFIERS
    "US Projects Alternate Timecard Layout-Dep field"
    OWNER = "CUSTOM"
    QUALIFIER_ATTRIBUTE_CATEGORY = "TEXT_FIELD"
    QUALIFIER_ATTRIBUTE1 = "N"
    QUALIFIER_ATTRIBUTE2 = "N"
    QUALIFIER_ATTRIBUTE3 = "5"
    QUALIFIER_ATTRIBUTE4 = "1"
    QUALIFIER_ATTRIBUTE5 = "30"
    QUALIFIER_ATTRIBUTE18 = "EXCLUDE"
    QUALIFIER_ATTRIBUTE19 = "|TEMPLATE|CSV|"
    QUALIFIER_ATTRIBUTE20 = "N"
    QUALIFIER_ATTRIBUTE21 = "Y"
    QUALIFIER_ATTRIBUTE22 = "L"
    QUALIFIER_ATTRIBUTE25 = "FLEX"
    QUALIFIER_ATTRIBUTE26 = "HRP"
    QUALIFIER_ATTRIBUTE27 = "Attribute3"
    LAST_UPDATE_DATE = "2004/05/23"
    END HXC_LAYOUT_COMP_QUALIFIERS
    END HXC_LAYOUT_COMPONENTS
    Please help me in this regard....
    Thanks
    Sri...

    Did you update the export layout too and added that to preferences?
    --Shiv                                                                                                                                                                                   

  • Add jsf2 Custom Component from 3rdparty .jar file

    Hi, everyone. I've got 3rdparty custom component as jar library. It's laid in my classpath.
    But I can't use it in my custom.taglib.xml.
    here is taglib:
    <?xml version="1.0" encoding="UTF-8"?>
    <facelet-taglib
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd"
    version="2.0">
    <namespace>http://custom/jsf/html</namespace>
    <tag>
    <tag-name>inputFile</tag-name>
    <component>
    <component-type>HtmlInputFile</component-type>
    </component>
    </tag>
    </facelet-taglib>
    when opening page:
    Expression Error: Named Object: HtmlInputFile not found.
    HtmlInputFile in jar file that laid in project's classpath.
    Please give a hint.

    Hi!
    I found out, that editing classpath of the custom component through the Component Wizard does not take effect immediatelly. You have to reinstall your component after such changes.
    Let me know if it works.
    Jakub
    Edited by: j.ciszek on 2008-11-18 10:03
    Edited by: j.ciszek on 2008-11-18 10:03

  • Custom component issue

    Custom component issue
    According to customer requirements, we want to get such an effect in the development of custom components:
    Drag and drop custom components to the Flex builder work area, it can generate more than the default properties, not just generate "x", "y" attribute.
    【Details are as follows】
    We design a custom panel "CustomPanel.mxml" in the project development, then drag it into the workspace in the Flex builder development environment.
    View the source code found that it can only generate "x", "y" attribute in default. That is:
    <ns2:CustomPanel x="105" y="74">
    </ns2:CustomPanel>
    【Issue】
    How can we do that when drag the 'custom component' into Flex builder workspace,  we can generate "layout" attribute in addition to "x", "y" attributes?
    That is:
    <ns2:CustomPanel x="105" y="74" layout="absolute">
    </ns2:CustomPanel>
    【Note】
    The following code will be generated when the "panel component comes with Flex builder environment" is dragged into workspace.
    <mx:Panel x="121" y="134" width="250" height="200" layout="absolute">
    </mx:Panel>
    How it is done?

    I am sorry to bother you again.
    I have tried the web site content, but it can't helped!
    There is a custom component called 'Basket', source code is as follows:
    package picnic
    import mx.containers.Panel;
    public class Basket extends Panel
      public function Basket()
       super();
       layout = "vertical";
       setStyle("backgroundColor", 0x00FFFF);
       setStyle("horizontalAlign", "center");
    Here it is worked when the attribute "layout" is set to "vertical", but it isn't when "layout" is set to "absolute" !
    When the property is set to "absolute" phenomenon is as follows:
    Drag component such as 'Button' into "picnic component". It will automatically go to the top left corner position,
    just like the 'layout-attribute' is not set.
    Why is there such a phenomenon?

  • Stellent  UCM :: calling javascript inside the custom component

    Hi Experts,
    I am new to the stellent content server (Oracle content server). Currently we are working on the project which needs to be integrated with the content server for the content selection. I did some prototype to pass back the selection value to the parent window using the javascript window.opener.<parent java script> from a dummy page. Now i am customizing the content server custom component. Unfortunately i cannot be able to call back the parent javascript from the custom component. Seems the window.opener is null.
    I have tried with windowUtils.getOpener() method which is available in the content server weblayout. Still i could not be able to call back.
    Guys i am looking forward your idea ? If anyone knows the way to resolve this issue or any other best suitable way to handle this please ping me back.
    Regards Thiva

    Hi Experts,
    I am new to the stellent content server (Oracle content server). Currently we are working on the project which needs to be integrated with the content server for the content selection. I did some prototype to pass back the selection value to the parent window using the javascript window.opener.<parent java script> from a dummy page. Now i am customizing the content server custom component. Unfortunately i cannot be able to call back the parent javascript from the custom component. Seems the window.opener is null.
    I have tried with windowUtils.getOpener() method which is available in the content server weblayout. Still i could not be able to call back.
    Guys i am looking forward your idea ? If anyone knows the way to resolve this issue or any other best suitable way to handle this please ping me back.
    Regards Thiva

  • Creating a custom component is causing a strange scoping issue

    I am a fairly new user to Flash and Actionscript, but I have
    a fair amount of experience working with C and Java. I'm currently
    working with Actionscript 2 in Macromedia Studio 8. I was trying to
    create a new component for a project I am working on, and I
    followed the tutorial in the help and all testing works while I am
    in context of the flash document where I export the component from.
    However, I try testing my component in a new blank document and I
    get some strange behavior.
    I am able to create a component on the stage, and adjust the
    properties perfectly fine. However, when I test the file, the
    variables for colors go out of scope. That is, the adjustments I
    made to the component through the parameters panel, and saw updated
    on the stage aren't demonstrated at runtime. The Number variable I
    used however is preserved. I did some traces, and it appears that
    this is happening because at runtime in the new blank document, the
    variables in the onEnterFrame method go out of scope, where they
    weren't before.
    It seems really strange to me that I should be able to edit
    the color on stage but have it revert while it is running. My
    intuition says that if it wasn't going to work in the new document,
    that it shouldn't work in either case.
    Anyway, here is the code for the .as file, I hope I'm just
    doing something stupid.

    There seems to be a little confusion here. Think of it this way:
    A basic UIComponent by itself is not visible; you can add something you can see to it to make a visual custom component. For example, a ComboBox component is a UIComponent with a ComboBox added to it.
    The UIComponent is the lightest weight component available from which you can create other components. I use it as the base for custom components that the user cannot see, like a data manager.
    HTH,
    Carlos

  • Jsf custom component issue

    I am creating a custom component and extending the renderer like the following. My custon component is similar to h:messages but inaddition to that it has hyperlink(clicking error focuses individual input box). I have extended the renderer as follows, every thing works fine but the problem is the form gets null or looses its all value when error occured, however the component works fine. I dont know why is that hapening.
    Any help would be highly appreciated.
    public class CustomErrorRenderer extends Renderer {
    @Override
    public void encodeEnd(FacesContext context,
    UIComponent component) throws IOException {
    ResponseWriter writer = context.getResponseWriter();
    writer.startElement("div", component);
    writer.writeAttribute("id", component.getClientId(context), "id");
    writer.writeAttribute("style", "color: red", null);
    writer.startElement("ul", null);
    Iterator<String> clientIds = context.getClientIdsWithMessages();
    while (clientIds.hasNext()) {
    String clientId = clientIds.next();
    Iterator<FacesMessage> messages = context.getMessages(clientId);
    if (!messages.hasNext()) { continue; }
    String javaScript = "var field = document.getElementById('"
    +clientId+ "');" +"if(field == null) return false;"+
    "field.focus(); return false;";
    writer.startElement("li", null);
    writer.startElement("a", null);
    writer.writeAttribute("onclick", javaScript, null);
    writer.writeAttribute("href", "#", null);
    while (messages.hasNext()) {
    writer.writeText(messages.next().getSummary(), null);
    writer.endElement("a");
    writer.endElement("li");
    writer.endElement("ul");
    writer.endElement("div");
    }

    The problem is, the form values that are tied to input boxes are null once validation error occurs.
    I think when I am overriding that encodeEnd, this is causing the problem for the form values getting null.
    IF I want to see, what are the submitted values then isn't this the way, I am getting null here also:
              FacesContext context = FacesContext.getCurrentInstance();     
                  UIViewRoot viewRoot= context.getViewRoot();
                 HtmlInputText input = (HtmlInputText)viewRoot.findComponent("formId:InputboxId");
              System.out.println("input  sub value" + input.getSubmittedValue());

  • How to use flex 4 component inside Flex 3 custom component

    <?xml version="1.0" encoding="utf-8"?>
    <mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml"   >
    // I would like to use the namespaces below so that I can use some of the Flex 4 components in this mx:VBox component.
    // Note that this is a custom component and not the application file.
    xmlns="http://ns.adobe.com/mxml/2009"
        xmlns:fx="library://ns.adobe.com/flex/spark"
        xmlns:mx="library://ns.adobe.com/flex/halo"
    </mx:VBox>
    Thanks.

    Alex, I was looking forward to your reply to one of my posts that you answered a couple of days ago. It has not been resolved, even though it said "answered," here is the post:
    http://forums.adobe.com/thread/445779?tstart=0
    Regarding this post, I am getting some errors with the code I posted above; give it a go and you will see.
    Thanks.

  • How a custom component is called when we install a custom component in UCM.

    How a custom component is called when we install a custom component in UCM.
    On what event the component services will be activated and called.
    Suppose i create a Custom service name MULTIPLECHECKIN then this service will be called on what event and where it will be defined to call.

    Saurabh,
    the code is packed in the component (see component\Security Filter\java\Security Filter\ModifyAttributesFilter.java - the first Security Filter is the component name, the other Security Filter is the Java package name).
    What is important:
    - your class must implement the FilterImplementor interface (you will need UCM standard classes - server.zip in your classpath) and its doFilter method
    How the filter is executed?
    - actually, in this case you don't need any new service - you can use the standard 'hook', which is provided by standard checkin services
    - in Component Wizard create a new component, add your compiled class to it (make sure you follow the rules not to end up in classpath issues)
    - in Component Wizard click the 'Java Code' tab. Here you can add a Custom filter called validateCheckinData, which is executed by standard checkin services. If you parametrize the filter to call your class created above, you are done.
    'Working with Content Components' manual (e.g. here: http://download.oracle.com/docs/cd/E10316_01/cs/cs_doc_10/documentation/developer/using_components_10en.pdf) can give you a basic picture. A better resource is Bex Huff's book - I would recommend you to get it, because it has a step-by-step HelloWorld example which can guide you through Component Wizard. I could also send you my own component (send me an email at [email protected]) which implements a filter for user quotas, so you just need to "replace classes".
    As for the other half of your task, searching for the file in the database server will work only if you use database as your storage (ie. install and configure File Store Provider component accordingly). Of course, you could do a search for file in this case - just consider that you will be comparing two BLOBs rather than two relatively short check-sums (most likely strings or arrays of bytes). Besides, it will not work if you use filesystem as your storage.
    Jiri

  • Scroll bar, buttons and a Custom Component - help

    Thanks to another forum I was able to create a scroll panel and add a scroll bar to it.  That works fine.  Inside the scroll panel I have thumbnails of the product that I'm highlighting.  I want to be able to click on the thumbnail and have a full size photo of the product come up in the window next to the scroll panel.  I created a custom component that has a stage showing each full size product individually.  This worked fine when I simply had buttons and no scroll bar.  I could convert the thumbnail to a button and then add interaction so that it would go to the proper state of the custom component.  Where I'm having problems is now that I've imbedded the buttons in a scroll panel I'm no longer given the custom component as an option to pick from.  I can add interaction, but it only gives me the option of picking one of the pages, and not a component.
    I've attached a screen grab to help show what I'm describing.
    Any ideas?
    Doug

    Doug, thanks for asking this question.
    Hi ADAM...
    It seems that a lot of us are asking the same question: Scrollbar Navigation-Make Actionable
    (I created a low-fidelity proof-of-concept to test—using a datalist as you suggested. See link in my posting).
    I have reviewed the video you refer to here, but you example still does not allow for individual items in the datalist (scrollbar) to be assigned individual actionable events.
    Can you expain your thinking in Option 1, as a workaround? Do you have any other suggestions?
    BOTTOM LINE
    We are all looking to do the same thing... something we are going to see A LOT MORE of after Uncle Steve's TABLET presentation next week:
    A scrolling menu, with selected items in the menu causing "navigation" to a certain point in a scroll panel. (imitating the flick or slide effect of iPhone).
    Suggestion: Can you add a field to thedatalist so that when the "repeated item" (in edit mode) is configuredto do an action (i.e., On-Click, Transition to State), we can then assign the state  you'd like for each item in thetable itself?
    Now the issue is making it change the "State" within another component (i.e. scrolling panel). Can that be done?
    Thanks,
    - Rick

  • Change base view state from a custom component

    I'm pretty new to flex and I'm having a small issue in change the view state from a component.
    My Application have 2 custom components called userlogin and main menu. In the main application page I have userlogin component in one state and the main menu component in another. I'm trying to change the state if the login in successful from user login to main menu. I have the following function written inside the login component.
    private function IsUserLoggedIn(evt:ResultEvent):void
                    if (evt.result.islogin.toString() == "true")
                        currentState = "MainMenu";
                    else
                        Alert.show("Login failed, please try again.", "Login Failed");
    This code worked when I had all the controls in the main page. But then I created components and included them in to components and now when the login is success, its giving the following error.
    ArgumentError: Undefined state 'MainMenu'.
        at mx.core::UIComponent/getState()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UI Component.as:9908]
        at mx.core::UIComponent/findCommonBaseState()[E:\dev\4.0.0\frameworks\projects\framework\src \mx\core\UIComponent.as:9928]
        at mx.core::UIComponent/commitCurrentState()[E:\dev\4.0.0\frameworks\projects\framework\src\ mx\core\UIComponent.as:9750]
        at mx.core::UIComponent/setCurrentState()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\ core\UIComponent.as:9701]
        at mx.core::UIComponent/set currentState()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:6087 ]
        at components::UserLoginForm/__btnSubmit_click()[C:\Projects\WarrantyAutomation\src\componen ts\UserLoginForm.mxml:60]
    I'm sure this has something to do with accessing the states from a custom component, but I do not know how to change the state to the main menu. Please help me with this. Any help is greatly appriciated.

    Hi dasun1981,
    private function IsUserLoggedIn(evt:ResultEvent):void
                    if (evt.result.islogin.toString() == "true")
                        currentState = "MainMenu";
                    else
                        Alert.show("Login failed, please try again.", "Login Failed");
    If I am right the above function is in your userlogin component and the two components "userlogincomponent" and "maincomponent" are in main application file and the states were also defined in main application file.
    But in the function above the currentState refers to the state of the userlogin component and not the main application ...but the states are defined in main application file...that's the reason why the exception was thrown...
    Instead you replace the line in the above function with the below line:
    Application.application.currentState = "MainMenu";
    Please mark it as answer if it helped you.
    Thanks,
    Bhasker Chari

  • LCES server caches the custom component classes

    I found that sometime during the (patching) deploy/undeploy install/uninstall phase of custom component LCES start 'caching the custom component or its helper classes' and any changes made to them does not get reflected.
    But after the server restarted every thing work as expected.
    i.e. If server is restarted the latest changes to component deployed previously to server restart get reflected.
    Pl. help.
    Any one had simillar issue?
    Thanks
    Yog

    Hi Paul,
    I have tried both of these frequently (many times)
    1) Component > STOP > PATCH > START
    2) Component > STOP > UNINSTALL > INSTALL > START
    but no effect after some point when server keeps the cache. (it works some time but not all the time I thought 2nd approach should always work)
    But if I restart the server it seems to show the expected result always.
    Does any Adobe teche knows how to gaurrentee 100% that chnges will reflect after new version of the component is installed without restart of the server.
    Also I seen some inside the service impl at the begining of the service method code store the classloader:
    ClassLoader originalClassloader = Thread.currentThread().getContextClassLoader();
    and restore it at the end of service method:
    if (originalClassloader != null) {
    Thread.currentThread().setContextClassLoader(originalClassloader);
    How does this affect?
    and also if one component depends on another how does that affect?
    Thanks
    Yog

  • Custom Component with xfaForm input

    Hi. I'm trying to create a custom component that takes as one of its inputs either an xfaForm, a Document containing XML, or an xml variable. So my service method has a variable called data which is just an Object. When I pass in the xfaForm I get a class cast exception when casting the object to the XFARepositoryFormInstance class. I even print out the object and it shows me that its an XFARepositoryFormInstance. Do I have to do something special to work with an xfaForm inside the component? It seems like some sort of class loading issue or something.
    I'm stuck. Anybody have thoughts?
    Thanks,
    Bryan

    I'm unstuck :)  The key to getting this to work is to import the packages you are going to use in your component.xml.
    So, for me..I had to add the following:
            com.adobe.idp.workflow.dsc.type
            com.adobe.idp.taskmanager.form
            com.adobe.idp.taskmanager.form.impl
            com.adobe.idp.taskmanager.form.impl.xfa

Maybe you are looking for

  • How to update a JPanel in a JApplet

    Hi All, I'm trying to make my own sudoku JApplet. JApplet uses a BorderLayout() adding the sudoku Puzzle in the center, JButtons for New Games in a JPanel in the west and a GridLayout(3,3) to select the number to put in the puzzle in the east. The pr

  • Nokia N96 - A long review!

    The Nokia N96 Long Review by Jupstejuho v. 1 (Please notice that this is the first published version so I will be making this much longer a bit later if you just want me to do so) In this case I have only reviewed the phone's main software things, no

  • How do I go directly from one frame to another particular frame which is far away in the time line? (e.g the two frames are separated by 100 frames)

    How do I go directly from one frame to another particular frame which is far away in the time line? (e.g the two frames are separated by 100 frames). I mean, is it possible to take the playhead from one frame to another frame directly which is 100 fr

  • Error while creating webdynpro component

    while checking the  webdynpro application there was an error getting displayed as " Accessibility description is not set for element "TABLE_EMPID"."

  • ITunes does not "populate" in ilife

    When I attempt to create a slideshow with music in iphoto, my itunes music does not show up in the "music" area.  itunes is open, and I have created a playlist specific to this slideshow.  I can chose the themes and the settings, but the itunes windo