Author: dazarov
Date: 2009-09-03 07:38:35 -0400 (Thu, 03 Sep 2009)
New Revision: 17442
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/JBIDE-1631.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/WEB-INF/components.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/abcComponent.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/entity/abcEntity.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/BbcComponent.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/Component12.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/ContextVariableTest.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/DuplicateComponent.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SelectionTest.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/StatefulComponent.original
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SubclassTestComponent.original
Modified:
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-4495
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/JBIDE-1631.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/JBIDE-1631.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/JBIDE-1631.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,14 @@
+<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<ui:composition
xmlns="http://www.w3.org/1999/xhtml"
+
xmlns:s="http://jboss.com/products/seam/taglib"
+
xmlns:ui="http://java.sun.com/jsf/facelets"
+
xmlns:f="http://java.sun.com/jsf/core"
+
xmlns:h="http://java.sun.com/jsf/html"
+
xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+ template="layout/template.xhtml">
+
+<ui:define name="body">
+
+</ui:define>
+</ui:composition>
\ No newline at end of file
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/WEB-INF/components.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/WEB-INF/components.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/WEB-INF/components.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<components
xmlns="http://jboss.com/products/seam/components"
+
xmlns:core="http://jboss.com/products/seam/core"
+
xmlns:drools="http://jboss.com/products/seam/drools"
+
xmlns:security="http://jboss.com/products/seam/security"
+
xmlns:mail="http://jboss.com/products/seam/mail"
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation=
+ "http://jboss.com/products/seam/core
http://jboss.com/products/seam/core-1.1.xsd
+
http://jboss.com/products/seam/drools
http://jboss.com/products/seam/drools-1.1.xsd
+
http://jboss.com/products/seam/security
http://jboss.com/products/seam/security-1.1.xsd
+
http://jboss.com/products/seam/mail
http://jboss.com/products/seam/mail-1.2.xsd
+
http://jboss.com/products/seam/components
http://jboss.com/products/seam/components-1.1.xsd">
+
+ <core:init debug="true" jndi-pattern="@jndiPattern@"/>
+
+ <core:manager concurrent-request-timeout="500"
+ conversation-timeout="120000"
+ conversation-id-parameter="cid"
+ conversation-is-long-running-parameter="clr"/>
+
+ <core:managed-persistence-context name="entityManager"
+ auto-create="true"
+
entity-manager-factory="#{SeamWebWarTestProjectEntityManagerFactory}"/>
+
+ <core:entity-manager-factory
name="SeamWebWarTestProjectEntityManagerFactory"
+ persistence-unit-name="SeamWebWarTestProject"/>
+
+ <core:ejb installed="@embeddedEjb@"/>
+
+ <drools:rule-base name="securityRules">
+
<drools:rule-files><value>/security.drl</value></drools:rule-files>
+ </drools:rule-base>
+
+ <security:identity authenticate-method="#{authenticator.authenticate}"
+ security-rules="#{securityRules}"
+ remember-me="true"/>
+
+ <event type="org.jboss.seam.notLoggedIn">
+ <action expression="#{redirect.captureCurrentView}"/>
+ </event>
+ <event type="org.jboss.seam.postAuthenticate">
+ <action expression="#{redirect.returnToCapturedView}"/>
+ </event>
+
+ <mail:mail-session host="localhost" port="2525"
username="test" password="test" />
+
+ <!-- For use with jBPM pageflow or process management -->
+ <!--
+ <core:jbpm>
+ <core:process-definitions></core:process-definitions>
+ <core:pageflow-definitions></core:pageflow-definitions>
+ </core:jbpm>
+ -->
+ <component class="org.domain.SeamWebWarTestProject.session.TestComponent"
name="test" />
+
+ <factory name="test" />
+
+ <security:identity authenticate-method="#{test.operate}"
+ security-rules="#{securityRules}"
+ remember-me="true"/>
+
+</components>
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/abcComponent.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/abcComponent.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/WebContent/abcComponent.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,31 @@
+<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<ui:composition
xmlns="http://www.w3.org/1999/xhtml"
+
xmlns:s="http://jboss.com/products/seam/taglib"
+
xmlns:ui="http://java.sun.com/jsf/facelets"
+
xmlns:f="http://java.sun.com/jsf/core"
+
xmlns:h="http://java.sun.com/jsf/html"
+
xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+
xmlns:a="https://ajax4jsf.dev.java.net/ajax"
+ template="layout/template.xhtml">
+
+<ui:define name="body">
+
+ <h:messages globalOnly="true" styleClass="message"/>
+
+ <rich:panel>
+ <f:facet name="header">abcComponent</f:facet>
+
+ <h:form id="abcComponentForm">
+
+ <h:commandButton id="abcComponent"
value="abcComponent!"
+ action="#{abcComponent.actionType}"/>
+
+ </h:form>
+
+ </rich:panel>
+
+</ui:define>
+
+</ui:composition>
+
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/entity/abcEntity.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/entity/abcEntity.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/entity/abcEntity.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,55 @@
+package org.domain.SeamWebWarTestProject.entity;
+
+import javax.ejb.Remove;
+import java.io.Serializable;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Version;
+import org.hibernate.validator.Length;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+
+@Entity
+(a)Scope(ScopeType.EVENT)
+@Name("abcEntity")
+public class abcEntity implements Serializable {
+ static final long serialVersionUID = 1000;
+ //seam-gen attributes (you should probably edit these)
+ private Long id;
+ private Integer version;
+ private String name;
+
+ //add additional entity attributes
+
+ //seam-gen attribute getters/setters with annotations (you probably should edit)
+
+ @Id @GeneratedValue
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ @Version
+ public Integer getVersion() {
+ return version;
+ }
+
+ @Remove
+ public void removeMethod(){
+
+ }
+
+ @Length(max=20)
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+}
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/BbcComponent.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/BbcComponent.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/BbcComponent.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,20 @@
+package org.domain.SeamWebWarTestProject.session;
+
+import org.jboss.seam.annotations.Logger;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.log.Log;
+
+@Name("bbcComponent")
+public class BbcComponent {
+
+ @Logger private Log log;
+
+ public void bbcComponent()
+ {
+ //implement your business logic here
+ log.info("bbcComponent.bbcComponent() action called");
+ }
+
+ //add additional action methods
+
+}
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/Component12.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/Component12.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/Component12.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,40 @@
+package org.domain.SeamWebWarTestProject.session;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Factory;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Logger;
+import org.jboss.seam.annotations.datamodel.DataModel;
+import org.jboss.seam.log.Log;
+import org.jboss.seam.core.FacesMessages;
+
+@Name("component12")
+public class Component12 {
+
+ @Logger private Log log;
+
+ @In FacesMessages facesMessages;
+
+ @DataModel
+ private List<String> messageList=new ArrayList<String>();
+
+ @Factory("messageList12")
+ public List<String> findMessages() {
+ return messageList;
+ }
+
+ public List<String> getList(){
+ return messageList;
+ }
+
+
+ public void component12()
+ {
+ //implement your business logic here
+ log.info("component12.component12() action called");
+ //facesMessages.add("component12");
+ }
+}
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/ContextVariableTest.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/ContextVariableTest.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/ContextVariableTest.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,48 @@
+package org.domain.SeamWebWarTestProject.session;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.jboss.seam.annotations.Factory;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Role;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.Logger;
+import org.jboss.seam.annotations.datamodel.DataModel;
+import org.jboss.seam.log.Log;
+import org.jboss.seam.core.FacesMessages;
+
+@Name("contextVariableTest")
+@Role(name="role1")
+public class ContextVariableTest {
+
+ @Logger private Log log;
+
+ @In FacesMessages facesMessages;
+
+ @Out(value="output")
+ private String output;
+
+ public void contextVariableTest()
+ {
+ //implement your business logic here
+ log.info("contextVariableTest.contextVariableTest() action called");
+ }
+
+ @DataModel
+ private List<String> messageList=new ArrayList<String>();
+
+ @Factory("messageList")
+ public void findMessages() {
+
+ }
+
+ public List<String> getList(){
+ return messageList;
+ }
+
+ public String getOutput(){
+ return output;
+ }
+}
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/DuplicateComponent.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/DuplicateComponent.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/DuplicateComponent.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,7 @@
+package org.domain.SeamWebWarTestProject.session;
+
+import org.jboss.seam.annotations.Name;
+
+@Name("duplicateJavaAndXmlComponentName")
+public class DuplicateComponent {
+}
\ No newline at end of file
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,42 @@
+package org.domain.SeamWebWarTestProject.session;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Logger;
+import org.jboss.seam.annotations.datamodel.DataModel;
+import org.jboss.seam.annotations.datamodel.DataModelSelectionIndex;
+import org.jboss.seam.log.Log;
+import org.jboss.seam.core.FacesMessages;
+
+@Name("selectionIndexTest")
+public class SelectionIndexTest {
+
+ @Logger private Log log;
+
+ @In FacesMessages facesMessages;
+
+ @DataModel
+ private List<String> messageList=new ArrayList<String>();
+
+ @DataModel
+ private List<String> nameList=new ArrayList<String>();
+
+ @DataModelSelectionIndex("messageList") int index;
+
+ public List<String> getList(){
+ return messageList;
+ }
+
+ public List<String> getNames(){
+ return nameList;
+ }
+
+ public void selectionIndexTest()
+ {
+ //implement your business logic here
+ log.info("selectionIndexTest.selectionIndexTest() action called");
+ }
+}
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SelectionTest.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SelectionTest.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SelectionTest.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,42 @@
+package org.domain.SeamWebWarTestProject.session;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Logger;
+import org.jboss.seam.annotations.datamodel.DataModel;
+import org.jboss.seam.annotations.datamodel.DataModelSelection;
+import org.jboss.seam.log.Log;
+import org.jboss.seam.core.FacesMessages;
+
+@Name("selectionTest")
+public class SelectionTest {
+
+ @Logger private Log log;
+
+ @In FacesMessages facesMessages;
+
+ @DataModel
+ private List<String> messageList=new ArrayList<String>();
+
+ @DataModel
+ private List<String> nameList=new ArrayList<String>();
+
+ @DataModelSelection("messageList") String s;
+
+ public List<String> getList(){
+ return messageList;
+ }
+
+ public List<String> getNames(){
+ return nameList;
+ }
+
+ public void selectionTest()
+ {
+ //implement your business logic here
+ log.info("selectionTest.selectionTest() action called");
+ }
+}
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/StatefulComponent.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/StatefulComponent.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/StatefulComponent.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,52 @@
+package org.domain.SeamWebWarTestProject.session;
+
+import javax.ejb.Remove;
+import javax.ejb.Stateful;
+
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.Destroy;
+import org.jboss.seam.annotations.Logger;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.log.Log;
+
+@Name("statefulComponent")
+
+@Stateful
+(a)Scope(ScopeType.APPLICATION)
+public class StatefulComponent {
+
+ private String abc;
+
+ @Logger private Log log;
+
+
+ //seam-gen method
+ public String statefulComponent()
+ {
+ //implement your business logic here
+ log.info("statefulComponent.statefulComponent() action called");
+ return "success";
+ }
+
+ //add additional action methods
+ @Destroy
+ public void destroyMethod(){
+
+ }
+
+
+ @Remove
+ public void removeMethod(){
+
+ }
+
+ public String getAbc() {
+ return abc;
+ }
+
+ public void setAbc(String abc) {
+ this.abc = abc;
+ }
+
+}
\ No newline at end of file
Added:
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SubclassTestComponent.original
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SubclassTestComponent.original
(rev 0)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/projects/SeamWebWarTestProject/src/action/org/domain/SeamWebWarTestProject/session/SubclassTestComponent.original 2009-09-03
11:38:35 UTC (rev 17442)
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2007 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at
http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+
+package org.domain.SeamWebWarTestProject.session;
+
+import javax.ejb.Stateful;
+
+import org.jboss.seam.annotations.Destroy;
+import org.jboss.seam.annotations.Name;
+
+/**
+ * Test component for JBIDE-1696
+ * @author Alexey Kazakov
+ */
+@Stateful
+@Name("testComponentJBIDE1696")
+public class SubclassTestComponent extends SuperclassTestComponent {
+
+ @Destroy public void foo1() {}
+}
\ No newline at end of file
Modified:
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java
===================================================================
---
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java 2009-09-03
10:51:10 UTC (rev 17441)
+++
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/SeamValidatorsTest.java 2009-09-03
11:38:35 UTC (rev 17442)
@@ -36,6 +36,7 @@
import org.jboss.tools.tests.IMarkerFilter;
public class SeamValidatorsTest extends AbstractResourceMarkerTest {
+
IProject project = null;
public static final String MARKER_TYPE =
"org.eclipse.wst.validation.problemmarker";
@@ -63,6 +64,68 @@
this.project = project.getProject();
JobUtils.waitForIdle();
}
+
+ @Override
+ protected void tearDown() throws Exception {
+ // restore state
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/session/SubclassTestComponent.java",
+ "src/action/org/domain/SeamWebWarTestProject/session/SubclassTestComponent.original");
+
+ copyContentsFile("WebContent/WEB-INF/components.xml",
"WebContent/WEB-INF/components.original");
+
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/session/StatefulComponent.java",
+ "src/action/org/domain/SeamWebWarTestProject/session/StatefulComponent.original");
+
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/session/BbcComponent.java",
+ "src/action/org/domain/SeamWebWarTestProject/session/BbcComponent.original");
+
+ copyContentsFile("WebContent/JBIDE-1631.xhtml",
+ "WebContent/JBIDE-1631.original");
+
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/entity/abcEntity.java",
+ "src/action/org/domain/SeamWebWarTestProject/entity/abcEntity.original");
+
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/session/Component12.java",
+ "src/action/org/domain/SeamWebWarTestProject/session/Component12.original");
+
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/session/SelectionTest.java",
+ "src/action/org/domain/SeamWebWarTestProject/session/SelectionTest.original");
+
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.java",
+ "src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.original");
+
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/session/ContextVariableTest.java",
+ "src/action/org/domain/SeamWebWarTestProject/session/ContextVariableTest.original");
+
+ copyContentsFile("WebContent/abcComponent.xhtml",
+ "WebContent/abcComponent.original");
+
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/session/DuplicateComponent.java",
+ "src/action/org/domain/SeamWebWarTestProject/session/DuplicateComponent.original");
+
+ refreshProject(project);
+ }
+
+ private void copyContentsFile(String originalName, String newContentName){
+ IFile originalFile = project.getFile(originalName);
+ IFile newContentFile = project.getFile(newContentName);
+
+ copyContentsFile(originalFile, newContentFile);
+ }
+
+ private void copyContentsFile(IFile originalFile, String newContentName){
+ IFile newContentFile = project.getFile(newContentName);
+
+ copyContentsFile(originalFile, newContentFile);
+ }
+
+ private void copyContentsFile(IFile originalFile, IFile newContentFile){
+ try{
+ originalFile.setContents(newContentFile.getContents(), true, false, null);
+ }catch(Exception e){
+ JUnitUtils.fail("Error during changing
'"+originalFile.getFullPath()+"' content to
'"+newContentFile.getFullPath()+"'", e);
+ }
+ }
private ISeamProject getSeamProject(IProject project) {
refreshProject(project);
@@ -113,12 +176,9 @@
IFile subclassComponentFile =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/SubclassTestComponent.java");
assertMarkerIsCreated(subclassComponentFile, MARKER_TYPE, "Stateful component
\"testComponentJBIDE1696\" must have a method marked @Remove", 25);
IFile superclassComponentFile =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/SuperclassTestComponent.java");
- IFile superclassComponentFileWithRemove =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/SuperclassTestComponent.withRemove");
- try{
- superclassComponentFile.setContents(superclassComponentFileWithRemove.getContents(),
true, false, null);
- }catch(Exception e){
- JUnitUtils.fail("Error during changing 'SuperclassTestComponent.java'
content to 'SuperclassTestComponent.withRemove'", e);
- }
+
+ copyContentsFile(superclassComponentFile,
"src/action/org/domain/SeamWebWarTestProject/session/SuperclassTestComponent.withRemove");
+
refreshProject(project);
int number = getMarkersNumber(subclassComponentFile);
assertTrue("We changed super class of component but it still don't see
changes.", number == 0);
@@ -212,29 +272,14 @@
}
public void testComponentWithoutSetter_Validator() throws CoreException {
- IFile statefulComponentFile =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/StatefulComponent.java");
IFile componentsFile = project.getFile("WebContent/WEB-INF/components.xml");
// Component class does not contain setter for property
- IFile componentsFile3 = project.getFile("WebContent/WEB-INF/components.3");
+ copyContentsFile(componentsFile, "WebContent/WEB-INF/components.3");
- try{
- componentsFile.setContents(componentsFile3.getContents(), true, false, null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'components.xml' content to " +
- "'components.3'", ex);
- }
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/session/StatefulComponent.java",
"src/action/org/domain/SeamWebWarTestProject/session/StatefulComponent.5");
- IFile statefulComponentFile5 =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/StatefulComponent.5");
-
- try{
- statefulComponentFile.setContents(statefulComponentFile5.getContents(), true, false,
null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'StatefulComponent.java' content to
" +
- "'StatefulComponent.5'", ex);
- }
-
refreshProject(project);
assertMarkerIsCreated(
@@ -399,13 +444,7 @@
markerText, 24);
- IFile component12File2 =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/DuplicateFactory");
- try{
- component12File.setContents(component12File2.getContents(), true, false, null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'Component12File2.java' content to
" +
- "'DuplicateFactory'", ex);
- }
+ copyContentsFile(component12File,
"src/action/org/domain/SeamWebWarTestProject/session/DuplicateFactory");
refreshProject(project);
@@ -427,21 +466,9 @@
// Multiple data binder
- IFile selectionTestFile2 =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/SelectionTest.2");
- try{
- selectionTestFile.setContents(selectionTestFile2.getContents(), true, false, null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'SelectionTest.java' content to "
+
- "'SelectionTest.2'", ex);
- }
+ copyContentsFile(selectionTestFile,
"src/action/org/domain/SeamWebWarTestProject/session/SelectionTest.2");
- IFile selectionIndexTestFile2 =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.2");
- try{
- selectionIndexTestFile.setContents(selectionIndexTestFile2.getContents(), true, false,
null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'SelectionIndexTest.java' content to
" +
- "'SelectionIndexTest.2'", ex);
- }
+ copyContentsFile(selectionIndexTestFile,
"src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.2");
refreshProject(project);
@@ -479,21 +506,9 @@
IFile selectionIndexTestFile =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.java");
// Unknown @DataModel/@Out name
- IFile selectionTestFile3 =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/SelectionTest.3");
- try{
- selectionTestFile.setContents(selectionTestFile3.getContents(), true, false, null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'SelectionTest.java' content to "
+
- "'SelectionTest.3'", ex);
- }
+ copyContentsFile(selectionTestFile,
"src/action/org/domain/SeamWebWarTestProject/session/SelectionTest.3");
- IFile selectionIndexTestFile3 =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.3");
- try{
- selectionIndexTestFile.setContents(selectionIndexTestFile3.getContents(), true, false,
null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'SelectionIndexTest.java' content to
" +
- "'SelectionIndexTest.3'", ex);
- }
+ copyContentsFile(selectionIndexTestFile,
"src/action/org/domain/SeamWebWarTestProject/session/SelectionIndexTest.3");
refreshProject(project);
@@ -521,13 +536,7 @@
// Duplicate variable name
- IFile contextVariableTestFile2 =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/ContextVariableTest.2");
- try{
- contextVariableTestFile.setContents(contextVariableTestFile2.getContents(), true,
false, null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'ContextVariableTest.java' content to
" +
- "'ContextVariableTest.2'", ex);
- }
+ copyContentsFile(contextVariableTestFile,
"src/action/org/domain/SeamWebWarTestProject/session/ContextVariableTest.2");
refreshProject(project);
@@ -607,13 +616,7 @@
enableUnpairGetterOrSetterValidation(true);
- IFile abcComponentFile2 =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/AbcComponent.2");
- try{
- abcComponentFile.setContents(abcComponentFile2.getContents(), true, false, null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'abcComponent.java' content to "
+
- "'abcComponent.2'", ex);
- }
+ copyContentsFile(abcComponentFile,
"src/action/org/domain/SeamWebWarTestProject/session/AbcComponent.2");
refreshProject(project);
@@ -627,7 +630,6 @@
public void testPropertyHasOnlyGetter_Validator() throws CoreException {
IFile abcComponentXHTMLFile =
project.getFile("WebContent/abcComponent.xhtml");
- IFile abcComponentFile =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/AbcComponent.java");
String markerText = "Property \"actionType\" has only Getter. Setter is
missing.";
@@ -635,13 +637,7 @@
enableUnpairGetterOrSetterValidation(true);
- IFile abcComponentFile3 =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/AbcComponent.3");
- try{
- abcComponentFile.setContents(abcComponentFile3.getContents(), true, false, null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'abcComponent.java' content to "
+
- "'abcComponent.3'", ex);
- }
+ copyContentsFile("src/action/org/domain/SeamWebWarTestProject/session/AbcComponent.java",
"src/action/org/domain/SeamWebWarTestProject/session/AbcComponent.3");
refreshProject(project);
@@ -688,13 +684,10 @@
IFile duplicateJavaComponentFile =
project.getFile("src/action/org/domain/SeamWebWarTestProject/session/DuplicateComponent.java");
IFile componentsXmlFile =
project.getFile("WebContent/WEB-INF/components.xml");
- IFile duplicateComponentsXmlFile =
project.getFile("WebContent/WEB-INF/duplicateComponents.test");
- try{
- componentsXmlFile.setContents(duplicateComponentsXmlFile.getContents(), true, false,
null);
- }catch(Exception ex){
- JUnitUtils.fail("Error in changing 'components.xml' content to
'duplicateComponents.test'", ex);
- }
+ copyContentsFile(componentsXmlFile,
"WebContent/WEB-INF/duplicateComponents.test");
+
refreshProject(project);
+
Integer[] lineNumbers = getMarkersNumbersOfLine(duplicateJavaComponentFile,
SEAM_MARKER_FILTER);
assertEquals("There should be the only one error marker in
DuplicateComponent.java.", 1, lineNumbers.length);
assertEquals("Problem marker has wrong line number", 5,
lineNumbers[0].intValue());
@@ -712,15 +705,10 @@
SeamCorePlugin.getDefault().getPreferenceStore().setValue(SeamPreferences.UNKNOWN_EL_VARIABLE_NAME,
SeamPreferences.ERROR);
IFile componentFile =
project.getFile("src/action/org/domain/SeamWebWarTestProject/entity/TestElRevalidation.java");
- IFile newComponentFile =
project.getFile("src/action/org/domain/SeamWebWarTestProject/entity/TestElRevalidation.new");
- IFile originalComponentFile =
project.getFile("src/action/org/domain/SeamWebWarTestProject/entity/TestElRevalidation.original");
IFile xhtmlFile = project.getFile("WebContent/testElRevalidation.xhtml");
- try {
- componentFile.setContents(newComponentFile.getContents(), true, false, null);
- } catch(Exception ex) {
- JUnitUtils.fail("Error in changing 'TestElRevalidation.new' content to
'TestElRevalidation.java'", ex);
- }
+ copyContentsFile(componentFile,
"src/action/org/domain/SeamWebWarTestProject/entity/TestElRevalidation.new");
+
refreshProject(project);
int n = getMarkersNumber(xhtmlFile, SEAM_MARKER_FILTER);
@@ -728,11 +716,8 @@
SeamCorePlugin.getDefault().getPreferenceStore().setValue(SeamPreferences.RE_VALIDATE_UNRESOLVED_EL,
SeamPreferences.DISABLE);
// Check if the validator was not invoked.
- try {
- componentFile.setContents(originalComponentFile.getContents(), true, false, null);
- } catch(Exception ex) {
- JUnitUtils.fail("Error in changing 'TestElRevalidation.original' content
to 'TestElRevalidation.java'", ex);
- }
+ copyContentsFile(componentFile,
"src/action/org/domain/SeamWebWarTestProject/entity/TestElRevalidation.original");
+
refreshProject(project);
n = getMarkersNumber(xhtmlFile, SEAM_MARKER_FILTER);