Root Best Practices

With OEL 5.5, what's the best practice for setting up the root filesystem "/"? I.e. I'm used to AIX where we have a root volume group and allocate storage as necessary to the different file systems using AIX's LVM. I have several linux machines that have both /boot and root on ext3 non-lvm'd filesystems. If I want to convert root, "/", how should I go about this? i.e. any guides out there I can follow? Also, what are the upgrade implications with using the linux LVM? If you could point me to some docs discussing these questions, that would be great.
TIA,
Pete's

You can have / (root) under LVM, but it does not make much sense and will complicate system recovery, upgrade, etc. You don't want to have /boot under LVM since you need to start the system first to have LVM driver support. /boot is usually a small partition, i.e. 100 MB, just large enough to hold a couple of Linux kernels, the initrd boot image and bootloader files. It should also be a filesystem that the bootloader supports, e.g. ext3.
Google will find many examples and documents out there explaining how to convert root to LVM, e.g.:
http://tldp.org/HOWTO/LVM-HOWTO/upgraderoottolvm.html
http://www.linuxweblog.com/blogs/sandip/20071007/convert-root-filesystem-lvm
Edited by: Dude on Dec 14, 2010 8:03 AM

Similar Messages

  • Best Practice to use a single root Application Module?

    I was reading in another thread that it may be a good idea to have all application modules nested within a single root application module (AM) so that there is only 1 session maintained for the root AM, versus an individual session for each AM. Is this a best practice? If yes, should the root AM be a skeleton AM (minimal customer service methods), or, should you select the most heavily used AM and nest the other AM's underneath of it?
    In my case, I currenlty have 2 AM's (and will have 3 AM's in the future) each representing a different set of use cases withn the application (i.e., one supports users searches / shopping cart-like functionality, and the second supports an enrollment process.) It could be the case that a user only accesses pages on the web site to do searches (first AM), or only to do enrollment (2nd AM), or, they may access pages of the site that access both AM's. Right now I have 2 separate AM's that are not nested. Should I nest the AM's and define a root AM?
    thanks

    Hi javaX
    The main physical effect of having 2 separate AMs is that they have their own transactions with the database, and presumably sit in the application module pool as their own instances consuming connections from the connection pool. Alternatively a single root AM with 2 nested AMs share a single transaction through the root AM; only the root AM controls the transaction in this scenario.
    As such it's a question of do you need separate transactions or will one suffice?
    How you group your EOs/VOs etc within the AMs is up to you, but usually falls into logical groups such as you have done. If a single transaction is fine, instead of creating multiple AMs, you could instead just create logical package structures instead. Neither method is right or wrong, they're just different ways of structuring your application.
    When you create a nested AM structure, within your ViewController project in the Data Control Palette you'll actually see 3 data controls mapped to each AM. In addition expanding the root AM data control, you'll see the nested AMs again. Create a dummy project with a nested AM structure and you'll see what I mean.
    If you base your page definitions on anything from the root AM and it's children in the Data Control Palette, this will work on the root AM's transaction.
    If you base your page definitions on something from one of the other AM data controls that isn't inside the main root AM in the Data Control Palette, instead of using the root AM's transaction, the separate child AM will be treated as root AM and will have its own transaction.
    The thing to care of when developing web pages is to consistently use the AM and it's nested AMs, or the child AMs directly with their separate transactions, otherwise it might cause a bit of a nightmare debugging situation later on when the same application is locking and blocking on the same records from 2 separate AM transactions.
    Hope this helps.
    CM.

  • Root guard best practices? Where to put it?

    Hey all,
    We recently implemented root guard on our two core devices, on both ports that point to our distribution layer.  This broke the link from our secondary router to the distribution layer, which remains in a BKN state due to the root BPDU that passes through our distribution layer and into the router.  After doing this, we are now unable to pass traffic inbound from our secondary router.
    I'm wondering what would be considered a best practice with root guard -- should we leave it where it is, or push it down to the distribution layer where the interfaces connect to our access switches? Topology attached here.
    I will note that we are only allowing what vlans we need across each link, and currently we are not allowing all vlans across the trunk between R1 and R2.

    Hello Patrick-
    You should have root guard enabled on:
    - Core ports that are connecting to the distribution switches
    - Distribution ports that are connecting to the access switches
    Similar to this diagram (I was going to draw one but a quick google search got me one :) )
    http://www.rogerperkin.co.uk/ccie/wp-content/uploads/2013/03/spanning-tree-root-guard.jpg
    Also, what is the reason for not allowing all VLANs on the link between the core switches? Ideally, you would not want to block on that link. This can also (depending on actual setup) cause some traffic to be send to a blackhole if certain links are to die off. If the diagram that you attached is accurate then you would probably want to:
    - Connect each distribution switch to each core (create triangle type connections not squares)
    - Remove the link between distribution switches (optional but IMO preferred)
    - Allow all VLANs on the link between the two core switches
    - Let STP blocking happen on the link that is between the distribution and core switches while the link between the two cores remain in unblocking state
    Thank you for rating helpful posts!

  • What is the Best Practice for publishing Offline Root CA Cert and CRL to Active Directory?

    Hi,
    I've read and seen in a few labs different approaches to what is published in Active Directory for a Offline Root CA.  I've seen just the Root Cert published to AD as well as the Root Cert and the Root CRL published to AD. 
    I can understand why the Root Cert is published to AD, but why would the Root CRL need to be published to AD, especially if my Offline Root CA just issues the Cert for my Subordinate Issuing CA?  So looking for Best Practices here.
    Thanks for your help! SdeDot

    On Sun, 22 Feb 2015 18:44:25 +0000, Andrzej Kazmierczak wrote:
    Best practice is to publish CRL to 2 alternative paths - LDAP for your internal users to access them on the first place and HTTP as an alternative option to LDAP and as the only option for your external users.
    No, the current recommended best practice is to publish to a highly
    available HTTP location first (and possibly the only CDP) that is available
    both internally and externally. This covers Windows and non-Windows
    devices, domain joined and non-domain joined devices and internal and
    external devices as well as multi-forest scenarios with no trust between
    forests.
    Paul Adare - FIM CM MVP

  • Temp Tables - Best Practice

    Hello,
    I have a customer who uses temp tables all over their application.
    This customer is a novice and the app has its roots in VB6. We are converting it to .net
    I would really like to know the best practice for using temp tables.
    I have seen code like this in the app.
    CR2.Database.Tables.Item(1).Location = "tempdb.dbo.[##Scott_xwPaySheetDtlForN]"
    That seems to work, though i do not know why the full tempdb.dbo.[## is required.
    However, when i use this in the new report I am doing I get runtime errors.
    i also tried this
    CR2.Database.Tables.Item(1).Location = "##Scott_xwPaySheetDtlForN"
    I did not get errors, but I was returned data i did not expect.
    Before i delve into different ways to do this, i could use some help with a good pattern to use.
    thanks

    Hi Scott,
    Are you using the RDC still? It's not clear but looks like it.
    We had an API that could piggy back the HDBC handle in the RDC ( craxdrt.dll ) but that API is no longer available in .NET. Also, the RDC is not supported in .NET since .NET uses the framework and RDC is COM.
    Work around is to copy the temp data into a data set and then set location to the data set. There is no way that I know of to get to the tempdb from .NET. Reason being is there is no CR API to set the owner of the table to the user, MS SQL Server locks the tempdb to that user has exclusinve rights on it.
    Thank you
    Don

  • [SOLVED]xpra + winswitch - best practice due to /etc/X11/xorg.conf.d/*

    Running xpra causes some headaches.
    The application builds fine and installs just perfectly, the troubles comes from the default Xorg configuration is no longer stored in /etc/X11/xorg.conf, it's now stored and read from numerous files under /etc/X11/xorg.conf.d/ where just so happen to be my 5-nvidia.conf.
    Starting xpra via:
    xpra start :100
    Causes:
    X.Org X Server 1.14.3
    Release Date: 2013-09-12
    X Protocol Version 11, Revision 0
    Build Operating System: Linux 3.11.0-1-ARCH x86_64
    Current Operating System: Linux archie 3.11.2-1-ARCH #1 SMP PREEMPT Fri Sep 27 07:35:36 CEST 2013 x86_64
    Kernel command line: root=/dev/sda1 rw initrd=../initramfs-linux.img BOOT_IMAGE=../vmlinuz-linux
    Build Date: 13 September 2013 01:28:59PM
    Current version of pixman: 0.30.2
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
    Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (++) Log file: "/home/torxed/.xpra/Xorg.:100.log", Time: Thu Oct 3 19:56:30 2013
    (++) Using config file: "/etc/xpra/xorg.conf"
    (==) Using config directory: "/etc/X11/xorg.conf.d"
    setversion 1.4 failed
    Initializing built-in extension Generic Event Extension
    Initializing built-in extension SHAPE
    Initializing built-in extension MIT-SHM
    Initializing built-in extension XInputExtension
    Initializing built-in extension XTEST
    Initializing built-in extension BIG-REQUESTS
    Initializing built-in extension SYNC
    Initializing built-in extension XKEYBOARD
    Initializing built-in extension XC-MISC
    Initializing built-in extension SECURITY
    Initializing built-in extension XINERAMA
    Initializing built-in extension XFIXES
    Initializing built-in extension RENDER
    Initializing built-in extension RANDR
    Initializing built-in extension COMPOSITE
    Initializing built-in extension DAMAGE
    Initializing built-in extension MIT-SCREEN-SAVER
    Initializing built-in extension DOUBLE-BUFFER
    Initializing built-in extension RECORD
    Initializing built-in extension DPMS
    Initializing built-in extension X-Resource
    Initializing built-in extension XVideo
    Initializing built-in extension XVideo-MotionCompensation
    Initializing built-in extension XFree86-VidModeExtension
    Initializing built-in extension XFree86-DGA
    Initializing built-in extension XFree86-DRI
    Initializing built-in extension DRI2
    Loading extension GLX
    (EE)
    Fatal server error:
    (EE) xf86OpenConsole: Cannot open /dev/tty0 (No such file or directory)
    (EE)
    (EE)
    Please consult the The X.Org Foundation support
    at http://wiki.x.org
    for help.
    (EE) Please also check the log file at "/home/torxed/.xpra/Xorg.:100.log" for additional information.
    (EE)
    (EE) Server terminated with error (1). Closing log file.
    2013-10-03 19:56:30,893
    2013-10-03 19:56:30,893 Xvfb command has terminated! xpra cannot continue
    2013-10-03 19:56:30,894
    2013-10-03 19:56:30,895 removing socket /home/torxed/.xpra/archie-100
    tl;dr: 5-nvidia.conf is trying to get loaded after xf86-video-dummy is loaded (which is the default for xpra).
    Now to the question: What's the best practice because there's no information about this issue, and i can't be the only one who's run in to this since the xorg.conf was removed. At the moment I move all my nvidia configs out of the way, start xpra and move them back in. This works for the better part as long as i execute xpra with my own scripts.
    But is there a better way (which doesn't perhaps include recreating xorg.conf since that appears to be something you should walk away from)?
    Last edited by Torxed (2013-10-04 10:29:35)

    Good thinking! (xpra is basically just screen but for x, or a X11 tunnel via SSH).
    After a really quick poking around and remembering that xpra really just uses xorg-server-xvfb and at the very bottom of /etc/xpra/xpra.conf there's a line that says:
    xvfb=xpra_Xdummy -dpi 96 -noreset -nolisten tcp +extension GLX +extension RANDR +extension RENDER -logfile ${HOME}/.xpra/Xorg.${DISPLAY}.log -config /etc/xpra/xorg.conf
    Appending -configdir appears to be working.
    Here are the full steps:
    [torxed@archie ~]$ sudo cp -r /etc/X11/xorg.conf.d /etc/xpra/
    [torxed@archie ~]$ sudo rm /etc/xpra/xorg.conf.d/*nvidia*
    [torxed@archie ~]$ sudo sed -i '$s/$/ -configdir \/etc\/xpra\/xpra.conf.d/' /etc/xpra/xpra.conf
    *nvidia* would have to match your graphic-driver-config that would cause xorg-server-xvbf to crash.
    I'll update the wiki and put a mention on the package about it because this either has to be standard or well known from the start because it really just breaks the package all together.
    Last edited by Torxed (2013-10-04 10:29:09)

  • Best Practice - Bounded Task Flows, Regions and Nested Application Modules

    Using JDev 11.1.1.3; understand that it's generally considered good practice to just have 1 root application module servicing model content / services for each page. In our application, we've used a number of bounded task flows and page fragments deployed as af:region's into pages as either a) views targeted in page-flow navigation, b) tab panel content inside a regular jspx, or c) af:popup / af:dialog content. As it stands, we've not engaged nesting of the application modules for this embedded region content, so these regions are no doubt instantiating new AM's if/when invoked. Should the AM's servicing these embedded regions be deployed nested within the root AM's, and then if so, does this change the way that the jsff / fragment content is actually developed (currently as per any other jspx using the DataControl pallete). Or are the best-practice directives talking about a page as being the design-time / declarative composition of content rather than the run-time aggregation of page + fragments ... in which case the fact that our embedded fragments are not using nested AM's is unlikely to concern.
    Thanks,

    Probably a better question for the ADF EMG: http://groups.google.com/group/adf-methodology?hl=en
    CM.

  • Font sizing best practice in 2014

    Decided to obtain a better working knowledge of font sizing best practice, read until my eyes bled, and find I continue to have questions. So much posted is old (older than few years) and change happens fast.
    To the point; Since use of em units (or percentages) is often preferred, I now see that rems (root em) is another option, which leads me to ask:
    Should I consider using “rem” sizing?… or, do browser zooming capabilities of modern browsers mean I do not have to obsess over how precise I must be in guesstimating how viewers actually see my written content as they have better control at their end? Is em compounding of sizes something that must be considered?
    Thanks-

    Use a mixture of what is best suited.
    For document level I use pixels as in
    /* Document level adjustments */
    html {
      font-size: 13px;
    @media (min-width: 760px) {
      html { font-size: 15px; }
    @media (min-width: 900px) {
      html { font-size: 17px; }
    Then for the modules I use root level ems as in
    /* Modules will scale with document */
    header {
      font-size: 1.5rem;
    footer {
      font-size: 0.75rem;
    aside {
      font-size: 0.85rem;
    Then the size that will scale with the modules
    /* Type will scale with modules */
    h1 {
      font-size: 3em;
    h2 {
      font-size: 2.5em;
    h3 {
      font-size: 2em;
    Using this method I keep each scenario under complete control.
    A List Apart has a nice article on the subject.

  • [CS5.5/6] - XML / Data Merge questions & Best practice.

    Fellow Countrymen (and women),
    I work as a graphic designer for a large outlet chain retailer which is constantly growing our base of centers.  This growth has brought a workload that used to be manageable with but two people to a never ending sprint with five.  Much of what we do is print, which is not my forte, but is also generally a disorganized, ad-hoc affair into which I am wading to try to help reduce overall strain.
    Upon picking up InDesign I noted the power of the simple Data Merge function and have added it to our repetoire in mass merging data sources.  There are some critical failures I see in this as a tool going forward for our purposes, however:
    1) Data Merge cannot handle information stored and categorized in a singular column well.  As an example we have centers in many cities, and each center has its own list of specific stores.  Data merge cannot handle a single column, or even multiple column list of these stores very easily and has forced us into some manual operations to concatenate the data into one cell and then, using delimiter characters, find and replace hard returns to seperate them.
    2) Data Merge offers no method of alternate alignment of data, or selection by ranges.  That is to say:  I cannot tell Data merge to start at Cell1 in one column, and in another column select say... Cell 42 as the starting point.
    3) Data merge only accepts data organized in a very specific, and generally inflexible pattern.
    These are just a few limitations.
    ON TO MY ACTUAL DILEMMA aka Convert to XML or not?
    Recently my coworker has suggested we move toward using XML as a repository / delivery system that helps us quickly get data from our SQL database into a usable form in InDesign. 
    I've watched some tutorials on Lynda.com and havent yet seen a clear answer to a very simple question:
    "Can XML help to 'merge' large, dynamic, data sets like a list of 200 stores per center over 40 centers based off of a single template file?"
    What I've seen is that I would need to manually duplicate pages, linking the correct XML entry as I go rather than the program generating a set of merged pages like that from Data Merge with very little effort on my part.  Perhaps setting up a master page would allow for easy drag and drop fields for my XML data?
    I'm not an idiot, I'm simply green with this -- and it's kind of scary because I genuinely want us to proceed forward with the most flexible, reliable, trainable and sustainable solution.  A tall order, I know.  Correct me if I'm wrong, but XML is that beast, no?
    Formatting the XML
    Currently I'm afraid our XML feed for our centers isnt formatted correctly with the current format looking as such:
    <BRANDS>
         <BRAND>
              • BrandID = xxxx
              [Brand Name]
              [Description]
              [WebMoniker]
              <CATEGORIES>
                   <CATEGORY>
                        • xmlns = URL
                        • WebMoniker = category_type
              <STORES>
                   <STORE>
                        • StoreID = ID#
                        • CenterID = ID#
    I dont think this is currently usable because if I wanted to create a list of stores from a particular center, that information is stored as an attribute of the <Store> tag, buried deep within the data, making it impossible to 'drag-n-drop'. 
    Not to mention much of the important data is held in attributes rather than text fields which are children of the tag.
    Im thinking of proposing the following organizational layout:
    <CENTERS>
         <CENTER>
         [Center_name]
         [Center_location]
              <CATEGORIES>
                   <CATEGORY>
                        [Category_Type]
                        <BRANDS>
                             <BRAND>
                                  [Brand_name]
    My thought is that if I have the <CENTER> tag then I can simply drag that into a frame and it will auto populate all of the brands by Category (as organized in the XML) for that center into the frame.
    Why is this important?
    This is used on multiple documents in different layout styles, and since our store list is ever changes as leases end or begin, over 40 centers this becomes a big hairy monster.  We want this to be as automated as possible, but I'd settle for a significant amount of dragging and dropping as long as it is simple and straightforward.  I have a high tollerance for druding through code and creating work arounds but my co-workers do not.  This needs to be a system that is repeatable and understandable and needs to be able to function whether I'm here or not -- Mainly because I would like to step away from the responsibility of setting it up every time
    I'd love to hear your raw, unadulterated thoughts on the subject of Data merge and XML usage to accomplish these sorts of tasks.  What are your best practices and how would you / do you accomplish these operations?
    Regards-
    Robert

    From what I've gleaned through watching Lynda tutorials on the subject is that what I'm hoping to do is indeed possible.
    Peter, I dont disagree with you that there is a steep learning curve for me as the instigator / designer of this method for our team, but in terms of my teammates and end-users that will be softened considerably.  Even so I'm used to steep learning curves and the associated frustrations -- but I cope well with new learning and am self taught in many tools and programs.
    Flow based XML structures:
    It seems as though as long as the initial page is set up correctly using imported XML, individual data records that cascade in a logical fashion can be flowed automatically into new pages.  Basically what you do is to create an XML based layout with the dynamic portion you wish to flow in a single frame, apply paragraph styles to the different tags appropriately and then after deleting unused records, reimport the XML with some specific boxes checked (depending on how you wish to proceed).
    From there simply dragging the data root into the frame will cause overset text as it imports all the XML information into the frame.  Assuming that everything is cascaded correctly using auto-flow will cause new pages to be automatically generated with the tags correctly placed in a similar fashion to datamerge -- but far more powerful and flexible. 
    The issue then again comes down to data organization in the XML file.  In order to use this method the data must be organized in the same order in which it will be displayed.  For example if I had a Lastname field, and a Firstname field in that order, I could not call the Firstname first without faulting the document using the flow method.  I could, however, still drag and drop content from each tag into the frame and it would populate correctly regardless of the order of appearance in the XML.
    Honestly either method would be fantastic for our current set of projects, however the flow method may be particularly useful in jobs that would require more than 40 spreads or simple layouts with huge amounts of data to be merged.

  • Best Practice: Deploying Group Policy to Users on different OUs

    Greetings, everyone! I am needing some advice on how to deploy some group policy objects to specific users stored on different OUs.
    Let me set the stage: I work for a large school district, and have recently taken over the district's career center. The idea behind the career center is that students from different high schools around the city come in to take classes based on their choice
    of career, such as radio broadcasting or auto mechanic and such. The AD structure is set up so that each school has their own OU.  When a user (staff, student, etc.) is assigned to a school OU, they automatically are added to
    their school's security group (i.e. EASTHIGH-STUDENT), and that when any user moves from one school to another, we have to move their AD account to that school's OU, which will remove the security group from the old school and apply the new school
    security group.
    For the career center, since we have students coming from different buildings every day, rather than trying to find a way to move their AD account from their high school OU to the career center OU, the previous techs created generic accounts (such as tv001,
    tv002, etc.) in AD and stored them in the career center OU.  This way, teachers can assign students that particular generic account so that they can access the drives and printers from the career center, as well as access the career center network
    drives while they are at their home high school.
    Since I have moved to the career center, and apparently I have more knowledge about group policy than most of the techs in the district, the district system engineers want me to remove all of the generic accounts from the career center OU, and have students
    use their own AD accounts.  Obviously I also want to do this since the generic accounts are very confusing to me, but I'm trying to figure out the best way to do this.
    For simplicity sake, I'm just going to start off by figuring out how to set up a group policy for mapping the career center drives.  Now, I obviously know that the best way would be to create security groups for each career area, and that we would need
    to add students to those groups so that only those particular students would get the GPO for the career center, but my question is where would I like the group policies to?  Do I need to link it at the root of the domain so that every OU is hit? 
    Just curious about this.
    Thanks!

    Don't link it to the root.... apply the drive mapping as a policy at the OU or you could apply the drive mapping using Group Policy Preferences using security group targeting... .I would also strongly recommend you check out my articles
    Best Practice: Active Directory Structure Guidelines
    – Part 1
    Best Practice: Group Policy Design Guidelines – Part 2
    Hope it helps...

  • Select One Choice attribute' LoV based on two bind variables, best practice

    Hello there,
    I am in the process of learning the ADF 11g, I have following requirement,
    A page must contain a list of school names which is needed to be fetched based on two parameters, the parameters are student information been inserted in the previous page.
    I have defined a read only view "SchoolNamesViewRO", it's query depends on two bind variables :stdDegree and stdCateg.
    added that RO View as a view accessor to the entity to which the name attribute belongs, and then add LoV for the name attribute using the ReadOnly view,
    added the name attribute as Select One Choice to page2,
    and now I need to pass the values of the bind variables of the ReadOnly view,
    the information needed to be passed as the bind variables is inserted in the previous page, I could have the data as bindings attribute values in the page2 definition
    I have implemented the next two appraoches but both resulted in an empty list :
    * added ExecuteWithParams Action to the bindings of the page and then defined an Invoke Action (set refresh condition) in the executable s, set the default values of the parameters to be the attributes values' input value,
    in the trace I code see that the binding fetches correct values as supposed , but the select list appears empty, does the this execution for the query considered to be connected to the list ?
    * added a method to the ReadOnly view Imp java class to set the bind variables, then I define it as a MethodAction in the bindings , and then create an Invoke action for it , also the select is empty,
    if the query been executed with the passed variables, then why the list is empty? is it reading data from another place than the page!
    and what is the best practice to implement that requirement?
    would the solution be : by setting the default value of the bind variables to be some kind of Expression!
    please notice that query execution had the bound variables ( I see in the trace) are set to the correct values.
    would you give some hints or redirect me to a useful link,
    Thanks in advance
    Regards,

    please give me any example using backing bean .for example
    <?xml version='1.0' encoding='UTF-8'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
    <jsp:directive.page contentType="text/html;charset=UTF-8"/>
    <f:view>
    <af:document id="d1">
    <af:form id="f1">
    <af:selectOneChoice label="Label 1" id="soc1" binding="#{Af.l1}"
    autoSubmit="true">
    <af:selectItem label="A" value="1" id="si1"/>
    <af:selectItem label="B" value="2" id="si2"/>
    </af:selectOneChoice>
    <af:selectOneChoice label="Label 2" id="soc2" disabled="#{Af.l1=='2'}"
    partialTriggers="soc1">
    <af:selectItem label="C" value="3" id="si3"/>
    <af:selectItem label="D" value="4" id="si4"/>
    </af:selectOneChoice>
    </af:form>
    </af:document>
    </f:view>
    </jsp:root>
    package a;
    import oracle.adf.view.rich.component.rich.input.RichSelectOneChoice;
    public class A {
    private RichSelectOneChoice l1;
    public A() {
    public void setL1(RichSelectOneChoice l1) {
    this.l1 = l1;
    public RichSelectOneChoice getL1() {
    return l1;
    is there any mistake

  • Best practice for component layout?

    Hi,can people tell me their views on best practice in this area, using JSF.
    Eg, say I want this:
        LabelSml    InputField
        LabelLarge  InputField... ie 2 labels, 2 fields, vertically alligned, and with some space between the label and the field.
    and this one:
        Field                             Field... ie 2 fields with a lot of space between them.
    Finally, are there any examples on the web of UIs with many discrete fields on them (as opposed to logon/helloWorld and matrix data control), where I can look at how the design has been done.
    Marc

    I don't know if our solution is a best practice. We are not using the label property of input components because the alignment does not satisfy then. Instead we are using a <h:panelGrid> and nest <ui:label> and <ui:textField> (Studio Creator components) components in it. Multiple components in one cell are surrounded with a nested layout or grid panel. The number of columns is set by the attribute "columns" and width is controlled by the attribute "columnClasses". Example
    <?xml version="1.0" encoding="UTF-8"?>
    <jsp:root version="1.2" xmlns:bp="http://java.sun.com/blueprints/ui/14" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"
        xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:ui="http://www.sun.com/web/ui">
        <jsp:directive.page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"/>
        <f:view locale="#{SessionBean1.locale}">
            <f:loadBundle basename="com.asci.nef.resourcen.Aktionen" var="akt"/>
            <f:loadBundle basename="com.asci.nef.resourcen.Label" var="lab"/>
            <f:loadBundle basename="com.asci.nef.resourcen.Datenlisten" var="datenlisten"/>
            <f:loadBundle basename="com.asci.nef.resourcen.Meldungen" var="msg"/>
            <ui:page binding="#{personal$Mitarbeiterauswahl.page1}" id="page1">
                <ui:html binding="#{personal$Mitarbeiterauswahl.html1}" id="html1">
                    <ui:head binding="#{personal$Mitarbeiterauswahl.head1}" id="head1">
                        <ui:link binding="#{personal$Mitarbeiterauswahl.link1}" id="link1" url="/resources/stylesheet.css"/>
                        <ui:script binding="#{personal$Mitarbeiterauswahl.scriptFenster}" id="scriptFenster" url="/resources/fenster.js"/>
                    </ui:head>
                    <ui:body binding="#{personal$Mitarbeiterauswahl.body1}" id="body1" style=" -rave-layout: grid">
                        <jsp:directive.include file="../Menue.jspf"/>
                        <ui:form binding="#{personal$Mitarbeiterauswahl.form1}" id="form1">
                            <div>
                                <jsp:directive.include file="../Fensterkennung.jspf"/>
                            </div>
                            <ui:tabSet binding="#{personal$Mitarbeiterauswahl.tabSetPersonaldaten}" id="tabSetPersonaldaten" selected="tabSuchen" style="position: absolute; left: 0px; top: 36px; width: 100%;">
                                <ui:tab binding="#{personal$Mitarbeiterauswahl.tabSuchen}" id="tabSuchen" text="#{akt.funktion110}">
                                    <ui:panelLayout binding="#{personal$Mitarbeiterauswahl.layoutPanelSuchen}" id="layoutPanelSuchen">
                                        <h:panelGrid binding="#{personal$Mitarbeiterauswahl.gridPanelSuchen}" columnClasses="gridlabel, griddata" columns="2"
                                            id="gridPanelSuchen" style="position:absolute; left:100px; top:30px;">
                                            <ui:label binding="#{personal$Mitarbeiterauswahl.labelPersonalnummerSuchen}" id="labelPersonalnummerSuchen" text="#{lab.mitarbeiterauswahl_personalnummer}"/>
                                            <ui:textField binding="#{personal$Mitarbeiterauswahl.textFieldPersonalnummerSuchen}" converter="javax.faces.Long"
                                                id="textFieldPersonalnummerSuchen" maxLength="10" styleClass="eingabe1"/>
                                            <ui:label binding="#{personal$Mitarbeiterauswahl.labelNameSuchen}" for="textFieldNameSuchen" id="labelNameSuchen" text="#{lab.mitarbeiterauswahl_name}"/>
                                            <ui:textField binding="#{personal$Mitarbeiterauswahl.textFieldNameSuchen}" converter="TextTrim" id="textFieldNameSuchen"
                                                maxLength="30" styleClass="eingabe4"/>
                                            <ui:label binding="#{personal$Mitarbeiterauswahl.labelGeburtsdatumSuchen}" id="labelGeburtsdatumSuchen" text="#{lab.mitarbeiterauswahl_geburtsdatum}"/>
                                            <ui:textField binding="#{personal$Mitarbeiterauswahl.textFieldGeburtsdatumSuchen}"
                                                converter="#{SessionBean1.sqlDateConverter}" id="textFieldGeburtsdatumSuchen" maxLength="10" styleClass="eingabe1"/>
                                            <ui:label binding="#{personal$Mitarbeiterauswahl.labelTaetigkeitSuchen}" id="labelTaetigkeitSuchen" text="#{lab.mitarbeiterauswahl_taetigkeit}"/>
                                            <ui:dropDown binding="#{personal$Mitarbeiterauswahl.dropDownTaetigkeitSuchen}" id="dropDownTaetigkeitSuchen"
                                                items="#{personal$Mitarbeiterauswahl.listOptionsTaetigkeitSuchen}" styleClass="eingabe4"/>
                                            <ui:label binding="#{personal$Mitarbeiterauswahl.labelVereinbarungSuchen}" id="labelVereinbarungSuchen" text="#{lab.mitarbeiterauswahl_zusatzvereinbarung}"/>
                                            <ui:textField binding="#{personal$Mitarbeiterauswahl.textFieldVereinbarungSuchen}" id="textFieldVereinbarungSuchen" styleClass="eingabe4"/>
                                            <ui:label binding="#{personal$Mitarbeiterauswahl.labelSortieren}" id="labelSortieren" text="#{lab.mitarbeiterauswahl_sortieren}"/>
                                            <ui:radioButtonGroup binding="#{personal$Mitarbeiterauswahl.radioButtonGroupSortieren}" columns="4"
                                                id="radioButtonGroupSortieren"
                                                items="#{personal$Mitarbeiterauswahl.radioButtonGroupSortierenDefaultOptions.options}" required="true" selected="#{personal$Mitarbeiterauswahl.radioButtonGroupSortierenDefaultOptions.selectedValue}"/>
                                            <ui:label binding="#{personal$Mitarbeiterauswahl.labelDummy1}" id="labelDummy1"/>
                                            <ui:button action="#{personal$Mitarbeiterauswahl.buttonSuchen_action}"
                                                binding="#{personal$Mitarbeiterauswahl.buttonSuchen}" id="buttonSuchen" text="#{akt.button_suchen}"/>
                                            <ui:label binding="#{personal$Mitarbeiterauswahl.labelDummy2}" id="labelDummy2"/>
                                            <ui:listbox binding="#{personal$Mitarbeiterauswahl.listboxSuche}" id="listboxSuche" monospace="true"
                                                onDblClick="#{personal$Mitarbeiterauswahl.onDblClickAction}" rows="20" styleClass="eingabe7"/>
                                            <ui:label binding="#{personal$Mitarbeiterauswahl.labelDummy3}" id="labelDummy3"/>
                                            <ui:panelLayout binding="#{personal$Mitarbeiterauswahl.layoutPanelButtons2}" id="layoutPanelButtons2" panelLayout="flow">
                                                <ui:button action="#{personal$Mitarbeiterauswahl.buttonNeu_action}"
                                                    binding="#{personal$Mitarbeiterauswahl.buttonNeu}" id="buttonNeu" immediate="true" text="#{akt.button_neu}"/>
                                                <ui:button action="#{personal$Mitarbeiterauswahl.buttonBearbeiten_action}"
                                                    binding="#{personal$Mitarbeiterauswahl.buttonBearbeiten}" id="buttonBearbeiten" text="#{akt.button_bearbeiten}"/>
                                                <ui:button action="#{personal$Mitarbeiterauswahl.buttonLoeschen_action}"
                                                    binding="#{personal$Mitarbeiterauswahl.buttonLoeschen}" id="buttonLoeschen" text="#{akt.button_loeschen}"/>
                                            </ui:panelLayout>
                                        </h:panelGrid>
                                    </ui:panelLayout>
                                </ui:tab>
                            </ui:tabSet>
                            <h:panelGrid binding="#{personal$Mitarbeiterauswahl.gridPanelFehler}" id="gridPanelFehler" onclick="this.style.display = 'none';" style="position: absolute; right: 20px; bottom: 50px; width: 250px; height: 78px;"/>
                            <ui:panelLayout binding="#{personal$Mitarbeiterauswahl.layoutPanelConfirm}" id="layoutPanelConfirm" panelLayout="flow" style="position:absolute; top:36px; left:0px;width:100%; height:700px;">
                                <h:panelGrid binding="#{personal$Mitarbeiterauswahl.gridPanelConfirm}" columns="1" id="gridPanelConfirm" style="margin-left:auto; margin-right:auto; margin-top:300px; background-color:#FF3333;">
                                    <ui:staticText binding="#{personal$Mitarbeiterauswahl.staticTextConfirm}" id="staticTextConfirm" text="#{msg.global_loeschen}"/>
                                    <ui:panelLayout binding="#{personal$Mitarbeiterauswahl.layoutPanelConfirmButtons}" id="layoutPanelConfirmButtons" panelLayout="flow">
                                        <ui:button action="#{personal$Mitarbeiterauswahl.buttonConfirmYes_action}"
                                            binding="#{personal$Mitarbeiterauswahl.buttonConfirmYes}" id="buttonConfirmYes" text="#{akt.button_ja}"/>
                                        <ui:button action="#{personal$Mitarbeiterauswahl.buttonConfirmNo_action}"
                                            binding="#{personal$Mitarbeiterauswahl.buttonConfirmNo}" id="buttonConfirmNo" text="#{akt.button_nein}"/>
                                    </ui:panelLayout>
                                </h:panelGrid>
                            </ui:panelLayout>
                        </ui:form>
                    </ui:body>
                </ui:html>
            </ui:page>
        </f:view>
    </jsp:root>

  • Best practice to create views

    Hi,
    I've a question about best practice to develop a large application with many complex views.
    Typically at each time only one views is displayed. User can go from a view to another using a menu bar.
    Every view is build with fxml, so my question is about how to create views and how switch from one to another.
    Actually I load fxml every time the view is required:
    FXMLLoader loader = new FXMLLoader();
    InputStream in = MyController.class.getResourceAsStream("MyView.fxml");
    loader.setBuilderFactory(new JavaFXBuilderFactory());
    loader.setLocation(OptixController.class.getResource("MyView.fxml"));
    BorderPane page;
    try {
         page = (BorderPane) loader.load(in);
         } finally {
              if (in != null) {
                   in.close();
    // appController = loader.getController();
    Scene scene = new Scene(page, MINIMUM_WINDOW_WIDTH, MINIMUM_WINDOW_HEIGHT);
    scene.getStylesheets().add("it/myapp/Mycss.css");
    stage.setScene(scene);
    stage.sizeToScene();
    stage.setScene(scene);
    stage.sizeToScene();
    stage.centerOnScreen();
    stage.show();My questions:
    1- is a good practice reload every time the fxml to design the view?
    2- is a good practice create every time a new Scene or to have an unique scene in the app and every time clear all elements in it and set the new view?
    3- the views should be keep in memory to avoid performace issue or it is a mistake? I think that every time a view should be destroy in order to free memory.
    Thanks very much
    Edited by: drenda81 on 21-mar-2013 10.41

    >
    >
    My questions:
    1- is a good practice reload every time the fxml to design the view?
    2- is a good practice create every time a new Scene or to have an unique scene in the app and every time clear all elements in it and set the new view?
    3- the views should be keep in memory to avoid performace issue or it is a mistake? I think that every time a view should be destroy in order to free memory.
    In choosing between 1 and 3 above, I think either is fine. Loading the FXML on demand every time will be slightly slower, but assuming you are not doing something unusual such as loading over a network connection it won't be noticeable to the user. Loading all views at startup and keeping them in memory uses more memory, but again, it's unlikely to be an issue. I would choose whichever is easier to code (probably loading on demand).
    In choosing between reusing a Scene or creating a new one each time, I would reuse the Scene. "Clearing all elements in it" only needs you to call scene.setRoot(...) and pass in the new view. Since the Scene has a mutable root property, you may as well make use of it and save the (small) overhead of instantiating a new Scene each time. You might consider exposing a currentView property somewhere (say, in your main controller, or model if you have a separate model class) and binding the Scene's root property to it. Something like:
    public class MainController {
      private final ObjectProperty<Parent> currentView ;
      public MainController() {
        currentView = new SimpleObjectProperty<Parent>(this, "currentView");
      public void initialize() {
        currentView.set(loadView("StartView.fxml"));
      public ObjectProperty<Parent> currentViewProperty() {
        return currentView ;
      // event handler to load View1:
      @FXML
      private void loadView1() {
        currentView.set(loadView("View1.fxml"));
      // similarly for other views...
      private Parent loadView(String fxmlFile) {
        try {
         Parent view = FXMLLoader.load(getClass().getResource(fxmlFile));
         return view ;
        } catch (...) { ... }
    }Then your application can do this:
    @Override
    public void start(Stage primaryStage) {
       Scene scene = new Scene();
       FXMLLoader loader = new FXMLLoader(getClass().getResource("Main.fxml"));
       MainController controller = (MainController) loader.getController();
       scene.rootProperty().bind(controller.currentViewProperty());
       // set scene in stage, etc...
    }This means your Controller doesn't need to know about the Scene, which maintains a nice decoupling.

  • Best practice for data migration install v1.40 - Error 2732 Directory manag

    Hi
    I'm attempting to install SAP Best Practice for Data migration 1.40 on Win Server 2008 R2 (64 bit).
    Prerequisite error
    Installation program stops with missing file error
    The following file was not found
    ... \migration\InstallationWizard\BusinessObjects Data Services\setup.exe
    The file is necessary for successful installation. Please connect to internet or refer to Quick Guide (available on SAP note 1527151) for information regarding the above file.
    Windows installer log displays
    Error 2732 Directory Manager not initialized
    SAP note 1527151 does not exist or is internal.
    Any help appreciated  on what is the root cause of the error as the file does not exist in that folder in the installation zip file.
    Other prerequisite of .NET 3.5.1 met already.
    Patch is released since 20.11.2011 so I presume that it is a good installation set.
    Thanks,
    Alan

    Hi Alan,
    There are details on data migration v1.4 installations on SAP website and market place. The below link should guide to the right place. It has a power point presentation and other useful links as well.
    http://help.sap.com/saap/sap_bp/DMS_V140/DMS_US/html/index.htm
    Arun

  • Best Practice for New Doc Version?

    I'm a RH novice who needs to create a V1.1 doc based on the
    V1.0 source topics, TOC, and images. I'm using RH HTML X5. What is
    my best practice? The previous author left a unclear doc suggesting
    something like the following:
    Copy the current V1.xpj, V1.hhc, and V1.hhp files and rename
    them as V1.1.xpj, V1.1.hhc, and V1.1hhp
    Place the renamed files in the V1 root directory and open the
    V1.1.xpj file.
    Create and edit new content
    Not understanding RH too well, this seemed reasonable. It
    appears what he is suggesting will bring everything forward in a
    new project, but leave the V1 structure intact. I tried this, and
    it seemed to be working but I was confused by RH also making
    changes to the OLD V1.cpd and V1.pss (I don't know that those files
    are).
    So, apparently the copied files contain references to at
    least the old cpd and pss files (and maybe others). I'm concerned
    that continuing down this path will corrupt V1 and leave me
    mis-matched conventions. Some files being V1, and some being V1.1.
    Is there a how-to somewhere that can help me create a new
    version and not muddy up the old? Do any X5 gurus remember how they
    did this?
    Thanks in advance,
    Keith

    Peter,
    Hopefully you'll see this. I tried you suggestion. Opened the
    old file and renamed the project. About 10 links came up broken
    that weren't broken before. Any ideas why this would happen. I
    didn't make any changes other than the rename.
    Thanks,
    Keith

Maybe you are looking for

  • Problems viewing forms in reader - easy fix using adobe send?

    My colleagues and I were having problems viewing and printing data in forms.  Went to the help forums and apparently it is caused by someone filling in a .pdf form on a mac - it corrupts the file.  I saw a lot of fixes suggested including a javascrip

  • Photos in imovie 11 not showing on idvd project.

    I made a project in imovie11. Half is video with around 100 iphotos inserted into the movie. That is, a few iphotos in between various clips. Shows on preview imovie preview okay. But when I exported as HD1080 widescreen to idvd, the movie okay but p

  • Access to previous course history

    Hello Is there any way to get access to my previous course history or it has been deleted permanently ? I got answer from [email protected] that its not longer available, but before new netaspace was created, CISCO ensured that after old academy conn

  • How to get patch CR095687 required for WebLogic Adapters

    The release notes of WebLogic Adapters specify to ensure that patch CR095687 need to be installed

  • SQL*Plus break not doing what I want

    Greetings, I am trying to write a script to generate grants on objects in different schemas and each time the schema changes I want to insert a connect command. I figured this out once and don't remember how I did it. The attached piece of code puts