Author: jcompagner
Date: Wed Oct 31 16:23:31 2007
New Revision: 590861

URL: http://svn.apache.org/viewvc?rev=590861&view=rev
Log:
fix for Page.checkRendering and transparent resolvers, none visible markup 
containers. Its a simple extra check, dont throw the exceptions if a component 
isn't rendered and it has a sibling that is not visible and a transparent 
resolver.
WICKET-1095

Modified:
    wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.core.prefs
    wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.ui.prefs
    wicket/trunk/jdk-1.4/wicket-ioc/.settings/org.eclipse.jdt.core.prefs
    wicket/trunk/jdk-1.4/wicket/.settings/org.eclipse.jdt.core.prefs
    wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Page.java
    wicket/trunk/jdk-1.5/wicket-examples/.settings/org.eclipse.jdt.core.prefs

Modified: 
wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.core.prefs
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.core.prefs?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.core.prefs 
(original)
+++ wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.core.prefs 
Wed Oct 31 16:23:31 2007
@@ -1,4 +1,4 @@
-#Sun Jul 01 09:58:45 PDT 2007
+#Thu Nov 01 00:20:08 CET 2007
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -74,15 +74,15 @@
 
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_assignment=0
 org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=20
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
 
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
 
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=64
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=64
 
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
@@ -125,7 +125,7 @@
 org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
 org.eclipse.jdt.core.formatter.comment.line_length=100
 org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation=1
 org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
 org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
 
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
@@ -321,5 +321,5 @@
 org.eclipse.jdt.core.formatter.tabulation.char=tab
 org.eclipse.jdt.core.formatter.tabulation.size=4
 org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=falseorg.eclipse.jdt.core.incompatibleJDKLevel=ignore
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=false
 org.eclipse.jdt.core.incompleteClasspath=error

Modified: 
wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.ui.prefs
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.ui.prefs?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.ui.prefs 
(original)
+++ wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.ui.prefs 
Wed Oct 31 16:23:31 2007
@@ -1,4 +1,4 @@
-#Wed Aug 15 11:20:50 PDT 2007
+#Thu Nov 01 00:20:07 CET 2007
 comment_clear_blank_lines=false
 comment_format_comments=true
 comment_format_header=true
@@ -10,10 +10,10 @@
 comment_new_line_for_parameter=true
 comment_separate_root_tags=true
 eclipse.preferences.version=1
-formatter_profile=_Wicket
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_wicket
 formatter_settings_version=11
 internal.default.compliance=default
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
 org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" 
encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="false" 
context\="gettercomment_context" deleted\="false" description\="Comment for 
getter method" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" 
name\="gettercomment">/**\r\n * Gets ${bare_field_name}.\r\n * @return 
${bare_field_name}\r\n */</template><template autoinsert\="false" 
context\="settercomment_context" deleted\="false" description\="Comment for 
setter method" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" 
name\="settercomment">/**\r\n * Sets ${bare_field_name}.\r\n * @param ${param} 
${bare_field_name}\r\n */</template><template autoinsert\="false" 
context\="constructorcomment_context" deleted\="false" description\="Comment 
for created constructors" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" 
name\="constructorcomment">/**\r\n * Construct.\r\n
  * ${tags}\r\n */</template><template autoinsert\="false" 
context\="filecomment_context" deleted\="false" description\="Comment for 
created Java files" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" 
name\="filecomment"/><template autoinsert\="false" 
context\="typecomment_context" deleted\="false" description\="Comment for 
created types" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" 
name\="typecomment">/**\r\n * @author ${user}\r\n * ${tags}\r\n 
*/</template><template autoinsert\="true" context\="fieldcomment_context" 
deleted\="false" description\="Comment for fields" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" 
name\="fieldcomment">/**\r\n * \r\n */</template><template autoinsert\="true" 
context\="methodcomment_context" deleted\="false" description\="Comment for 
non-overriding methods" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" 
name\="methodcomment">/**\r\n * ${tags}
 \r\n */</template><template autoinsert\="false" 
context\="overridecomment_context" deleted\="false" description\="Comment for 
overriding methods" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" 
name\="overridecomment">/**\r\n * ${see_to_overridden}\r\n 
*/</template><template autoinsert\="false" context\="newtype_context" 
deleted\="false" description\="Newly created files" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*\r\n * 
Licensed to the Apache Software Foundation (ASF) under one or more\r\n * 
contributor license agreements.  See the NOTICE file distributed with\r\n * 
this work for additional information regarding copyright ownership.\r\n * The 
ASF licenses this file to You under the Apache License, Version 2.0\r\n * (the 
"License"); you may not use this file except in compliance with\r\n * the 
License.  You may obtain a copy of the License at\r\n *\r\n *      
http\://www.apache.org/licenses/LICENSE-2.0\r\
 n *\r\n * Unless required by applicable law or agreed to in writing, 
software\r\n * distributed under the License is distributed on an "AS IS" 
BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.\r\n * See the License for the specific language governing permissions 
and\r\n * limitations under the License.\r\n 
*/\r\n${filecomment}\r\n${package_declaration}\r\n\r\n${typecomment}\r\n${type_declaration}</template><template
 autoinsert\="false" context\="catchblock_context" deleted\="false" 
description\="Code in new catch blocks" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">throw 
new RuntimeException(${exception_var});</template><template autoinsert\="false" 
context\="methodbody_context" deleted\="false" description\="Code in created 
method stubs" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" 
name\="methodbody">${body_statement}</template><template autoinsert\="false" 
context\="c
 onstructorbody_context" deleted\="false" description\="Code in created 
constructor stubs" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" 
name\="constructorbody">${body_statement}</template><template 
autoinsert\="true" context\="getterbody_context" deleted\="false" 
description\="Code in created getters" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" 
name\="getterbody">return ${field};</template><template autoinsert\="true" 
context\="setterbody_context" deleted\="false" description\="Code in created 
setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" 
name\="setterbody">${field} \= ${param};</template><template autoinsert\="true" 
context\="classbody_context" deleted\="false" description\="Code in new class 
type bodies" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.classbody" 
name\="classbody">\r\n</template><template autoinsert\="true" 
context\="interfacebody_context" deleted\="false" 
 description\="Code in new interface type bodies" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" 
name\="interfacebody">\r\n</template><template autoinsert\="true" 
context\="enumbody_context" deleted\="false" description\="Code in new enum 
type bodies" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" 
name\="enumbody">\r\n</template><template autoinsert\="true" 
context\="annotationbody_context" deleted\="false" description\="Code in new 
annotation type bodies" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" 
name\="annotationbody">\r\n</template><template autoinsert\="true" 
context\="delegatecomment_context" deleted\="false" description\="Comment for 
delegate methods" enabled\="true" 
id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" 
name\="delegatecomment">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n 
*/</template></templates>
 sp_cleanup.add_default_serial_version_id=true
 sp_cleanup.add_generated_serial_version_id=false

Modified: wicket/trunk/jdk-1.4/wicket-ioc/.settings/org.eclipse.jdt.core.prefs
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket-ioc/.settings/org.eclipse.jdt.core.prefs?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket-ioc/.settings/org.eclipse.jdt.core.prefs 
(original)
+++ wicket/trunk/jdk-1.4/wicket-ioc/.settings/org.eclipse.jdt.core.prefs Wed 
Oct 31 16:23:31 2007
@@ -1,4 +1,4 @@
-#Wed Apr 11 14:49:10 CEST 2007
+#Thu Nov 01 00:12:54 CET 2007
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -73,15 +73,15 @@
 
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_assignment=0
 org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=20
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
 
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
 
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=64
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=64
 
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
@@ -124,7 +124,7 @@
 org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
 org.eclipse.jdt.core.formatter.comment.line_length=100
 org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation=1
 org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
 org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
 
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true

Modified: wicket/trunk/jdk-1.4/wicket/.settings/org.eclipse.jdt.core.prefs
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/.settings/org.eclipse.jdt.core.prefs?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/.settings/org.eclipse.jdt.core.prefs (original)
+++ wicket/trunk/jdk-1.4/wicket/.settings/org.eclipse.jdt.core.prefs Wed Oct 31 
16:23:31 2007
@@ -1,4 +1,4 @@
-#Tue Aug 21 13:32:03 CEST 2007
+#Thu Nov 01 00:12:54 CET 2007
 eclipse.preferences.version=1
 instance/org.eclipse.core.net/org.eclipse.core.net.hasMigrated=true
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
@@ -74,15 +74,15 @@
 
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_assignment=0
 org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=20
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
 
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
 
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=64
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=64
 
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
@@ -125,7 +125,7 @@
 org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
 org.eclipse.jdt.core.formatter.comment.line_length=100
 org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation=1
 org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
 org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
 
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true

Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Page.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Page.java?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Page.java 
(original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Page.java Wed 
Oct 31 16:23:31 2007
@@ -22,6 +22,7 @@
 import java.io.ObjectStreamException;
 import java.util.ArrayList;
 import java.util.HashSet;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
 
@@ -40,7 +41,6 @@
 import org.apache.wicket.util.lang.Classes;
 import org.apache.wicket.util.lang.Objects;
 import org.apache.wicket.util.string.StringValue;
-import org.apache.wicket.util.value.Count;
 import org.apache.wicket.version.IPageVersionManager;
 import org.apache.wicket.version.undo.Change;
 import org.slf4j.Logger;
@@ -146,7 +146,7 @@
                 * 
                 */
                public Page deserializePage(int id, String name, Page page, 
ObjectInputStream stream)
-                               throws IOException, ClassNotFoundException;
+                       throws IOException, ClassNotFoundException;
 
                /**
                 * Called from the [EMAIL PROTECTED] 
Page#writeObject(java.io.ObjectOutputStream)} method.
@@ -337,7 +337,7 @@
        // that forwards to IAuthorizationStrategy for RequestListenerInterface
        // invocations.
        public void afterCallComponent(final Component component,
-                       final RequestListenerInterface listener)
+               final RequestListenerInterface listener)
        {
        }
 
@@ -358,7 +358,7 @@
        // that forwards to IAuthorizationStrategy for RequestListenerInterface
        // invocations.
        public void beforeCallComponent(final Component component,
-                       final RequestListenerInterface listener)
+               final RequestListenerInterface listener)
        {
        }
 
@@ -380,7 +380,7 @@
                        if (renderedComponents.add(component) == false)
                        {
                                throw new MarkupException("The component " + 
component +
-                                               " has the same wicket:id as 
another component already added at the same level");
+                                       " has the same wicket:id as another 
component already added at the same level");
                        }
                        if (log.isDebugEnabled())
                        {
@@ -585,7 +585,7 @@
                        else
                        {
                                log.info("No version manager available to 
retrieve requested versionNumber " +
-                                               versionNumber);
+                                       versionNumber);
                                return null;
                        }
                }
@@ -614,7 +614,7 @@
 
                                // If we went all the way back to the original 
page
                                if (page != null && 
page.getCurrentVersionNumber() == 0 &&
-                                               page.getAjaxVersionNumber() == 
0)
+                                       page.getAjaxVersionNumber() == 0)
                                {
                                        // remove version info
                                        page.versionManager = null;
@@ -655,7 +655,7 @@
                                        levels++;
                                }
                                buffer.append(StringValue.repeat(levels, "      
") + component.getPageRelativePath() +
-                                               ":" + 
Classes.simpleName(component.getClass()));
+                                       ":" + 
Classes.simpleName(component.getClass()));
                                return null;
                        }
                });
@@ -751,7 +751,7 @@
                        if (getStatelessHint())
                        {
                                log.warn("Page '" + this + "' is not stateless 
because it is not bookmarkable, " +
-                                               "but the stateless hint is set 
to true!");
+                                       "but the stateless hint is set to 
true!");
                        }
                }
 
@@ -783,7 +783,7 @@
                        if (!stateless.booleanValue() && getStatelessHint())
                        {
                                log.warn("Page '" + this + "' is not stateless 
because of '" + returnArray[0] +
-                                               "' but the stateless hint is 
set to true!");
+                                       "' but the stateless hint is set to 
true!");
                        }
                }
 
@@ -812,13 +812,13 @@
         *            will remain unchanged.
         */
        public final void removePersistedFormData(final Class formClass,
-                       final boolean disablePersistence)
+               final boolean disablePersistence)
        {
                // Check that formClass is an instanceof Form
                if (!Form.class.isAssignableFrom(formClass))
                {
                        throw new WicketRuntimeException("Form class " + 
formClass.getName() +
-                                       " is not a subclass of Form");
+                               " is not a subclass of Form");
                }
 
                // Visit all children which are an instance of formClass
@@ -965,8 +965,8 @@
                if (value && !isBookmarkable())
                {
                        throw new WicketRuntimeException(
-                                       "Can't set stateless hint to true on a 
page when the page is not bookmarkable, page: " +
-                                                       this);
+                               "Can't set stateless hint to true on a page 
when the page is not bookmarkable, page: " +
+                                       this);
                }
                setFlag(FLAG_STATELESS_HINT, value);
        }
@@ -994,13 +994,13 @@
                if (versionManager != null)
                {
                        return "[Page class = " + getClass().getName() + ", id 
= " + getId() + ", version = " +
-                                       
versionManager.getCurrentVersionNumber() + ", ajax = " +
-                                       versionManager.getAjaxVersionNumber() + 
"]";
+                               versionManager.getCurrentVersionNumber() + ", 
ajax = " +
+                               versionManager.getAjaxVersionNumber() + "]";
                }
                else
                {
                        return "[Page class = " + getClass().getName() + ", id 
= " + getId() + ", version = " +
-                                       0 + "]";
+                               0 + "]";
                }
        }
 
@@ -1018,8 +1018,7 @@
                final IDebugSettings debugSettings = 
Application.get().getDebugSettings();
                if (debugSettings.getComponentUseCheck() && 
!getResponse().isRedirect())
                {
-                       final Count unrenderedComponents = new Count();
-                       final List unrenderedAutoComponents = new ArrayList();
+                       final List unrenderedComponents = new ArrayList();
                        final StringBuffer buffer = new StringBuffer();
                        renderedContainer.visitChildren(new IVisitor()
                        {
@@ -1029,22 +1028,16 @@
                                        if (renderedComponents == null || 
!renderedComponents.contains(component))
                                        {
                                                // If auto component ...
-                                               if (component.isAuto())
-                                               {
-                                                       // Add to list of 
unrendered auto components to
-                                                       // delete below
-                                                       
unrenderedAutoComponents.add(component);
-                                               }
-                                               else if 
(component.isVisibleInHierarchy())
+                                               if (!component.isAuto() && 
component.isVisibleInHierarchy())
                                                {
                                                        // Increase number of 
unrendered components
-                                                       
unrenderedComponents.increment();
+                                                       
unrenderedComponents.add(component);
 
                                                        // Add to explanatory 
string to buffer
-                                                       
buffer.append(Integer.toString(unrenderedComponents.getCount()) + ". " +
-                                                                       
component + "\n");
+                                                       
buffer.append(Integer.toString(unrenderedComponents.size()) + ". " +
+                                                               component + 
"\n");
                                                        String metadata = 
(String)component
-                                                                       
.getMetaData(Component.CONSTRUCTED_AT_KEY);
+                                                               
.getMetaData(Component.CONSTRUCTED_AT_KEY);
                                                        if (metadata != null)
                                                        {
                                                                
buffer.append(metadata);
@@ -1067,24 +1060,44 @@
                                }
                        });
 
-                       // Remove any unrendered auto components since 
versioning couldn't
-                       // do it. We can't remove the component in the above 
visitChildren
-                       // callback because we're traversing the list at that 
time.
-                       for (int i = 0; i < unrenderedAutoComponents.size(); 
i++)
-                       {
-                               
((Component)unrenderedAutoComponents.get(i)).remove();
-                       }
-
                        // Throw exception if any errors were found
-                       if (unrenderedComponents.getCount() > 0)
+                       if (unrenderedComponents.size() > 0)
                        {
                                // Get rid of set
                                renderedComponents = null;
 
-                               // Throw exception
-                               throw new WicketRuntimeException(
+                               Iterator iterator = 
unrenderedComponents.iterator();
+
+                               while (iterator.hasNext())
+                               {
+                                       Component component = 
(Component)iterator.next();
+                                       // Now first test if the component has 
a sibling that is a transparent resolver.
+
+                                       Iterator iterator2 = 
component.getParent().iterator();
+                                       while (iterator2.hasNext())
+                                       {
+                                               Component sibling = 
(Component)iterator2.next();
+                                               if (!sibling.isVisible() && 
sibling instanceof MarkupContainer &&
+                                                       
((MarkupContainer)sibling).isTransparentResolver())
+                                               {
+                                                       // we found a 
transparent container that isn't visible
+                                                       // then ignore this 
component and only do a debug statement here.
+                                                       log.warn("Component " + 
component +
+                                                               " wasn't 
rendered but most likely it has a transparent parent: " +
+                                                               sibling);
+                                                       iterator.remove();
+                                                       break;
+                                               }
+                                       }
+                               }
+                               // if still > 0
+                               if (unrenderedComponents.size() > 0)
+                               {
+                                       // Throw exception
+                                       throw new WicketRuntimeException(
                                                "The component(s) below failed 
to render. A common problem is that you have added a component in code but 
forgot to reference it in the markup (thus the component will never be 
rendered).\n\n" +
-                                                               
buffer.toString());
+                                                       buffer.toString());
+                               }
                        }
                }
 
@@ -1190,7 +1203,7 @@
                // Auto components do not participate in versioning since they 
are
                // added during the rendering phase (which is normally illegal).
                if (component.isAuto() || (parent == null && 
!component.isVersioned()) ||
-                               (parent != null && !parent.isVersioned()))
+                       (parent != null && !parent.isVersioned()))
                {
                        return false;
                }
@@ -1302,7 +1315,7 @@
                // Write out an xml declaration if the markup stream and 
settings allow
                final MarkupStream markupStream = findMarkupStream();
                if ((markupStream != null) && (markupStream.getXmlDeclaration() 
!= null) &&
-                               
(application.getMarkupSettings().getStripXmlDeclarationFromOutput() == false))
+                       
(application.getMarkupSettings().getStripXmlDeclarationFromOutput() == false))
                {
                        response.write("<?xml version='1.0' encoding='");
                        response.write(encoding);

Modified: 
wicket/trunk/jdk-1.5/wicket-examples/.settings/org.eclipse.jdt.core.prefs
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.5/wicket-examples/.settings/org.eclipse.jdt.core.prefs?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.5/wicket-examples/.settings/org.eclipse.jdt.core.prefs 
(original)
+++ wicket/trunk/jdk-1.5/wicket-examples/.settings/org.eclipse.jdt.core.prefs 
Wed Oct 31 16:23:31 2007
@@ -1,4 +1,4 @@
-#Wed Apr 11 14:45:26 CEST 2007
+#Thu Nov 01 00:12:54 CET 2007
 eclipse.preferences.version=1
 org.eclipse.jdt.core.codeComplete.argumentPrefixes=
 org.eclipse.jdt.core.codeComplete.argumentSuffixes=
@@ -73,15 +73,15 @@
 
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_assignment=0
 org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=20
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
 
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
 
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=64
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
 
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=64
 
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
@@ -124,7 +124,7 @@
 org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
 org.eclipse.jdt.core.formatter.comment.line_length=100
 org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation=1
 org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
 org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
 
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true


Reply via email to