G10 Aperture RAW conversion: what are your impressions?

the wait is over!
2.4 RAW Compatibility update includes Canon G10.
what are your impressions?
what Aperture settings yield best results?
how do they compare to Camera RAW and DPP?

When you compare photos that were photographed at ISO 100 they all do a good job. When you stat going up in the ISO is where I think Aperture does a great job. I've attached a screen capture of the same photos processed with 3 different applications. No adjustments were added to the photos. The default settings were used then the photo was passed on to photoshop as a Tiff. I think it's clear why I don't like ACR. Aperture and DPP are much closer. DPP has some noise reduction on by default so the photo looks like it has less noise then Aperture. I feel that the default noise reduction just makes the photo look a little soft and out of focus. If I turn off the default noise reduction in DPP the photo looks noisy. So I like Aperture better because of the way the noise looks, the sharpness and detail of the photo. Another area to look at is the neck and chest area. Aperture holds the most amount of detail before blowing out. I know that all 3 programs have adjustments that will help fix the problems in the photo. Even after doing that to the photo in all 3 programs I still felt that Aperture was clearly better. As the previous poster said it is subjective to each persons taste.
I've never used this way of posting a screen grab so if it doesn't work forgive me. Make sure to click on the photo to view the large file.

Similar Messages

  • What are your impressions of "multi-tasking"?

    If you have iOS4 and a capable device, you should have multi-tasking and opened apps appearing in the task bar. Newer app versions are able to run in the background. In my opinion, when I close most apps (by pressing the home button), I want them to close completely, not run in the background. Aside from being a privacy issue, apps in the task bar may use battery power or if truly in a suspended mode, they still take up memory or process capability. In order to really shut them down, two additional home button clicks and then two more screen strokes are required. Not very efficient and probably leading to an earlier home button failure. Why not have some kind of screen command (tap or swipe combination?) to simultaneously shut down all apps in the task bar? The bar itself is useless if you have used many apps in the course of a day. To find what you're looking for, you have to scroll through a long parade of icons. It's a lot easier to just tap the icon where you know it is sitting in the nice folder you created. I don't get it. I realize the bar can be used for switching open apps, but this is really not that big of a deal for the vast majority of apps. Furthermore, there should be an option to enable or disable multi-tasking globally as well as for individual apps. Now that would be an improvement.
    What are your thoughts?

    I havent done any kind of multitasking on my ipod touch, im waiting to upgrade my software to the newer one. However, I couldnt agree more with that of pressing the home button many times to perform basic function to switch apps or enable the multitasking ability. I think palm adapted a better design of software than apple ever did with their IOS 4. Palm's webOS can handle full multitasking--something the iPhone can't do. Palm uses what it calls "a deck of cards model" for managing multitasking: You can view each of your open applications at once, shuffle them any way you choose, and then discard the ones you want to close. All of this is done with intuitive gestures that mimic handling a physical deck of cards. Apps remains live, even when minimized into the card view, so changes can continue to happen in real-time, even if you've moved on to another activity.
    I had the time to experience a bit of a palm web os software on an AT&T store and my impression on that software is done more elegantly than apple multitasking home pressing button system.
    P.S to NYtroutbum: you should definitely present that idea to apple by its feedback product page. Let's hope it listens.

  • Contact Sheets / Proofing and useful Aperture RAW Conversion

    All,
    I wanted to appeal to all of you pro photographers out there to share about how you handle the proofing stage (contact sheets) with your clients. I'm curious about how you all make this process as efficient as possible.
    Ok, say you have taken 1000 pictures for a wedding or some other event (forget the accuracy of that number, its just a round number for discussion sake). You need to present your photos to your client, but you need to present a subset of the 1000 photos for a few reasons:
    1) Not all photos you are going to take are going to be great. I've heard a general quote by some pro photographers that their "keeper ratios" (the percentage of pics that are really good from a shoot) run around 10%-20%. Fair enough, I don't want to debate this percentage, but it gives us a target number of 100 photos to present to a client from a 1000 picture shoot.
    2) Your client is probably not going to be happy if they have to sift through 1000 photos. I recently had a friend who paid several thousand dollars for a wedding photographer who sent them 1000 photos to choose from. They weren't particularly happy with this, and told the guy there was just too many to choose from. Personally, I felt that this was putting part of the photographer's responsibility on the client, but whatever.
    Ok...so for the sake of the example here, we have to get 1000 photos down to 100 photos, so the client can choose what 50 (for example) they want to purchase and have printed, put in their photo book, slide presentation, etc.
    Sorry for the long intro, but here is the issue at hand: we want to work quickly for the client, and get them their 100 photos as soon as possible. We also want to put our best foot forward, and give them high-quality photos. But at the same time, we want to work efficiently, and if possible not spend time doing final retouching on photos that the customer doesn't want, but rather focus this time directly on the photos the customer does want.
    I have two questions from this which pertain to Aperture's RAW conversion and workflow:
    1) Do you do any significant adjustments on photos for the contact sheets you present to clients (the 100 photos now)? Is it just a quick exposure adjustment, or are you retouching all 100?
    2) Despite Aperture's RAW conversion problems and other adjustment glitches, is it sufficient quality in your opinion for a contact sheet?
    My purpose in asking these questions is that perhaps the Aperture RAW conversion issue can be mitigated if we can get to the point of customer contact and review using Aperture-only conversion and adjustment tools, and then isolate photoshop use for only the final, significant edits. The problems with Aperture's RAW conversion are well-documented, but the question is, could it still be sufficient for small-scale proofs, understanding that for large-scale, high-res images, it won't be suffcient.
    Your opinons are valued!
    Brad
    Powerbook G4-1.33GHz-17" / Powermac G4-1.4GHz   Mac OS X (10.4.2)   PB: 1GB RAM, Radeon 9600-64MB / PM: 1.25GB RAM, Radeon 9000Pro-128MB

    ">-DELETE project from Aperture because I can't use the app for the delivery
    of finals:
    Forgive me if I've forgotten the detail you may have posted elsewhere about this. I have seen you mention this several times, but I am really interested in the specifics behind the problems you have encountered. I have some needs in finishing that are beyond just regurgitating a photo. I'll be basically augmenting my photo with text, borders, special effects, etc. for more professional presentation, and the ability to market a photo in different ways. This is one reason I cannot discard Photoshop from my workflow. Anyway, let's assume for a moment I'm able to do all my editing in Photoshop, and those PSD files are sitting within Aperture. From there, what problems am I going to encounter? I'm tapping your brain here, as the time I have spent in Aperture has been primarily oriented toward everything prior to the finishing stage. "
    Hi Brad,
    If I've imported images into Aperture that have previously been worked over in Photoshop, none of the layers I may have created in those files will be available to me from within Aperture. This does not break but severely sprains the functionality of Photoshop. I'm keeping the images around because I think I or my clients will need them later, so what might I do with them?:
    1) If I'd like to do more work on them I either have to abandon access to the previously created layers and their magic, or export the file from Aperture, work on it outside, import it back into Aperture. Every time I want to work with those layers I have to do the same dance.
    2) If I'd like to send jpg or tif versions of those files anywhere I can choose to use the tools within Aperture or Photoshop to do so. Aperture's tools for these conversions are simply not of professional utility: no compressed tifs, no layered tif support, no quality choices for jpgs and no jpg previews. And in either case, using Aperture or Photoshop, the conversions are created OUTSIDE of Aperture and not managed by it.
    3) When I decide to archive my older projects I'm faced with the incredible limitation that Aperture will not allow me any remote search of any archive that is not "live" within Aperture. Not even Spotlight will search Aperture libraries!!!!!
    So moving already created projects into Aperture has absolutely no advantages and a number of problems, any one of which might be a deal-killer by itself.
    If I'd like to use Aperture to manage work that I create going forward I've got those limitations already listed above, but I CAN access layers in PSD that are created from within Aperture. I cannot make layered duplicates of those files in order to work on versions of those images so once again the Photoshop workflow is hobbled.
    All of this makes it a bad idea for my projects to make anything but a brief trip in and out of Aperture for sorting/proofing.
    Regards,
    fp

  • Your What are Your Recommended TextPad Embellishments

    As a long-time TextPad user I've been quite impressed with the editor's amazing and powerful features and is why I have been feeling lately that the ESTK is coming up a little on the short end as I begin this journey into writing attempting to write ExtendScript /JavaScript for InDesign.
    With Theunis's compiled CHM help file as an added tool available from TextPad, I may try scripting away from the ESTK, but will miss ESTK's visual enhancement of the code.
    There are so many add-ons available to the TextPad user to use, and as many of you have traveled this road already; what are your recommended clip libraries, macros and syntax definitions that would be worthwhile to the aspiring InDesign script writer?
    Thanks in advance for any suggestions.
    Kelly
    PS. Thanks to Theunis (aka Jongware) for making the CHM available to this community!

    You're welcome, Kelly!
    Personally, I use TextPad "as is", as it already does a great job on syntax highlighting Javascript. Actually I cannot remember if it did this natively, or if I had to download it somewhere -- have been using it for years like this. The only thing I added was a hotkey to the CHM help file (instructions to do so are in TextPad's Help on running external files).
    But I'm as curious as you: does anyone else have suggestions to further enhance TextPad?
    On the same: on my Mac I use TextWrangler to code. Are there any useful additions for that as well?

  • What are your top 3 favorite AIR Native Extensions? (any OS)

    What are your top 3 favorite AIR Native Extensions?
    OS is irrelevant.

    From looking at most of the threads posted in these forums, people generally come here seeking help with issues they are having while developing an AIR application, hence the name of this community, "Adobe AIR Development". If your question isnt answered within 3 days that doesn't appear to be seeking help with an issue or potential bug, doesn't mean that AIR is dead. People are using this forum everyday as indicated by there being new or active threads everyday. Most questions that people answer or have interest in, are related to iOS and Android development.

  • What are your favorite U.S. cities to travel to?

    Can't speak for Chicago, but my favourite city to either live in or visit since I've been in the US is Seattle - by far. Always something going on, great food. And football (Sounders!)

    I am heading to Chicago tomorrow to visit friends and the countdown is in full swing...I've only been to Chicago when it was freeeeezing, so I am very much looking forward to spending time on the water this time around!My mom is a flight attendant, so I've grown up traveling around the U.S., and so far, I'd say my two favorite cities (aside from Austin, where I live) are Chicago (even in the snow it was absolutely amazing) and San Diego. Nothing like the energy of a metropolitan city or the calmness of the beach.What are your favorite U.S. cities to travel to?PS. If you have any "must-do" recommendations while I'm in Chi-Town, I'm all ears! =)
    This topic first appeared in the Spiceworks Community

  • What are your options when you run out of hard drive space?

    What are your options when you run out of hard drive space? 

    I 110% agree, it is a disaster but it saves your mac until you recieve an external HD.
    Csound1 wrote:
    XcodeDeveloper wrote:
    I know but he just wanted options so I gave him one that helped me. If he filled up his HD a Gigabyte is sometimes a small miracle, exaggeration on small .
    OSX with 1G of free space is a disaster waiting to happen.
    Read this:

  • Error Msg, What are your thoughts

    I have not done any upgrades. The error follows below. I was just running safari and other small programs. Nothing I would consider unstable or taxing. What are your thoughts to the error?
    panic(cpu 0 caller 0x00350082): mbuf address out of range 0x954208
    Backtrace, Format - Frame : Return Address (4 potential args on stack)
    0xbcc3b04 : 0x128b5e (0x3bc46c 0xbcc3b28 0x131bbc 0x0)
    0xbcc3b44 : 0x350082 (0x3dbeb8 0x954208 0x0 0x13f5f5)
    0xbcc3b64 : 0x22e7e7 (0x1 0x2 0xbcc3b74 0xbcc3b74)
    0xbcc3c44 : 0x22bc65 (0x33cc858 0x1dbd0800 0x1 0x46000a0a)
    0xbcc3e14 : 0x22217b (0x1dbd0800 0x14 0xbcc3f14 0x20bf29d3)
    0xbcc3e54 : 0x223bff (0x1dbd0800 0x14 0x6 0x0)
    0xbcc3f64 : 0x21125d (0x1dbd0800 0x1dbd0800 0x42db5c 0x135798)
    0xbcc3fa4 : 0x1f7871 (0x2d52404 0x1dbd0800 0x1da5e816 0x1)
    0xbcc3fd4 : 0x197b19 (0x0 0x0 0x2653920 0x4a2000) Backtrace terminated-invalid frame pointer 0x0
    Kernel version:
    Darwin Kernel Version 8.7.1: Wed Jun 7 16:19:56 PDT 2006; root:xnu-792.9.72.obj~2/RELEASE_I386
    Model: MacBookPro1,1, BootROM MBP11.0055.B03, 2 processors, Intel Core Duo, 2 GHz, 512 MB
    Graphics: ATI Radeon X1600, ATY,RadeonX1600, PCIe, 128 MB
    Memory Module: DIMM1/BANK 1, 512 MB, DDR2 SDRAM, 667 MHz
    AirPort: spairportwireless_card_type_airportextreme (0x168C, 0x86), 0.1.24
    Bluetooth: Version 1.7.5f10, 2 service, 1 devices, 1 incoming serial ports
    Network Service: Built-in Ethernet, Ethernet, en0
    Network Service: AirPort, AirPort, en1
    Serial ATA Device: ST98823AS, 74.53 GB
    Parallel ATA Device: MATSHITADVD-R UJ-857
    USB Device: Hub, Up to 480 Mb/sec, 500 mA
    USB Device: Hub in Apple Pro Keyboard, Mitsumi Electric, Up to 12 Mb/sec, 500 mA
    USB Device: Apple Pro Keyboard, Mitsumi Electric, Up to 12 Mb/sec, 250 mA
    USB Device: USB Gaming Mouse, Logitech, Up to 12 Mb/sec, 500 mA
    USB Device: Built-in iSight, Micron, Up to 480 Mb/sec, 500 mA
    USB Device: IR Receiver, Apple Computer, Inc., Up to 12 Mb/sec, 500 mA
    USB Device: Apple Internal Keyboard / Trackpad, Apple Computer, Up to 12 Mb/sec, 500 mA
    USB Device: Bluetooth HCI, Up to 12 Mb/sec, 500 mA

    It sounds like it might be the Airport-related kernel panics that I and some others have had. Mine were fixed completely by a logic board replacement.
    To narrow the problem down, I found that I could test by downloading large files, many at a time, and get a kernel panic while on Airport, usually within a few minutes, always within an hour. Downloading the same large files while connected via Ethernet wouldn't result in a kernel panic. I could stay online for 24 hours on Ethernet, keeping the computer active by loading pages with webcams (that automatically refresh periodically) without ever getting a kernel panic, while I couldn't connect via Airport for anywhere near that length of time without getting a kernel panic. So I was as certain as one can be that the problem was caused by Airport.
    After doing some basic troubleshooting (resetting the PMU, repairing permissions) and even an erase and reinstall of Mac OS X, I called AppleCare with this information and described what I had tested. I would recommend doing the same to narrow down the problem and, if it's the same Airport-related kernel panic issue I had, arrange for a repair.

  • Better battery comparison - what are your thoughts.

    Most people are judging their battery usage by times of day. I want comparisons by usage. Go to settings/general/usage and it will tell you the usage since "time since last full charge". What are your times....Mine are for today since I charged overnight.
    Usage 3:12 hours
    Standby 7:59 hours
    Batter percent 46%
    Most of my usage has been twitter or email. A little bit of game usage.
    (yes I realize there are other threads of battery comparison but they are all comparing how much batter they have during times of day but that is dumb because there is no telling what you have been doing with your phone.)

    Hi there, i have recently bought a new iphone 3GS and i'm seeing the same resaults for my battery and i own a 3G as well which my wife now uses and ive noticed that after upgrading to 3.0 its battery was depleting a bit faster then when it was on 2.2.1.
    I logged my 3GS and i got in one day
    Usage : 6 hourr/ using wifi most of the day, internet use, mail, ipod, SMS, and watched about 40 minutes of video.
    Standby: 12 hours
    after all that it died and shut off.
    I've tried draining the battery twice now to condtition my battery and i saw about a 7 percent jump each time so maybe that is working. I was getting about 4 and half hours hours before i conditioned and then about 5:45 mins and then about 6 hours.
    I do remember last year when 2.0 came out my 3G had terrible battery life, very similar to what i'm seeing with my 3GS, and 2.0 was fixed with a firmware, so i only hope that the first firmwre will address this issue.
    Or apple could just tell us the truth that the new phone has worse battery life then last yeasr model.
    I did a percentage stat of life i was getting by 1 percent and i found that for each percent that depleted i got about 3 minutes and 45 seconds. If i was on 3G and surfing or checking email, i was getting about 2 minutes and 34 seconds, i literally could watch my battery depleted like i was driving a hemi and watching the gas gauge go down. So if apple claims that your supposed to get about 9 hours of regular usage on wifi or just playing movies and music and games, and 5 hours of usage on 3G, there must have some sorda super model we all dont have!!!!?????

  • Aperture RAW conversion and noise

    I've been using Aperture for many years and have recently learned something useful about how to tweak the RAW conversion settings.  Until recently I just left them at the default settings for my camera, a Panasonic GH2.
    Anyhow I've not been entirely happy with shadow noise (otherwise I reckon it's a great camera).  Many web sites say that a degree of shadow noise is normal for this camera, so I didn't figure mine was any different.  I tried a variety of noise reduction approaches but none really made a worthwhile improvement.
    Until a few days ago when I tried tweaking the 'Raw Fine Tuning' settings - and I found a way to make things *much* better.
    Please note that the following comments may only be relevant to Panasonic RAW files, and maybe only for the GH2.  I don't know if they apply to other cameras (though I think they may.
    It turns out that for the GH2, the default 'Raw Fine Tuning' setting includes 'Sharpening' of 0.78 and 'Edges' of 0.79.  This is fairly aggressive sharpening, but I didn't really realise what it was doing to noise until I  discovered that was significantly increasing shadow noise -even at base ISO!
    If I set these both the sharpening sliders in the Raw Fine Tuning section to '0', the 'grain' in the shadows is much smoother - a massive improvement.
    But, of course, the image is a bit less 'sharp'.  Well, this isn't much of a problem with 16+ megapixel cameras.  Unless you are making huge enlargements from originals, and really look closely at the finest details at 100%, it makes very little difference if you give up this 'sharpness'.  But the reduction in noise is actually very obvious indeed.  It's much better! 
    Most of the sharpness I need on these less noisy images can easily be added by including the 'Edge Sharpen' adjustment, either at the defailt settings, or marginally toned down a bit.  I'm currently using Intensity 0.7, Edges 0.3 and Falloff 0.4.  This leaves most smooth areas untouched, so the 'noise' or 'grain' in smooth areas is as it comes from the sensor.  By toggling the Edge Sharpen on and off, I can easily confirm no change in 100% or 200% loupe views. 
    That level of edge sharpening is a bit subtle, but actually achieves most of what I got from the Raw Fine Tuning sharpening sliders.  It will be applied only to in-focus contrasty things like eyelashes or hairs or other defined edges, and very nicely.
    So I'm sharing this in case other people also find it helpful.  I strongly suggest removing the default sharpening entirely, and only using the Edge Sharpening slider in a cautious manner if you want to enhance sharpness.
    Some related web pages:
    http://www.jonroemer.com/blog/2011/01/aperture-3-too-sharp-tweak-the-default/
    http://www.twin-pixels.com/raw-processors-review-aperture-bibble-capture-one-dxo -lightroom/
    PS - there is a different issue with the default Raw Fine Tuning 'Boost' and 'Hue Boost' sliders, both of which are set to 1' by default.  It turns out that these introduce a very large amount of contrast and exposure gain - turn them down to zero and the image goes quite dark and flat!  The Aperture user guide says something about Hue Boost changing colours when Boost is set to '1' and this is the case.  So I've experimented with turning them both to zero, and instead using a custom curves adjustment to achieve a similar level of exposure and contrast to the default conversion and the camera's default JPG image.  By fine-tweaking the curves one can get better control of blown highlights and the overall contrast.  I'm not sure if the colours are 'better', but I think so.  I am fairly sure that I get smoother transitions in the mid-tonal ranges with this approach rather than just using Apple's default settings.  Maybe they are a but strong for my liking.  Certainly I can make curves that rarely require the 'Recovery' slider to fix over-boosted highlights.  Anyhow, you may also find that this tweak helps a bit.  Interestingly on a Canon RAW file the effect is not nearly as great in exposure terms, but there is also a definite colour change.
    PSS - the end result is that I have set my camera preset for RAW fine tuning to zero settings for boost, hue boost, sharpening and edges.  I then add contrast as needed using curves, and sharpen only with a little edge sharpening.  I've then saved a few Presets with slightly different contrast curves and all with a little edge sharpening.  I can very quickly select the level of contrast needed, and I am very confident that my results are quite a bit better, with better tonal gradations and much less noise.
    Hope this helps
    Chris.

    Nice observations, Chris.  I think the RAW Fine Tuning is often overlooked, even though it's a vital first step in RAW processing, and really the whole point of shooting RAW in the first place.  Too much boost yields horrible skin tones in my experience.  I have a default of .50 Boost and Hue Boost, Sharpening and Edges at .25, Moire .50, Radius 12.0 and Denoise .25.  I've found these are "mid range" settings for the Canon 5Dii, and first make small adjustments to the Fine Tuning brick before moving on to exposure adjustments. 

  • Aperture RAW conversion colour noise with Canon 1D Mark II

    I'm using Aperture 2.1 and am wondering if anyone here is having this problem - basically highlights end up with false colour with this camera/RAW conversion combination. The problems appears to have been introduced with the 1.1 RAW converter as 1.0 conversions don't seem to have the problem. I'm not sure if this is camera specific, or whether there is some tuning which can be done to the RAW converter to minimise the effect - attempts have so far failed with this approach.
    The best subject to produce the effect is strong reflections from water - i've attached a crop of an image which shows this problem, and I can supply a RAW with this problem.
    Conversion using RAW 1.0 (less or no colour pixelation):
    http://www.loftsoft.co.uk/pictures/KC7U5116%20-%20RAW%201.0.jpg
    Conversion using RAW 2.0 (colour pixelation):
    http://www.loftsoft.co.uk/pictures/KC7U5116%20-%20RAW%202.0.jpg
    Any suggestions as to what to do? Is this simply a RAW conversion problem which can be addressed or am I using the tool wrong?
    Many thanks,
    Cesare

    Hmm. I can see some color effects in the 1.0 conversion as well.
    Those are some touch photos... you have lots of specular highlights with the sun reflecting off the water and the railing.
    Aperture 2.x and 1.x handle the RAW conversion differently. I would suggest you try playing with the RAW Fine Tuning brick, specifically with the Moire and Radius sliders, and try fiddling with the Auto Noise Compensation checkbox.
    I don't know whether you'll be able to make the problem go away completely or not.
    With my ~30,000 1D Mark II files I've seen something similar to this (though much less extreme) on a couple of them. Always with specular highlights though -- off water or metal objects.
    Still, you may wish to submit Aperture feedback and include the RAW file.

  • Forms and validations - here's some of my ideas, what are yours?

    One of the big things still missing from the JFX space (especially where JEE is concerned) is forms and form validations. Maybe you guys have been luckier but at least 80% of the screens I've had to build in my career have been boring old forms - enter data in the fields, validate them and hit submit.
    So, I've been hacking around on this to try and get a pattern and hopefully some reusable classes for doing this in JavaFX. I have something that works but the code is verbose and less than elegant. I'm hoping some of you guys might want to kick around some ideas on this with me here. If we can come up with something that works, I'd like to either include it in [url http://www.zenjava.com/jfx-flow/]JFX Flow, or put it out as a separate open source project (whichever makes more sense).
    What I think needs to be supported:
    * Map between a normal Java bean and the fields on a form
    * Validate the data, i.e. specifying the constraints on a field and then checking those constraints
    * Show a validation summary at the top of the form
    * Highlight individual fields if they have validation errors
    * Support auto-validation, i.e. the validation highlights and messages will instantly update as the user types
    Some extra restrictions:
    * The data input will ideally be a normal bean and so it won't have observable values on it. In most projects I use, the beans are coming from the server and sometimes may be shared between desktop client and a jsp/web client, or even be a third party API so they can't be changed. End result: we don't want any JFX complexities or dependencies in our server code (design leak). This rule could be bent but only as a last resort.
    * The validations must be defined relative to the normal data bean not a JFX model or controller, etc. This is so the bean can be validated on the server as well as the client. The server must do validation to prevent dodgy data getting in (never trust a client). Ideally we don't want to be specifying the validations in two places (i.e. once for the client and once for the server) as this creates maintenance problems and weakens the integrity of the system over time.
    * Ideally the validation mechanism will be based on [url http://java.dzone.com/articles/bean-validation-and-jsr-303]JSR 303 - Bean Validations as this is quite nice. This is flexible however if there is a suitable alternative that integrates better.
    To give us something to reference in conversation, I've created a small working sample. This is only meant to be a rough starting point (at best) and I'd really like to get feedback on both the code (i.e. should we have a 'presentation model', how could bindings be better used, etc) and the general way I'm representing errors (i.e. should we use tooltips to show errors, or actually show the errors next to the field, should we use border colours or put a little exclamation mark over the field, should the fields be auto-validated or only validated on submit, etc).
    The example is a single form for editing a person. It has three fields, first name, last name and gender. When the form is blank, auto-editing is off. When the user submits the form it is validated and from that point on auto-validating is on. Error fields are highlighted with a style change, and a tooltip is added with details (I think we can do better - what's your ideas?).
    I have used all plain Java to keep thngs simple, but I'd be looking for the end result to translate to FXML as well. I've also coded everything into the one class but the eventual goal would be to have the common stuff moved out to reusable base classes, etc.
    Here's a workspace with some example code in it: http://code.google.com/p/jfxee/source/browse/trunk/jfxforms/
    Here's a running deploy of that code: http://zenjava.com/demo/form/forms.html
    (edit: I've moved the code to its own project and changed the url for the launch - the values above are the new, correct ones)
    Looking forward to hearing some thoughts on this topic.
    Edited by: zonski on 01-Dec-2011 13:41

    At Devoxx I did some straw man prototype that you might find useful (or hopeless, I'm not sure which, I did it in a hurry :-)). I followed some principles that I was influenced by years back by JGoodies, but I haven't looked at the JGoodies stuff in forever and know it isn't all the same. But anyway, like I said, I'm not sure it is actually useful but maybe there is something genius hidden in there.
    I have a Validator, which is just a simple SAM:
    import javafx.scene.control.Control;
    * @author Richard
    public interface Validator<C extends Control> {
        public ValidationResult validate(C control);
    }The idea is that it is given a Control, it will validate that control, and then return a ValidationResult. ValidationResult is actually only needed in cases of errors, since returning null indicates success, so the following is somewhat of a crock but you could rename it ValidationError or something and remove the "SUCCESS" type and there you are.
    public class ValidationResult {
        public enum Type { ERROR, WARNING, SUCCESS }
        private final String message;
        private final Type type;
        public ValidationResult(String message, Type type) {
            this.message = message;
            this.type = type;
        public final String getMessage() {
            return message;
        public final Type getType() {
            return type;
        }For good measure I threw in a ValidationEvent.
    import javafx.event.Event;
    import javafx.event.EventType;
    * @author Richard
    public class ValidationEvent extends Event {
        public static final EventType<ValidationEvent> ANY =
                new EventType<ValidationEvent>(Event.ANY, "VALIDATION");
        private final ValidationResult result;
        public ValidationEvent(ValidationResult result) {
            super(ANY);
            this.result = result;
        public final ValidationResult getResult() { return result; }
    }Because Control's don't presently have the notion of validation built in, I created a ValidationPane which is like a specialized StackPane, where there is a bottom layer, the control, and a glass pane layer. And from CSS you can style it however you like. The ValidationPane has a CSS style class set in case of errors / warnings. So without augmenting controls, the idea is that a ValidationPane subclass would exist to wrap each type of control you needed to validate. It did this because somebody has to wire up the listeners to the control to react on text input etc, and so I thought I'd like that encapsulated in something reusable, and there it was.
    import javafx.beans.DefaultProperty;
    import javafx.beans.property.ObjectProperty;
    import javafx.beans.property.ReadOnlyObjectProperty;
    import javafx.beans.property.ReadOnlyObjectWrapper;
    import javafx.beans.property.SimpleObjectProperty;
    import javafx.beans.value.ChangeListener;
    import javafx.beans.value.ObservableValue;
    import javafx.event.EventHandler;
    import javafx.scene.control.Control;
    import javafx.scene.layout.Region;
    * @author Richard
    @DefaultProperty("content")
    public abstract class ValidatorPane<C extends Control> extends Region {
         * The content for the validator pane is the control it should work with.
        private ObjectProperty<C> content = new SimpleObjectProperty<C>(this, "content", null);
        public final C getContent() { return content.get(); }
        public final void setContent(C value) { content.set(value); }
        public final ObjectProperty<C> contentProperty() { return content; }
         * The validator
        private ObjectProperty<Validator<C>> validator = new SimpleObjectProperty<Validator<C>>(this, "validator");
        public final Validator<C> getValidator() { return validator.get(); }
        public final void setValidator(Validator<C> value) { validator.set(value); }
        public final ObjectProperty<Validator<C>> validatorProperty() { return validator; }
         * The validation result
        private ReadOnlyObjectWrapper<ValidationResult> validationResult = new ReadOnlyObjectWrapper<ValidationResult>(this, "validationResult");
        public final ValidationResult getValidationResult() { return validationResult.get(); }
        public final ReadOnlyObjectProperty<ValidationResult> validationResultProperty() { return validationResult.getReadOnlyProperty(); }
         *  The event handler
        private ObjectProperty<EventHandler<ValidationEvent>> onValidation =
                new SimpleObjectProperty<EventHandler<ValidationEvent>>(this, "onValidation");
        public final EventHandler<ValidationEvent> getOnValidation() { return onValidation.get(); }
        public final void setOnValidation(EventHandler<ValidationEvent> value) { onValidation.set(value); }
        public final ObjectProperty<EventHandler<ValidationEvent>> onValidationProperty() { return onValidation; }
        public ValidatorPane() {
            content.addListener(new ChangeListener<Control>() {
                public void changed(ObservableValue<? extends Control> ov, Control oldValue, Control newValue) {
                    if (oldValue != null) getChildren().remove(oldValue);
                    if (newValue != null) getChildren().add(0, newValue);
        protected void handleValidationResult(ValidationResult result) {
            getStyleClass().removeAll("validation-error", "validation-warning");
            if (result != null) {
                if (result.getType() == ValidationResult.Type.ERROR) {
                    getStyleClass().add("validation-error");
                } else if (result.getType() == ValidationResult.Type.WARNING) {
                    getStyleClass().add("validation-warning");
            validationResult.set(result);
            fireEvent(new ValidationEvent(result));
        @Override
        protected void layoutChildren() {
            Control c = content.get();
            if (c != null) {
                c.resizeRelocate(0, 0, getWidth(), getHeight());
        @Override
        protected double computeMaxHeight(double d) {
            Control c = content.get();
            return c == null ? super.computeMaxHeight(d) : c.maxHeight(d);
        @Override
        protected double computeMinHeight(double d) {
            Control c = content.get();
            return c == null ? super.computeMinHeight(d) : c.minHeight(d);
        @Override
        protected double computePrefHeight(double d) {
            Control c = content.get();
            return c == null ? super.computePrefHeight(d) : c.prefHeight(d);
        @Override
        protected double computePrefWidth(double d) {
            Control c = content.get();
            return c == null ? super.computePrefWidth(d) : c.prefWidth(d);
        @Override
        protected double computeMaxWidth(double d) {
            Control c = content.get();
            return c == null ? super.computeMaxWidth(d) : c.maxWidth(d);
        @Override
        protected double computeMinWidth(double d) {
            Control c = content.get();
            return c == null ? super.computeMinWidth(d) : c.minWidth(d);
    }And finally the TextInputValidatorPane instance good for any TextInputControl. I think.
    import javafx.beans.InvalidationListener;
    import javafx.beans.Observable;
    import javafx.beans.value.ChangeListener;
    import javafx.beans.value.ObservableValue;
    import javafx.scene.control.TextInputControl;
    * @author Richard
    public class TextInputValidatorPane<C extends TextInputControl> extends ValidatorPane<C> {
        private InvalidationListener textListener = new InvalidationListener() {
            public void invalidated(Observable o) {
                final Validator v = getValidator();
                final ValidationResult result = v != null ?
                    v.validate(getContent()) :
                    new ValidationResult("", ValidationResult.Type.SUCCESS);
                handleValidationResult(result);
        public TextInputValidatorPane() {
            contentProperty().addListener(new ChangeListener<C>() {
                public void changed(ObservableValue<? extends C> ov, C oldValue, C newValue) {
                    if (oldValue != null) oldValue.textProperty().removeListener(textListener);
                    if (newValue != null) newValue.textProperty().addListener(textListener);
        public TextInputValidatorPane(C field) {
            this();
            setContent(field);
    }This should also be usable as is from FXML since you can easily wrap a TextInputValidatorPane around a TextField, and CSS does all the styling, so I think it all just works. You probably need to have some library of sophisticated Validators which know how to read text from a TextField and compare against the validation annotations, but otherwise it should work well enough. Anyway, in the actual implementation I think I would omit the ValidationPane stuff completely and just build that part into the controls / skins. Like I said, this was a quick hack but seemed to get the "how do I visualize validation errors" part of the problem solved.
    Richard

  • What are your top 10 issues to upgrade E-Business Suite

    Hi everyone,
    My name is Max Arderius, Product Manager for Life Cycle Management products in Oracle. We are doing a big effort to help customers to simplify their E-Business Suite upgrade. We are trying to collect all the information we can to identify the top issues that customers are facing before, during or after E-Business Suite upgrades. We are really committed to address all possible issues and so we can prevent usual problems, showstoppers, inconveniences, lack of documentation and other technical difficulties.
    What would you say are your top 10 issues that faced to upgrade to R12? Or what would you like Oracle to address in the near future to make your life easier?
    I am looking forward for your postings! Thanks!
    Max

    Hi Max ! Hope you are well :-)
    One thing that I assume most folks would find useful is a pre-upgrade script that can do some basic checks to identify any potential issues that need to be addressed before the upgrade starts.
    A simple example is documented in MOS Doc 802515.1 (R12 Upgrade: Workers Fail In Apstca01.Sql) - the profile option in our system was set to NULL (the default) and the apstca01.sql failed in the middle of the first test upgrade - not a big issue, but would have been nice to have this corrected before the upgrade.
    I am sure that are hundreds of such "gotchas" from all the various modules :-)
    This script is almost analogous to the database pre-upgrade script/tool (http://download.oracle.com/docs/cd/E11882_01/server.112/e17222/upgrade.htm#UPGRD12395) that performs some checks and makes recommendations.
    Thanks
    Srini

  • PT880----Possible cold boot issue-----What are YOUR boot times??

    I may have an issue with this board that I hadn't really noticed since I've been so heavy into the max overclock I could get.
    My post and then boot time is strange and annoying-----and sometimes I have to just shut off and turn on-----to actually complete the process.  It just seems WAY too long!  But maybe this is normal for the chipset.
    Turn on>>>>>to POST beep = 40 seconds----D-Bracket shows code of "Memory Detection" during this time.....(----This is the time that seems way out of whack)----most boards I've ever had go from turn on>>>>to Post beep VERY quickly.
    From POST beep>>>>>to "Welcome" screen in BOOT = another 20 seconds
    Completion of BOOT = another 10 seconds-----not so much worried about this one as I would think it would be Windows dependent and what additional software was loaded.
    This total process seems remarkably slow----and again----sometimes-----I NEVER get the post beep (The D-Bracket code is stuck in Memory Detection) and I have to turn the machine off and start again.
    What are you guys' times with your PT880????  I tried two different types of RAM---no difference----changing RAM DIMM slots-----no difference----changing RAM timings and voltages----no difference-----I also ran Memtest on both sets of RAM (passed), reflashed Bios----cleared CMOS, and reset NVRAM----no change.
    Any ideas???  Beta Bios 1.53 issue??
    John

    Quote
    Originally posted by markt435
    Well I finally got my system fixed.  Hmmm I have about a 20 sec start up.  My proc is overclocked to 3.4Ghz as well.  I would try reseating memory or clearing the BIOS.  Or putting different sticks of memory in if you have any laying around.
    Already done-----See last paragraph of my post....

  • What are your experiences in integrating Windows AD and Linux

    I got into a job with a domain of about 70 Windows PCs and about 100 Linux machines.
    The domains are quite old, and I mean Samba 4 and NIS old. Obviously one wants something newer, as in AD on the Windows side and Kerberos/LDAP on the Linux side. Preferably with a single user-database.
    Question to the more experienced members:
    Should I go
    - Windows based and use something like an OpenLDAP Proxy for the Linux-LDAP
    or
    - Samba 4 based AD with the same
    or
    - Any of the above with Linux attributes added to the user entries in LDAP
    What are thoughts and experiences on this? Especially is Samba 4 stable enough to be used in a production environment? What experiences with having Linux machines running in AD directly or via LDAP Proxy/Kerberos Proxy?

    1. Thsi contribution is not discussion, it is question. So better category is needed.
    2. Samba forum is better platform for topics llike Samba stability. Your infrastructure is much closer to Linux one.
    3. As you has landed in Windows Server forum, I would recommend using Windows Server 2012 R2. This is stable and reliable. Homogeneous infrastructure brings less headaches that hybrid one.
    Regards
    Milos

Maybe you are looking for

  • Issues with images in Yosemite (Can't load images correctly)

    I have been experiencing a weird behavior in Yosemite (10.10.1), related to opening images of any kind in most of my programs in my MacBook pro 15" (Late 2011). Images would not load correctly, showing a bizarre pattern of black stripes (example imag

  • IPhoto Library - Images marked: "not found"

    Hi All my macBook info was recently transferred to my new iMac when I  purchased it.  I added Lion to it from the website. Now I've discovered that all the images in my iPhoto library are marked as "not found" - yikes! Pulling up iPhoto all the image

  • Help! my iphone doesn't charge

    My iphone does not charge, when I try charging it there comes a sign in the upper right corner that my iPhone 5 is completely charged, even if its not and i can't turn it on because the battery is empty... What can i do? :'(

  • Oracle Components to be installed for Generic/ODBC connetivity

    Hi, any one know what all components to be installed which all used by Oracle Generic / ODBC connectivity. Regar.ds

  • ## no data returned

    Hi, I tried the following codes but can't get any data back. I used reversemapping to create my class, how to debug this? ( I am sure there is data in oracle db) thanks PersistenceManagerFactory pmf = KodoHelper.getPersistenceManagerFactory ("kodo.pr