├── Login ├── Resources │ ├── Properties │ ├── wrox.eomodeld │ │ ├── DiagramLayout │ │ ├── eoSetSequence.storedProcedure │ │ ├── Lineitem.plist │ │ ├── Order.plist │ │ ├── Category.plist │ │ └── Address.plist │ └── wrox.eogen ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── wsresources.exclude.patternset │ └── resources.include.patternset ├── Components │ ├── Main.wo │ │ ├── Main.wod │ │ ├── Main.woo │ │ └── Main.html │ ├── LoginCheck.wo │ │ ├── LoginCheck.woo │ │ ├── LoginCheck.html │ │ └── LoginCheck.wod │ ├── LoginForm.wo │ │ ├── LoginForm.woo │ │ ├── LoginForm.html │ │ └── LoginForm.wod │ └── Main.api ├── .settings │ └── org.eclipse.core.resources.prefs ├── Sources │ ├── Item.java │ ├── Order.java │ ├── Address.java │ ├── Category.java │ ├── Customer.java │ ├── Lineitem.java │ ├── Payment.java │ ├── LoginCheck.java │ ├── Main.java │ ├── DirectAction.java │ ├── Session.java │ ├── Application.java │ ├── LoginForm.java │ ├── WROXPage.java │ └── WROXComponent.java ├── build.properties ├── .project └── .classpath ├── OneDay ├── Resources │ ├── Properties │ ├── OrderLookupController.nib │ │ ├── JavaCompiling.plist │ │ ├── objects.nib │ │ ├── data.dependency │ │ ├── classes.nib │ │ └── info.nib │ ├── OneDayInterfaceController.nib │ │ ├── JavaCompiling.plist │ │ ├── objects.nib │ │ ├── data.dependency │ │ ├── classes.nib │ │ └── info.nib │ ├── OrderLookupControllerjohn.nib │ │ ├── objects.nib │ │ ├── JavaCompiling.plist │ │ ├── data.dependency │ │ ├── classes.nib │ │ └── info.nib │ └── ModelOracle.eomodeld │ │ ├── Item.fspec │ │ ├── applyDiscount.storedProcedure │ │ ├── volume.storedProcedure │ │ ├── LineItem.plist │ │ ├── DiagramLayout │ │ └── Address.plist ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── wsresources.exclude.patternset │ └── resources.include.patternset ├── .settings │ └── org.eclipse.core.resources.prefs ├── Sources │ ├── com │ │ └── wrox │ │ │ ├── .DS_Store │ │ │ └── client │ │ │ └── OrderLookupController.java │ ├── Main.java │ ├── Session.java │ ├── OneDay │ │ └── client │ │ │ └── OneDayInterfaceController.java │ ├── DirectAction.java │ └── Application.java ├── Components │ ├── Main.api │ └── Main.wo │ │ ├── Main.html │ │ └── Main.wod ├── build.properties ├── .project └── .classpath ├── Chapter5And6 ├── Resources │ ├── Properties │ ├── pre-populate.sql │ ├── ModelOB.eomodeld │ │ ├── Item.fspec │ │ ├── DiagramLayout │ │ ├── EOPrototypes.plist │ │ ├── LineItem.plist │ │ ├── Address.plist │ │ ├── Payment.plist │ │ └── Order.plist │ └── stored-procedure-oracle.sql ├── Components │ ├── Main.wo │ │ ├── Main.wod │ │ ├── Main.woo │ │ └── Main.html │ └── Main.api ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── wsresources.exclude.patternset │ └── resources.include.patternset ├── .settings │ └── org.eclipse.core.resources.prefs ├── build.properties ├── Sources │ └── your │ │ └── app │ │ ├── Session.java │ │ ├── components │ │ └── Main.java │ │ ├── Application.java │ │ └── DirectAction.java ├── .project └── .classpath ├── Chapter8Demo ├── Resources │ ├── Properties │ ├── ModelOB.eogen │ └── ModelOB.eomodeld │ │ ├── Item.fspec │ │ ├── Category.fspec │ │ ├── LineItem.plist │ │ └── DiagramLayout ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── wsresources.exclude.patternset │ └── resources.include.patternset ├── .DS_Store ├── .settings │ └── org.eclipse.core.resources.prefs ├── Components │ ├── Main.wo │ │ ├── Main.woo │ │ ├── Main.wod │ │ └── Main.html │ └── Main.api ├── Sources │ ├── Item.java │ ├── Order.java │ ├── Address.java │ ├── Payment.java │ ├── Category.java │ ├── Customer.java │ ├── LineItem.java │ ├── Session.java │ ├── DirectAction.java │ ├── Application.java │ └── Main.java ├── build.properties ├── .project └── .classpath ├── FetchSpecs ├── Resources │ ├── Properties │ ├── ModelOB.eogen │ └── ModelOB.eomodeld │ │ ├── Item.fspec │ │ ├── Category.fspec │ │ ├── Customer.fspec │ │ ├── DiagramLayout │ │ └── LineItem.plist ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── wsresources.exclude.patternset │ └── resources.include.patternset ├── Components │ ├── Main.wo │ │ ├── Main.wod │ │ └── Main.html │ ├── Search.wo │ │ ├── Search.woo │ │ ├── Search.wod │ │ └── Search.html │ ├── CustomerLookup.wo │ │ ├── CustomerLookup.woo │ │ └── CustomerLookup.wod │ └── Main.api ├── .settings │ └── org.eclipse.core.resources.prefs ├── Sources │ ├── Session.java │ ├── Order.java │ ├── Payment.java │ ├── Category.java │ ├── Customer.java │ ├── LineItem.java │ ├── Main.java │ ├── Address.java │ ├── DirectAction.java │ ├── Application.java │ ├── Item.java │ └── Search.java ├── build.properties ├── .project └── .classpath ├── FirstMenu ├── Resources │ └── Properties ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── wsresources.exclude.patternset │ └── resources.include.patternset ├── Components │ ├── Main.wo │ │ ├── Main.wod │ │ ├── Main.woo │ │ └── Main.html │ ├── BooksTop.wo │ │ ├── BooksTop.wod │ │ ├── BooksTop.woo │ │ └── BooksTop.html │ ├── Checkout.wo │ │ ├── Checkout.wod │ │ ├── Checkout.woo │ │ └── Checkout.html │ ├── MusicTop.wo │ │ ├── MusicTop.wod │ │ ├── MusicTop.woo │ │ └── MusicTop.html │ ├── ElectronicsTop.wo │ │ ├── ElectronicsTop.wod │ │ ├── ElectronicsTop.woo │ │ └── ElectronicsTop.html │ ├── MenuBar.wo │ │ ├── MenuBar.woo │ │ ├── MenuBar.html │ │ └── MenuBar.wod │ ├── MenuElement.wo │ │ ├── MenuElement.woo │ │ ├── MenuElement.html │ │ └── MenuElement.wod │ ├── NewMenuBar.api │ ├── WROXComponent.api │ ├── Main.api │ ├── BooksTop.api │ ├── Checkout.api │ ├── MenuBar.api │ ├── MusicTop.api │ ├── MenuElement.api │ └── ElectronicsTop.api ├── .settings │ └── org.eclipse.core.resources.prefs ├── Sources │ ├── Session.java │ ├── Main.java │ ├── WROXPage.java │ ├── MenuBar.java │ ├── WROXComponent.java │ ├── DirectAction.java │ ├── MusicTop.java │ ├── BooksTop.java │ ├── Checkout.java │ ├── ElectronicsTop.java │ ├── Application.java │ └── MenuElement.java ├── build.properties ├── .project └── .classpath ├── MonitorTest ├── Resources │ ├── Properties │ └── Main.api ├── Components │ └── Main.wo │ │ ├── Main.wod │ │ ├── Main.woo │ │ └── Main.html ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── wsresources.exclude.patternset │ └── resources.include.patternset ├── .settings │ └── org.eclipse.core.resources.prefs ├── build.properties ├── Sources │ ├── Session.java │ ├── Main.java │ ├── DirectAction.java │ └── Application.java ├── .project └── .classpath ├── WOGreeting ├── Resources │ └── Properties ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── wsresources.exclude.patternset │ └── resources.include.patternset ├── Components │ ├── Main.wo │ │ ├── Main.woo │ │ ├── Main.wod │ │ └── Main.html │ ├── PersonalizedGreeting.wo │ │ ├── PersonalizedGreeting.woo │ │ ├── PersonalizedGreeting.wod │ │ └── PersonalizedGreeting.html │ ├── Main.api │ └── PersonalizedGreeting.api ├── .settings │ └── org.eclipse.core.resources.prefs ├── build.properties ├── Sources │ ├── DirectAction.java │ ├── Application.java │ ├── PersonalizedGreeting.java │ ├── Main.java │ └── Session.java ├── .project └── .classpath ├── WOGreeting4 ├── Resources │ └── Properties ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── wsresources.exclude.patternset │ └── resources.include.patternset ├── Components │ ├── Main.wo │ │ ├── Main.woo │ │ ├── Main.wod │ │ └── Main.html │ ├── PersonalizedGreeting.wo │ │ ├── PersonalizedGreeting.woo │ │ ├── PersonalizedGreeting.wod │ │ └── PersonalizedGreeting.html │ ├── PageWrapper.wo │ │ ├── PageWrapper.woo │ │ ├── PageWrapper.wod │ │ └── PageWrapper.html │ ├── Main.api │ ├── PageWrapper.api │ └── PersonalizedGreeting.api ├── .settings │ └── org.eclipse.core.resources.prefs ├── build.properties ├── Sources │ ├── PageWrapper.java │ ├── DirectAction.java │ ├── Application.java │ ├── PersonalizedGreeting.java │ ├── Session.java │ └── Main.java ├── .project └── .classpath ├── DirectActions ├── Resources │ └── Properties ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── resources.include.patternset │ └── wsresources.exclude.patternset ├── Components │ ├── Main.wo │ │ ├── Main.wod │ │ ├── Main.woo │ │ └── Main.html │ ├── BooksTop.wo │ │ ├── BooksTop.wod │ │ ├── BooksTop.woo │ │ └── BooksTop.html │ ├── Checkout.wo │ │ ├── Checkout.wod │ │ ├── Checkout.woo │ │ └── Checkout.html │ ├── MusicTop.wo │ │ ├── MusicTop.wod │ │ ├── MusicTop.woo │ │ └── MusicTop.html │ ├── ElectronicsTop.wo │ │ ├── ElectronicsTop.wod │ │ ├── ElectronicsTop.woo │ │ └── ElectronicsTop.html │ ├── MenuBar.wo │ │ ├── MenuBar.woo │ │ ├── MenuBar.html │ │ └── MenuBar.wod │ ├── MenuElement.wo │ │ ├── MenuElement.woo │ │ ├── MenuElement.html │ │ └── MenuElement.wod │ ├── Main.api │ ├── BooksTop.api │ ├── Checkout.api │ ├── MenuBar.api │ ├── MusicTop.api │ ├── MenuElement.api │ └── ElectronicsTop.api ├── .settings │ └── org.eclipse.core.resources.prefs ├── Sources │ ├── Session.java │ ├── Main.java │ ├── MenuBar.java │ ├── DirectAction.java │ ├── MusicTop.java │ ├── BooksTop.java │ ├── Checkout.java │ ├── ElectronicsTop.java │ ├── Application.java │ ├── MyDirectAction.java │ ├── WROXPage.java │ ├── MenuElement.java │ └── WROXComponent.java ├── build.properties ├── .project └── .classpath ├── WOWroxExample ├── Resources │ ├── Properties │ ├── ModelOB.eogen │ ├── ModelOB.eomodeld │ │ ├── Item.fspec │ │ ├── Category.fspec │ │ ├── Customer.fspec │ │ ├── DiagramLayout │ │ └── LineItem.plist │ └── user.d2wmodel ├── .gitignore ├── woproject │ ├── classes.exclude.patternset │ ├── classes.include.patternset │ ├── wsresources.include.patternset │ ├── resources.exclude.patternset │ ├── resources.include.patternset │ └── wsresources.exclude.patternset ├── .DS_Store ├── Components │ ├── MenuHeader.wo │ │ └── MenuHeader.woo │ ├── PageWrapper.wo │ │ ├── PageWrapper.woo │ │ ├── PageWrapper.wod │ │ └── PageWrapper.html │ ├── Main.wo │ │ ├── Main.woo │ │ ├── Main.wod │ │ └── Main.html │ ├── Main.api │ ├── MenuHeader.api │ └── PageWrapper.api ├── .settings │ └── org.eclipse.core.resources.prefs ├── Sources │ ├── Item.java │ ├── Order.java │ ├── Address.java │ ├── Payment.java │ ├── Category.java │ ├── Customer.java │ ├── LineItem.java │ ├── PageWrapper.java │ ├── Session.java │ ├── DirectAction.java │ ├── Application.java │ └── Main.java ├── build.properties ├── .project └── .classpath ├── README └── .gitignore /Login/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /OneDay/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Chapter5And6/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Chapter8Demo/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /FetchSpecs/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /FirstMenu/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /MonitorTest/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /WOGreeting/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /WOGreeting4/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /DirectActions/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /WOWroxExample/Resources/Properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Chapter5And6/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Login/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /FetchSpecs/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /FirstMenu/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /MonitorTest/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /OneDay/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /WOGreeting/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /Chapter5And6/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /Chapter8Demo/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /DirectActions/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /Login/Resources/wrox.eomodeld/DiagramLayout: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /MonitorTest/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /WOGreeting4/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /WOWroxExample/.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | -------------------------------------------------------------------------------- /Login/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /FetchSpecs/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /FirstMenu/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /OneDay/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /WOGreeting/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /Chapter5And6/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /Chapter8Demo/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /DirectActions/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /FirstMenu/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | menuBar: MenuBar { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /Login/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | loginCheck: LoginCheck { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /MonitorTest/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /WOGreeting4/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /WOWroxExample/woproject/classes.exclude.patternset: -------------------------------------------------------------------------------- 1 | build.properties 2 | -------------------------------------------------------------------------------- /DirectActions/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | menuBar: MenuBar { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /FirstMenu/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /FirstMenu/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /Login/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /Login/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /OneDay/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /OneDay/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /Chapter5And6/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /Chapter5And6/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /Chapter8Demo/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /Chapter8Demo/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /DirectActions/Components/BooksTop.wo/BooksTop.wod: -------------------------------------------------------------------------------- 1 | menuBar: MenuBar { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /DirectActions/Components/Checkout.wo/Checkout.wod: -------------------------------------------------------------------------------- 1 | menuBar: MenuBar { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /DirectActions/Components/MusicTop.wo/MusicTop.wod: -------------------------------------------------------------------------------- 1 | menuBar: MenuBar { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /DirectActions/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /DirectActions/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /FetchSpecs/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /FetchSpecs/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /FirstMenu/Components/BooksTop.wo/BooksTop.wod: -------------------------------------------------------------------------------- 1 | menuBar: MenuBar { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /FirstMenu/Components/Checkout.wo/Checkout.wod: -------------------------------------------------------------------------------- 1 | menuBar: MenuBar { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /FirstMenu/Components/MusicTop.wo/MusicTop.wod: -------------------------------------------------------------------------------- 1 | menuBar: MenuBar { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /MonitorTest/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /MonitorTest/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /WOGreeting/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /WOGreeting/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /WOGreeting4/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /WOGreeting4/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /WOWroxExample/woproject/classes.include.patternset: -------------------------------------------------------------------------------- 1 | **/*.class 2 | *.properties 3 | -------------------------------------------------------------------------------- /WOWroxExample/woproject/wsresources.include.patternset: -------------------------------------------------------------------------------- 1 | WebServerResources/**/* 2 | -------------------------------------------------------------------------------- /FirstMenu/Components/ElectronicsTop.wo/ElectronicsTop.wod: -------------------------------------------------------------------------------- 1 | menuBar: MenuBar { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /DirectActions/Components/ElectronicsTop.wo/ElectronicsTop.wod: -------------------------------------------------------------------------------- 1 | menuBar: MenuBar { 2 | } 3 | 4 | -------------------------------------------------------------------------------- /Chapter8Demo/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wocommunity/WroxBook/HEAD/Chapter8Demo/.DS_Store -------------------------------------------------------------------------------- /DirectActions/Components/Main.wo/Main.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /FirstMenu/Components/Main.wo/Main.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /Login/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /MonitorTest/Components/Main.wo/Main.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /OneDay/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /WOGreeting/Components/Main.wo/Main.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /WOGreeting4/Components/Main.wo/Main.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /WOWroxExample/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wocommunity/WroxBook/HEAD/WOWroxExample/.DS_Store -------------------------------------------------------------------------------- /FetchSpecs/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | 2 | search : WOHyperlink { 3 | pageName = "CustomerLookup"; 4 | } -------------------------------------------------------------------------------- /FetchSpecs/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /FirstMenu/Components/BooksTop.wo/BooksTop.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /FirstMenu/Components/Checkout.wo/Checkout.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /FirstMenu/Components/MenuBar.wo/MenuBar.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /FirstMenu/Components/MusicTop.wo/MusicTop.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /FirstMenu/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /Login/Components/LoginCheck.wo/LoginCheck.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /Login/Components/LoginForm.wo/LoginForm.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /Login/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /MonitorTest/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /OneDay/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /WOGreeting/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /WOGreeting4/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /Chapter5And6/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /Chapter5And6/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /Chapter8Demo/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /Chapter8Demo/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /DirectActions/Components/BooksTop.wo/BooksTop.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /DirectActions/Components/Checkout.wo/Checkout.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /DirectActions/Components/MenuBar.wo/MenuBar.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /DirectActions/Components/MusicTop.wo/MusicTop.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /DirectActions/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /FetchSpecs/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /FirstMenu/Components/MenuElement.wo/MenuElement.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /FirstMenu/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /Login/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /Login/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /MonitorTest/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /OneDay/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /WOGreeting/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /WOGreeting4/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /WOWroxExample/woproject/resources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.eomodeld~/ 2 | **/*.woa/** 3 | **/*.framework/** 4 | -------------------------------------------------------------------------------- /Chapter5And6/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /Chapter8Demo/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /DirectActions/Components/MenuElement.wo/MenuElement.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /DirectActions/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /DirectActions/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /FetchSpecs/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /FetchSpecs/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /FirstMenu/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /FirstMenu/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /MonitorTest/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /OneDay/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /WOGreeting/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /WOGreeting/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /WOGreeting4/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /WOWroxExample/Components/MenuHeader.wo/MenuHeader.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 3.5"; 3 | } 4 | -------------------------------------------------------------------------------- /WOWroxExample/Components/PageWrapper.wo/PageWrapper.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 3.5"; 3 | } 4 | -------------------------------------------------------------------------------- /WOWroxExample/woproject/resources.include.patternset: -------------------------------------------------------------------------------- 1 | Components/**/*.wo/**/* 2 | Components/**/*.api 3 | Resources/**/* -------------------------------------------------------------------------------- /WOWroxExample/woproject/wsresources.exclude.patternset: -------------------------------------------------------------------------------- 1 | **/*.woa/** 2 | **/*.framework/** 3 | **/*.eomodeld~/** 4 | -------------------------------------------------------------------------------- /Chapter5And6/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /Chapter5And6/Components/Main.wo/Main.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | encoding = "UTF-8"; 4 | } -------------------------------------------------------------------------------- /Chapter8Demo/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /DirectActions/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /DirectActions/Components/ElectronicsTop.wo/ElectronicsTop.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /FirstMenu/Components/ElectronicsTop.wo/ElectronicsTop.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /Login/Components/Main.wo/Main.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | variables = {}; 4 | } 5 | -------------------------------------------------------------------------------- /Login/Resources/wrox.eomodeld/eoSetSequence.storedProcedure: -------------------------------------------------------------------------------- 1 | {externalName = EO_SET_SEQUENCE; name = eoSetSequence; } 2 | -------------------------------------------------------------------------------- /MonitorTest/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /OneDay/Sources/com/wrox/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wocommunity/WroxBook/HEAD/OneDay/Sources/com/wrox/.DS_Store -------------------------------------------------------------------------------- /WOGreeting4/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /WOWroxExample/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//Components=UTF-8 3 | -------------------------------------------------------------------------------- /Chapter8Demo/Components/Main.wo/Main.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | variables = {}; 4 | } 5 | -------------------------------------------------------------------------------- /WOWroxExample/Components/Main.wo/Main.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 3.5"; 3 | variables = {}; 4 | } 5 | -------------------------------------------------------------------------------- /FetchSpecs/Components/Search.wo/Search.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | variables = {}; 4 | } 5 | -------------------------------------------------------------------------------- /FirstMenu/Components/MenuElement.wo/MenuElement.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /WOGreeting4/Components/PersonalizedGreeting.wo/PersonalizedGreeting.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | } 4 | -------------------------------------------------------------------------------- /Chapter5And6/Resources/pre-populate.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wocommunity/WroxBook/HEAD/Chapter5And6/Resources/pre-populate.sql -------------------------------------------------------------------------------- /DirectActions/Components/MenuElement.wo/MenuElement.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /WOGreeting4/Components/PageWrapper.wo/PageWrapper.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | variables = {}; 4 | } 5 | -------------------------------------------------------------------------------- /OneDay/Resources/OrderLookupController.nib/JavaCompiling.plist: -------------------------------------------------------------------------------- 1 | {JavaSourceSubpath = com/wrox/client/_OrderLookupController_EOArchive.java; } 2 | -------------------------------------------------------------------------------- /FetchSpecs/Components/CustomerLookup.wo/CustomerLookup.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | variables = {}; 4 | } 5 | -------------------------------------------------------------------------------- /OneDay/Resources/OneDayInterfaceController.nib/JavaCompiling.plist: -------------------------------------------------------------------------------- 1 | {JavaSourceSubpath = OneDay/client/_OneDayInterfaceController_EOArchive.java; } 2 | -------------------------------------------------------------------------------- /WOGreeting/Components/PersonalizedGreeting.wo/PersonalizedGreeting.woo: -------------------------------------------------------------------------------- 1 | { 2 | "WebObjects Release" = "WebObjects 5.0"; 3 | variables = {}; 4 | } 5 | -------------------------------------------------------------------------------- /Login/Resources/wrox.eogen: -------------------------------------------------------------------------------- 1 | -destination Sources -extension java -java -model Resources/wrox.eomodeld -packagedirs -subclassDestination Sources -verbose -loadModelGroup -------------------------------------------------------------------------------- /OneDay/Resources/OrderLookupController.nib/objects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wocommunity/WroxBook/HEAD/OneDay/Resources/OrderLookupController.nib/objects.nib -------------------------------------------------------------------------------- /Login/Sources/Item.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Item extends _Item { 4 | private static Logger log = Logger.getLogger(Item.class); 5 | } 6 | -------------------------------------------------------------------------------- /OneDay/Resources/OneDayInterfaceController.nib/objects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wocommunity/WroxBook/HEAD/OneDay/Resources/OneDayInterfaceController.nib/objects.nib -------------------------------------------------------------------------------- /OneDay/Resources/OrderLookupControllerjohn.nib/objects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wocommunity/WroxBook/HEAD/OneDay/Resources/OrderLookupControllerjohn.nib/objects.nib -------------------------------------------------------------------------------- /FetchSpecs/Components/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /FetchSpecs/Resources/ModelOB.eogen: -------------------------------------------------------------------------------- 1 | -destination Sources -extension java -java -model Resources/ModelOB.eomodeld -packagedirs -subclassDestination Sources -verbose -loadModelGroup -------------------------------------------------------------------------------- /Login/Sources/Order.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Order extends _Order { 4 | private static Logger log = Logger.getLogger(Order.class); 5 | } 6 | -------------------------------------------------------------------------------- /MonitorTest/Resources/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /OneDay/Components/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Chapter8Demo/Resources/ModelOB.eogen: -------------------------------------------------------------------------------- 1 | -destination Sources -extension java -java -model Resources/ModelOB.eomodeld -packagedirs -subclassDestination Sources -verbose -loadModelGroup -------------------------------------------------------------------------------- /Chapter8Demo/Sources/Item.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Item extends _Item { 4 | private static Logger log = Logger.getLogger(Item.class); 5 | } 6 | -------------------------------------------------------------------------------- /Chapter8Demo/Sources/Order.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Order extends _Order { 4 | private static Logger log = Logger.getLogger(Order.class); 5 | } 6 | -------------------------------------------------------------------------------- /FetchSpecs/Sources/Session.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOSession; 4 | 5 | public class Session extends WOSession { 6 | } 7 | -------------------------------------------------------------------------------- /FirstMenu/Components/NewMenuBar.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /FirstMenu/Sources/Session.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOSession; 4 | 5 | public class Session extends WOSession { 6 | } 7 | -------------------------------------------------------------------------------- /WOWroxExample/Resources/ModelOB.eogen: -------------------------------------------------------------------------------- 1 | -destination Sources -extension java -java -model Resources/ModelOB.eomodeld -packagedirs -subclassDestination Sources -verbose -loadModelGroup -------------------------------------------------------------------------------- /WOWroxExample/Sources/Item.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Item extends _Item { 4 | private static Logger log = Logger.getLogger(Item.class); 5 | } 6 | -------------------------------------------------------------------------------- /DirectActions/Sources/Session.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOSession; 4 | 5 | public class Session extends WOSession { 6 | } 7 | -------------------------------------------------------------------------------- /FirstMenu/Components/WROXComponent.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Login/Sources/Address.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Address extends _Address { 4 | private static Logger log = Logger.getLogger(Address.class); 5 | } 6 | -------------------------------------------------------------------------------- /Login/Sources/Category.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Category extends _Category { 4 | private static Logger log = Logger.getLogger(Category.class); 5 | } 6 | -------------------------------------------------------------------------------- /Login/Sources/Customer.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Customer extends _Customer { 4 | private static Logger log = Logger.getLogger(Customer.class); 5 | } 6 | -------------------------------------------------------------------------------- /Login/Sources/Lineitem.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Lineitem extends _Lineitem { 4 | private static Logger log = Logger.getLogger(Lineitem.class); 5 | } 6 | -------------------------------------------------------------------------------- /Login/Sources/Payment.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Payment extends _Payment { 4 | private static Logger log = Logger.getLogger(Payment.class); 5 | } 6 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/Order.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Order extends _Order { 4 | private static Logger log = Logger.getLogger(Order.class); 5 | } 6 | -------------------------------------------------------------------------------- /Chapter8Demo/Sources/Address.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Address extends _Address { 4 | private static Logger log = Logger.getLogger(Address.class); 5 | } 6 | -------------------------------------------------------------------------------- /Chapter8Demo/Sources/Payment.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Payment extends _Payment { 4 | private static Logger log = Logger.getLogger(Payment.class); 5 | } 6 | -------------------------------------------------------------------------------- /OneDay/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Main 4 | 5 | 6 |
7 | 8 | 9 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/Address.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Address extends _Address { 4 | private static Logger log = Logger.getLogger(Address.class); 5 | } 6 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/Payment.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Payment extends _Payment { 4 | private static Logger log = Logger.getLogger(Payment.class); 5 | } 6 | -------------------------------------------------------------------------------- /Chapter5And6/Components/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter8Demo/Sources/Category.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Category extends _Category { 4 | private static Logger log = Logger.getLogger(Category.class); 5 | } 6 | -------------------------------------------------------------------------------- /Chapter8Demo/Sources/Customer.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Customer extends _Customer { 4 | private static Logger log = Logger.getLogger(Customer.class); 5 | } 6 | -------------------------------------------------------------------------------- /Chapter8Demo/Sources/LineItem.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class LineItem extends _LineItem { 4 | private static Logger log = Logger.getLogger(LineItem.class); 5 | } 6 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/Category.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Category extends _Category { 4 | private static Logger log = Logger.getLogger(Category.class); 5 | } 6 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/Customer.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class Customer extends _Customer { 4 | private static Logger log = Logger.getLogger(Customer.class); 5 | } 6 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/LineItem.java: -------------------------------------------------------------------------------- 1 | import org.apache.log4j.Logger; 2 | 3 | public class LineItem extends _LineItem { 4 | private static Logger log = Logger.getLogger(LineItem.class); 5 | } 6 | -------------------------------------------------------------------------------- /Login/Components/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter5And6/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Untitled 5 | 6 | Hello World 7 | -------------------------------------------------------------------------------- /Chapter8Demo/Components/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /FirstMenu/Components/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /WOGreeting/Components/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /WOGreeting4/Components/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /DirectActions/Components/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /FirstMenu/Components/BooksTop.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /FirstMenu/Components/Checkout.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /FirstMenu/Components/MenuBar.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /FirstMenu/Components/MusicTop.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /DirectActions/Components/BooksTop.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /DirectActions/Components/Checkout.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /DirectActions/Components/MenuBar.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /DirectActions/Components/MusicTop.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /FirstMenu/Components/MenuElement.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /WOWroxExample/Components/Main.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /WOWroxExample/Components/PageWrapper.wo/PageWrapper.wod: -------------------------------------------------------------------------------- 1 | Body: WOComponentContent { 2 | _unroll = YES; 3 | } 4 | 5 | Head: D2WHead { 6 | _unroll = YES; 7 | } 8 | 9 | Header: MenuHeader { 10 | } 11 | 12 | -------------------------------------------------------------------------------- /DirectActions/Components/MenuElement.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Login/Components/LoginCheck.wo/LoginCheck.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /WOGreeting4/Components/PageWrapper.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter8Demo/Resources/ModelOB.eomodeld/Item.fspec: -------------------------------------------------------------------------------- 1 | { 2 | FetchSpec = { 3 | class = EOFetchSpecification; 4 | entityName = Item; 5 | fetchLimit = 0; 6 | isDeep = YES; 7 | }; 8 | } 9 | -------------------------------------------------------------------------------- /FetchSpecs/Resources/ModelOB.eomodeld/Item.fspec: -------------------------------------------------------------------------------- 1 | { 2 | FetchSpec = { 3 | class = EOFetchSpecification; 4 | entityName = Item; 5 | fetchLimit = 0; 6 | isDeep = YES; 7 | }; 8 | } 9 | -------------------------------------------------------------------------------- /FirstMenu/Components/ElectronicsTop.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /OneDay/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | Applet: WOJavaClientApplet { 2 | height = 512; 3 | width = 512; 4 | interfaceControllerClassName = "OneDay.client.OneDayInterfaceController"; 5 | useJavaPlugin = YES; 6 | } 7 | -------------------------------------------------------------------------------- /OneDay/Resources/ModelOracle.eomodeld/Item.fspec: -------------------------------------------------------------------------------- 1 | { 2 | "Fetch Spec" = { 3 | class = EOFetchSpecification; 4 | entityName = Item; 5 | fetchLimit = 0; 6 | isDeep = YES; 7 | }; 8 | } 9 | -------------------------------------------------------------------------------- /WOWroxExample/Components/MenuHeader.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /WOWroxExample/Resources/ModelOB.eomodeld/Item.fspec: -------------------------------------------------------------------------------- 1 | { 2 | FetchSpec = { 3 | class = EOFetchSpecification; 4 | entityName = Item; 5 | fetchLimit = 0; 6 | isDeep = YES; 7 | }; 8 | } 9 | -------------------------------------------------------------------------------- /Chapter5And6/Resources/ModelOB.eomodeld/Item.fspec: -------------------------------------------------------------------------------- 1 | { 2 | "Fetch Spec" = { 3 | class = EOFetchSpecification; 4 | entityName = Item; 5 | fetchLimit = 0; 6 | isDeep = YES; 7 | }; 8 | } 9 | -------------------------------------------------------------------------------- /DirectActions/Components/ElectronicsTop.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /FetchSpecs/Resources/ModelOB.eomodeld/Category.fspec: -------------------------------------------------------------------------------- 1 | { 2 | FetchSpec = { 3 | class = EOFetchSpecification; 4 | entityName = Category; 5 | fetchLimit = 0; 6 | isDeep = YES; 7 | }; 8 | } 9 | -------------------------------------------------------------------------------- /WOGreeting/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | NameEntryForm: WOForm { 2 | } 3 | 4 | NameSubmitButton2: WOSubmitButton { 5 | action = submitName; 6 | } 7 | 8 | UserNameTextField2: WOTextField { 9 | value = userName; 10 | } 11 | -------------------------------------------------------------------------------- /WOWroxExample/Components/PageWrapper.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Chapter8Demo/Resources/ModelOB.eomodeld/Category.fspec: -------------------------------------------------------------------------------- 1 | { 2 | FetchSpec = { 3 | class = EOFetchSpecification; 4 | entityName = Category; 5 | fetchLimit = 0; 6 | isDeep = YES; 7 | }; 8 | } 9 | -------------------------------------------------------------------------------- /WOGreeting/Components/PersonalizedGreeting.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /WOGreeting4/Components/PersonalizedGreeting.wo/PersonalizedGreeting.wod: -------------------------------------------------------------------------------- 1 | Hyperlink1: WOHyperlink { 2 | pageName = "Main"; 3 | } 4 | 5 | PageWrapper1: PageWrapper { 6 | } 7 | 8 | String1: WOString { 9 | value = userName; 10 | } -------------------------------------------------------------------------------- /WOWroxExample/Resources/ModelOB.eomodeld/Category.fspec: -------------------------------------------------------------------------------- 1 | { 2 | FetchSpec = { 3 | class = EOFetchSpecification; 4 | entityName = Category; 5 | fetchLimit = 0; 6 | isDeep = YES; 7 | }; 8 | } 9 | -------------------------------------------------------------------------------- /Login/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=Login 3 | project.name.lowercase=login 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /OneDay/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=OneDay 3 | project.name.lowercase=oneday 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /WOGreeting4/Components/PersonalizedGreeting.api: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | Sample code, converted to Eclipse projects and fixed a couple of problems with WO 5.3/5.4, for the Professional WebObjects with Java book from Wrox. 2 | 3 | http://www.amazon.com/Professional-WebObjects-Java-Thomas-Termini/dp/1861004311/ -------------------------------------------------------------------------------- /FirstMenu/Components/MenuElement.wo/MenuElement.wod: -------------------------------------------------------------------------------- 1 | menuItem: WOGenericContainer { 2 | bgcolor = getColor; 3 | elementName = "TD"; 4 | width = width; 5 | align = align; 6 | } 7 | 8 | parentContent: WOComponentContent { 9 | } 10 | 11 | -------------------------------------------------------------------------------- /FirstMenu/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=FirstMenu 3 | project.name.lowercase=firstmenu 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /FetchSpecs/Sources/Order.java: -------------------------------------------------------------------------------- 1 | // Order.java 2 | // Created on Wed Sep 12 22:24:13 2001 by Apple EOModeler Version 5.0 3 | 4 | 5 | public class Order extends _Order { 6 | 7 | public Order() { 8 | super(); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /FetchSpecs/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=FetchSpecs 3 | project.name.lowercase=fetchspecs 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /Login/Components/LoginForm.wo/LoginForm.html: -------------------------------------------------------------------------------- 1 | 2 | Username: 3 |
4 | Password: 5 |
6 | 7 |
8 |
-------------------------------------------------------------------------------- /MonitorTest/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=MonitorTest 3 | project.name.lowercase=monitortest 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /WOGreeting/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=WOGreeting 3 | project.name.lowercase=wogreeting 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /WOGreeting4/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=WOGreeting4 3 | project.name.lowercase=wogreeting4 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /Chapter5And6/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=Chapter5And6 3 | project.name.lowercase=chapter5and6 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /Chapter8Demo/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=Chapter8Demo 3 | project.name.lowercase=chapter8demo 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /DirectActions/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=DirectActions 3 | project.name.lowercase=directactions 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /WOGreeting4/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | Form1: WOForm { 2 | } 3 | 4 | PageWrapper1: PageWrapper { 5 | } 6 | 7 | SubmitButton1: WOSubmitButton { 8 | action = submitName; 9 | } 10 | 11 | TextField1: WOTextField { 12 | value = userName; 13 | } 14 | -------------------------------------------------------------------------------- /WOWroxExample/build.properties: -------------------------------------------------------------------------------- 1 | classes.dir=bin 2 | project.name=WOWroxExample 3 | project.name.lowercase=wowroxexample 4 | project.type=application 5 | principalClass=your.app.Application 6 | customInfoPListContent= 7 | webXML=false 8 | webXML_CustomContent= 9 | -------------------------------------------------------------------------------- /FetchSpecs/Sources/Payment.java: -------------------------------------------------------------------------------- 1 | // Payment.java 2 | // Created on Wed Sep 12 22:24:14 2001 by Apple EOModeler Version 5.0 3 | 4 | 5 | public class Payment extends _Payment { 6 | 7 | public Payment() { 8 | super(); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /WOGreeting4/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | Please Enter Your Name 3 | 4 |
5 | 6 | 7 |
-------------------------------------------------------------------------------- /FetchSpecs/Sources/Category.java: -------------------------------------------------------------------------------- 1 | // Category.java 2 | // Created on Wed Sep 12 22:24:09 2001 by Apple EOModeler Version 5.0 3 | 4 | 5 | public class Category extends _Category { 6 | 7 | public Category() { 8 | super(); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /FetchSpecs/Sources/Customer.java: -------------------------------------------------------------------------------- 1 | // Customer.java 2 | // Created on Wed Sep 12 22:24:10 2001 by Apple EOModeler Version 5.0 3 | 4 | 5 | public class Customer extends _Customer { 6 | 7 | public Customer() { 8 | super(); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /FetchSpecs/Sources/LineItem.java: -------------------------------------------------------------------------------- 1 | // LineItem.java 2 | // Created on Wed Sep 12 22:24:12 2001 by Apple EOModeler Version 5.0 3 | 4 | 5 | public class LineItem extends _LineItem { 6 | 7 | public LineItem() { 8 | super(); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /MonitorTest/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 | -------------------------------------------------------------------------------- /WOGreeting4/Components/PageWrapper.wo/PageWrapper.wod: -------------------------------------------------------------------------------- 1 | ComponentContent1: WOComponentContent { 2 | } 3 | 4 | Repetition1: WORepetition { 5 | item = tempUserName; 6 | list = session.pastUserNames; 7 | } 8 | 9 | String1: WOString { 10 | value = tempUserName; 11 | } -------------------------------------------------------------------------------- /WOWroxExample/Components/PageWrapper.wo/PageWrapper.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 8 | -------------------------------------------------------------------------------- /DirectActions/Components/MenuElement.wo/MenuElement.wod: -------------------------------------------------------------------------------- 1 | menuItem: WOGenericContainer { 2 | align = align; 3 | bgcolor = getColor; 4 | elementName = "TD"; 5 | height = ^height; 6 | valign = ^valign; 7 | width = width; 8 | } 9 | 10 | parentContent: WOComponentContent { 11 | } 12 | 13 | -------------------------------------------------------------------------------- /OneDay/Sources/Main.java: -------------------------------------------------------------------------------- 1 | // Main.java 2 | 3 | import com.webobjects.appserver.WOComponent; 4 | import com.webobjects.appserver.WOContext; 5 | 6 | public class Main extends WOComponent { 7 | 8 | public Main(WOContext context) { 9 | super(context); 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /Login/Components/LoginForm.wo/LoginForm.wod: -------------------------------------------------------------------------------- 1 | form: WOForm { 2 | } 3 | 4 | login:WOSubmitButton { 5 | action=login; 6 | value="Login"; 7 | } 8 | 9 | password: WOPasswordField { 10 | value=password; 11 | } 12 | 13 | username: WOTextField { 14 | value=username; 15 | } 16 | 17 | 18 | -------------------------------------------------------------------------------- /DirectActions/Components/BooksTop.wo/BooksTop.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 |

Welcome to the book store.

9 | -------------------------------------------------------------------------------- /DirectActions/Components/Checkout.wo/Checkout.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 |

This is the checkout area.

9 | -------------------------------------------------------------------------------- /FetchSpecs/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 | Search 9 | 10 | -------------------------------------------------------------------------------- /Chapter5And6/Sources/your/app/Session.java: -------------------------------------------------------------------------------- 1 | // Generated by the WOLips Templateengine Plug-in at 22 déc. 2009 05:00:07 2 | package your.app; 3 | 4 | import com.webobjects.appserver.WOSession; 5 | 6 | public class Session extends WOSession { 7 | private static final long serialVersionUID = 1L; 8 | 9 | public Session() { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /DirectActions/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Testing Menu Bar 6 | 7 | 8 |

Welcome to the WROX ecommerce site

9 | -------------------------------------------------------------------------------- /Login/Components/LoginCheck.wo/LoginCheck.wod: -------------------------------------------------------------------------------- 1 | loginForm: LoginForm { 2 | } 3 | 4 | NOTisUserLoggedIn: WOConditional { 5 | condition=session.isUserLoggedIn; 6 | negate=true; 7 | } 8 | 9 | isUserLoggedIn: WOConditional { 10 | condition=session.isUserLoggedIn; 11 | } 12 | 13 | parentContent: WOComponentContent { 14 | } 15 | 16 | -------------------------------------------------------------------------------- /OneDay/Resources/OrderLookupController.nib/data.dependency: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IBPaletteDependency 6 | 7 | EnterpriseObjects 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /DirectActions/Components/ElectronicsTop.wo/ElectronicsTop.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 |

Read on to hear about our latest bargains.

9 | -------------------------------------------------------------------------------- /DirectActions/Components/MusicTop.wo/MusicTop.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 |

The music department fulfills all your music needs

9 | -------------------------------------------------------------------------------- /OneDay/Resources/OneDayInterfaceController.nib/data.dependency: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IBPaletteDependency 6 | 7 | EnterpriseObjects 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /OneDay/Resources/OrderLookupControllerjohn.nib/JavaCompiling.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | JavaSourceSubpath 6 | com/wrox/client/_OrderLookupController_EOArchive.java 7 | 8 | 9 | -------------------------------------------------------------------------------- /OneDay/Resources/OrderLookupControllerjohn.nib/data.dependency: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IBPaletteDependency 6 | 7 | EnterpriseObjects 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /WOGreeting/Components/PersonalizedGreeting.wo/PersonalizedGreeting.wod: -------------------------------------------------------------------------------- 1 | Hyperlink1: WOHyperlink { 2 | pageName = "Main"; 3 | } 4 | 5 | Repetition2: WORepetition { 6 | item = tempUserName; 7 | list = session.pastUserNames; 8 | } 9 | 10 | String1: WOString { 11 | value = userName; 12 | } 13 | 14 | String2: WOString { 15 | value = tempUserName; 16 | } -------------------------------------------------------------------------------- /FetchSpecs/Sources/Main.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Wed Sep 12 22:18:48 GMT 2001 2 | 3 | import com.webobjects.appserver.WOComponent; 4 | import com.webobjects.appserver.WOContext; 5 | 6 | public class Main extends WOComponent { 7 | 8 | 9 | public Main(WOContext context) { 10 | super(context); 11 | } 12 | 13 | 14 | } 15 | -------------------------------------------------------------------------------- /FirstMenu/Components/BooksTop.wo/BooksTop.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Bookstore 6 | 7 | 8 | 9 |

Welcome to the book store.

10 | 11 | -------------------------------------------------------------------------------- /FirstMenu/Components/Checkout.wo/Checkout.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Checkout 6 | 7 | 8 | 9 |

This is the checkout area.

10 | 11 | -------------------------------------------------------------------------------- /Login/Sources/LoginCheck.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Mon Sep 10 12:26:28 GMT 2001 2 | 3 | import com.webobjects.appserver.WOComponent; 4 | import com.webobjects.appserver.WOContext; 5 | 6 | public class LoginCheck extends WOComponent { 7 | 8 | 9 | public LoginCheck(WOContext context) { 10 | super(context); 11 | } 12 | 13 | 14 | } 15 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/PageWrapper.java: -------------------------------------------------------------------------------- 1 | /* created by DirectToWeb's Project Builder Wizard 2 | */ 3 | 4 | import com.webobjects.appserver.WOComponent; 5 | import com.webobjects.appserver.WOContext; 6 | 7 | public class PageWrapper extends WOComponent { 8 | 9 | public PageWrapper(WOContext aContext) { 10 | super(aContext); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Login/Sources/Main.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Thu Sep 13 12:42:21 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class Main extends WROXComponent { 6 | 7 | public String getArea() { 8 | return "Home"; 9 | } 10 | 11 | public Main(WOContext context) { 12 | super(context); 13 | } 14 | 15 | 16 | } 17 | -------------------------------------------------------------------------------- /FirstMenu/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Testing Menu Bar 6 | 7 | 8 | 9 |

Welcome to the WROX ecommerce site

10 | 11 | -------------------------------------------------------------------------------- /FirstMenu/Sources/Main.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 14:04:22 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class Main extends WROXPage { 6 | 7 | public String getArea() { 8 | return "Home"; 9 | } 10 | 11 | public Main(WOContext context) { 12 | super(context); 13 | } 14 | 15 | 16 | } 17 | -------------------------------------------------------------------------------- /WOWroxExample/Resources/user.d2wmodel: -------------------------------------------------------------------------------- 1 | { 2 | rules = ( 3 | { 4 | class = com.webobjects.directtoweb.Rule; 5 | author = 100; 6 | rhs = { 7 | class = com.webobjects.directtoweb.Assignment; 8 | keyPath = look; 9 | value = "BasicLook"; 10 | }; 11 | } 12 | ); 13 | } 14 | -------------------------------------------------------------------------------- /DirectActions/Sources/Main.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 14:04:22 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class Main extends WROXPage { 6 | 7 | public String getArea() { 8 | return "Home"; 9 | } 10 | 11 | public Main(WOContext context) { 12 | super(context); 13 | } 14 | 15 | 16 | } 17 | -------------------------------------------------------------------------------- /FirstMenu/Components/ElectronicsTop.wo/ElectronicsTop.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Electronics 6 | 7 | 8 | 9 |

Read on to hear about our latest bargains.

10 | 11 | -------------------------------------------------------------------------------- /FirstMenu/Components/MusicTop.wo/MusicTop.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Music for you 6 | 7 | 8 | 9 |

The music department fulfills all your music needs

10 | 11 | -------------------------------------------------------------------------------- /FirstMenu/Sources/WROXPage.java: -------------------------------------------------------------------------------- 1 | /* WROXPage.java created by chanochw on Fri 14-Sep-2001 */ 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | 6 | public abstract class WROXPage extends WROXComponent { 7 | 8 | public WROXPage(WOContext context) { 9 | super(context); 10 | } 11 | 12 | public WROXPage getPage() { 13 | return (WROXPage)context().page(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Login/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Test Login Form 6 | 7 | 8 | Try using brett/ichtus to get in: 9 | This text needs to be protected. 10 | 11 | -------------------------------------------------------------------------------- /OneDay/Sources/Session.java: -------------------------------------------------------------------------------- 1 | // 2 | // Session.java 3 | // Project OneDay 4 | // 5 | // Created by admin on Tue Sep 18 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOSession; 9 | 10 | public class Session extends WOSession { 11 | 12 | public Session() { 13 | super(); 14 | 15 | /* ** Put your per-session initialization code here ** */ 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /OneDay/Resources/OrderLookupController.nib/classes.nib: -------------------------------------------------------------------------------- 1 | { 2 | IBClasses = ( 3 | {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, 4 | { 5 | CLASS = com.wrox.client.OrderLookupController; 6 | LANGUAGE = Java; 7 | SUPERCLASS = com.webobjects.eoapplication.EOInterfaceController; 8 | } 9 | ); 10 | IBVersion = 1; 11 | } -------------------------------------------------------------------------------- /OneDay/Resources/OrderLookupControllerjohn.nib/classes.nib: -------------------------------------------------------------------------------- 1 | { 2 | IBClasses = ( 3 | {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, 4 | { 5 | CLASS = com.wrox.client.OrderLookupController; 6 | LANGUAGE = Java; 7 | SUPERCLASS = com.webobjects.eoapplication.EOInterfaceController; 8 | } 9 | ); 10 | IBVersion = 1; 11 | } -------------------------------------------------------------------------------- /FirstMenu/Sources/MenuBar.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 17:19:20 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class MenuBar extends WROXPage { 6 | public String area = ""; 7 | 8 | 9 | public MenuBar(WOContext context) { 10 | super(context); 11 | } 12 | 13 | public String getArea() { 14 | return area; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /MonitorTest/Sources/Session.java: -------------------------------------------------------------------------------- 1 | // 2 | // Session.java 3 | // Project MonitorTest 4 | // 5 | // Created by admin on Sat Jan 03 1970 6 | // 7 | 8 | import com.webobjects.appserver.WOSession; 9 | 10 | public class Session extends WOSession { 11 | 12 | public Session() { 13 | super(); 14 | 15 | /* ** Put your per-session initialization code here ** */ 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /OneDay/Resources/OneDayInterfaceController.nib/classes.nib: -------------------------------------------------------------------------------- 1 | { 2 | IBClasses = ( 3 | {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, 4 | { 5 | CLASS = OneDay.client.OneDayInterfaceController; 6 | LANGUAGE = Java; 7 | SUPERCLASS = com.webobjects.eoapplication.EOInterfaceController; 8 | } 9 | ); 10 | IBVersion = 1; 11 | } -------------------------------------------------------------------------------- /Chapter8Demo/Sources/Session.java: -------------------------------------------------------------------------------- 1 | // 2 | // Session.java 3 | // Project Chapter8Demo 4 | // 5 | // Created by bernhard on Tue Sep 11 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOSession; 9 | 10 | public class Session extends WOSession { 11 | 12 | public Session() { 13 | super(); 14 | 15 | /* ** Put your per-session initialization code here ** */ 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /FirstMenu/Sources/WROXComponent.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 14:05:25 GMT 2001 2 | 3 | import com.webobjects.appserver.WOComponent; 4 | import com.webobjects.appserver.WOContext; 5 | 6 | public abstract class WROXComponent extends WOComponent { 7 | 8 | public WROXComponent(WOContext context) { 9 | super(context); 10 | } 11 | 12 | public abstract String getArea(); 13 | } 14 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/Session.java: -------------------------------------------------------------------------------- 1 | // 2 | // Session.java 3 | // Project WOWroxExample 4 | // 5 | // Created by admin on Mon Sep 10 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOSession; 9 | 10 | public class Session extends WOSession { 11 | 12 | public Session() { 13 | super(); 14 | 15 | /* ** Put your per-session initialization code here ** */ 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /MonitorTest/Sources/Main.java: -------------------------------------------------------------------------------- 1 | // 2 | // Main.java: Class file for WO Component 'Main' 3 | // Project MonitorTest 4 | // 5 | // Created by admin on Sat Jan 03 1970 6 | // 7 | 8 | import com.webobjects.appserver.WOComponent; 9 | import com.webobjects.appserver.WOContext; 10 | 11 | public class Main extends WOComponent { 12 | 13 | public Main(WOContext context) { 14 | super(context); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /Chapter5And6/Sources/your/app/components/Main.java: -------------------------------------------------------------------------------- 1 | // Generated by the WOLips Templateengine Plug-in at 22 déc. 2009 05:00:07 2 | package your.app.components; 3 | 4 | import com.webobjects.appserver.WOComponent; 5 | import com.webobjects.appserver.WOContext; 6 | 7 | public class Main extends WOComponent { 8 | private static final long serialVersionUID = 1L; 9 | 10 | public Main(WOContext context) { 11 | super(context); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /DirectActions/Sources/MenuBar.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 17:19:20 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class MenuBar extends WROXPage { 6 | public String area = ""; 7 | 8 | public boolean isStateless() { 9 | return true; 10 | } 11 | 12 | public MenuBar(WOContext context) { 13 | super(context); 14 | } 15 | 16 | public String getArea() { 17 | return area; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /WOGreeting/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 | 9 |

Please enter your name

10 |

11 |
12 | 13 | -------------------------------------------------------------------------------- /Chapter5And6/Resources/ModelOB.eomodeld/DiagramLayout: -------------------------------------------------------------------------------- 1 | { 2 | Layouts = { 3 | Default = { 4 | EntityOption = All; 5 | RelationshipOption = Name; 6 | ViewPositions = { 7 | Address = (0.000000, 25.000000, 147.000000, 150.000000); 8 | Category = (69.000000, 547.000000, 151.000000, 132.000000); 9 | }; 10 | orthoLines = Y; 11 | }; 12 | }; 13 | Version = 1; 14 | } 15 | -------------------------------------------------------------------------------- /FetchSpecs/Sources/Address.java: -------------------------------------------------------------------------------- 1 | // Address.java 2 | // Created on Wed Sep 12 22:24:07 2001 by Apple EOModeler Version 5.0 3 | 4 | 5 | public class Address extends _Address { 6 | 7 | public Address() { 8 | super(); 9 | } 10 | 11 | public String complement() { 12 | return (String)storedValueForKey("complement"); 13 | } 14 | 15 | public void setComplement(String value) { 16 | takeStoredValueForKey(value, "complement"); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /WOGreeting4/Sources/PageWrapper.java: -------------------------------------------------------------------------------- 1 | // 2 | // PageWrapper.java: Class file for WO Component 'PageWrapper' 3 | // Project WOGreeting4 4 | // 5 | // Created by admin on Mon Sep 10 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOComponent; 9 | import com.webobjects.appserver.WOContext; 10 | 11 | public class PageWrapper extends WOComponent { 12 | protected String tempUserName; 13 | 14 | public PageWrapper(WOContext context) { 15 | super(context); 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /Login/Sources/DirectAction.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOActionResults; 4 | import com.webobjects.appserver.WODirectAction; 5 | import com.webobjects.appserver.WORequest; 6 | 7 | public class DirectAction extends WODirectAction { 8 | 9 | public DirectAction(WORequest aRequest) { 10 | super(aRequest); 11 | } 12 | 13 | public WOActionResults defaultAction() { 14 | return pageWithName("Main"); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /FetchSpecs/Sources/DirectAction.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOActionResults; 4 | import com.webobjects.appserver.WODirectAction; 5 | import com.webobjects.appserver.WORequest; 6 | 7 | public class DirectAction extends WODirectAction { 8 | 9 | public DirectAction(WORequest aRequest) { 10 | super(aRequest); 11 | } 12 | 13 | public WOActionResults defaultAction() { 14 | return pageWithName("Main"); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /FirstMenu/Sources/DirectAction.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOActionResults; 4 | import com.webobjects.appserver.WODirectAction; 5 | import com.webobjects.appserver.WORequest; 6 | 7 | public class DirectAction extends WODirectAction { 8 | 9 | public DirectAction(WORequest aRequest) { 10 | super(aRequest); 11 | } 12 | 13 | public WOActionResults defaultAction() { 14 | return pageWithName("Main"); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /DirectActions/Sources/DirectAction.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOActionResults; 4 | import com.webobjects.appserver.WODirectAction; 5 | import com.webobjects.appserver.WORequest; 6 | 7 | public class DirectAction extends WODirectAction { 8 | 9 | public DirectAction(WORequest aRequest) { 10 | super(aRequest); 11 | } 12 | 13 | public WOActionResults defaultAction() { 14 | return pageWithName("Main"); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /FirstMenu/Sources/MusicTop.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 17:44:09 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class MusicTop extends WROXPage { 6 | protected String area = "Music"; 7 | 8 | public MusicTop(WOContext context) { 9 | super(context); 10 | } 11 | 12 | 13 | public String getArea() { 14 | return area; 15 | } 16 | public void setArea(String newArea) { 17 | area = newArea; 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /OneDay/Sources/com/wrox/client/OrderLookupController.java: -------------------------------------------------------------------------------- 1 | 2 | package com.wrox.client; 3 | 4 | import com.webobjects.eoapplication.EOInterfaceController; 5 | import com.webobjects.eocontrol.EOEditingContext; 6 | 7 | public class OrderLookupController extends EOInterfaceController { 8 | 9 | public OrderLookupController() { 10 | super(); 11 | } 12 | 13 | public OrderLookupController(EOEditingContext substitutionEditingContext) { 14 | super(substitutionEditingContext); 15 | } 16 | } -------------------------------------------------------------------------------- /DirectActions/Sources/MusicTop.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 17:44:09 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class MusicTop extends WROXPage { 6 | protected String area = "Music"; 7 | 8 | public MusicTop(WOContext context) { 9 | super(context); 10 | } 11 | 12 | 13 | public String getArea() { 14 | return area; 15 | } 16 | public void setArea(String newArea) { 17 | area = newArea; 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /FirstMenu/Sources/BooksTop.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 17:44:17 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class BooksTop extends WROXPage { 6 | protected String area = "Books"; 7 | 8 | 9 | public BooksTop(WOContext context) { 10 | super(context); 11 | } 12 | 13 | 14 | public String getArea() { 15 | return area; 16 | } 17 | public void setArea(String newArea) { 18 | area = newArea; 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /DirectActions/Sources/BooksTop.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 17:44:17 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class BooksTop extends WROXPage { 6 | protected String area = "Books"; 7 | 8 | 9 | public BooksTop(WOContext context) { 10 | super(context); 11 | } 12 | 13 | 14 | public String getArea() { 15 | return area; 16 | } 17 | public void setArea(String newArea) { 18 | area = newArea; 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /FirstMenu/Sources/Checkout.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 17:44:34 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class Checkout extends WROXPage { 6 | protected String area = "Checkout"; 7 | 8 | 9 | public Checkout(WOContext context) { 10 | super(context); 11 | } 12 | 13 | 14 | public String getArea() { 15 | return area; 16 | } 17 | public void setArea(String newArea) { 18 | area = newArea; 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /WOGreeting4/Components/PersonalizedGreeting.wo/PersonalizedGreeting.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 | Hello   9 |
if this is not your name you can 10 | enter a new name.
11 | 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | build 3 | dist 4 | 5 | /.DS_Store 6 | /Chapter5And6/bin 7 | /Chapter5And6/build 8 | /Chapter8Demo/bin 9 | /Chapter8Demo/build 10 | /DirectActions/bin 11 | /DirectActions/build 12 | /FetchSpecs/bin 13 | /FetchSpecs/build 14 | /FirstMenu/bin 15 | /FirstMenu/build 16 | /Login/bin 17 | /Login/build 18 | /MonitorTest/bin 19 | /MonitorTest/build 20 | /OneDay/bin 21 | /OneDay/build 22 | /WOGreeting/bin 23 | /WOGreeting/build 24 | /WOGreeting4/bin 25 | /WOGreeting4/build 26 | /WOWroxExample/bin 27 | /WOWroxExample/build -------------------------------------------------------------------------------- /DirectActions/Sources/Checkout.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 17:44:34 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class Checkout extends WROXPage { 6 | protected String area = "Checkout"; 7 | 8 | 9 | public Checkout(WOContext context) { 10 | super(context); 11 | } 12 | 13 | 14 | public String getArea() { 15 | return area; 16 | } 17 | public void setArea(String newArea) { 18 | area = newArea; 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /Login/Sources/Session.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOSession; 4 | 5 | public class Session extends WOSession { 6 | protected Customer user; 7 | 8 | public void setUser(Customer user) { 9 | this.user = user; 10 | } 11 | 12 | public Customer getUser(Customer user) { 13 | return user; 14 | } 15 | 16 | public boolean isUserLoggedIn() { 17 | if(user == null) { 18 | return false; 19 | } else { 20 | return true; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /WOGreeting4/Components/PageWrapper.wo/PageWrapper.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 | 9 |
So far you have used the following names on this site:
10 | * 11 | 12 |

13 | 14 | 15 | -------------------------------------------------------------------------------- /FirstMenu/Sources/ElectronicsTop.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 17:44:26 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class ElectronicsTop extends WROXPage { 6 | protected String area = "Electronics"; 7 | 8 | 9 | public ElectronicsTop(WOContext context) { 10 | super(context); 11 | } 12 | 13 | 14 | public String getArea() { 15 | return area; 16 | } 17 | public void setArea(String newArea) { 18 | area = newArea; 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /OneDay/Resources/OrderLookupController.nib/info.nib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IBDocumentLocation 6 | 35 77 356 240 0 74 1152 774 7 | IBUserGuides 8 | 9 | MasterWindow 10 | 11 | guideLocations 12 | 13 | guidesLocked 14 | NO 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /DirectActions/Sources/ElectronicsTop.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 17:44:26 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class ElectronicsTop extends WROXPage { 6 | protected String area = "Electronics"; 7 | 8 | 9 | public ElectronicsTop(WOContext context) { 10 | super(context); 11 | } 12 | 13 | 14 | public String getArea() { 15 | return area; 16 | } 17 | public void setArea(String newArea) { 18 | area = newArea; 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /OneDay/Resources/OneDayInterfaceController.nib/info.nib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IBDocumentLocation 6 | 35 77 356 240 0 74 1152 774 7 | IBUserGuides 8 | 9 | MasterWindow 10 | 11 | guideLocations 12 | 13 | guidesLocked 14 | NO 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /OneDay/Resources/OrderLookupControllerjohn.nib/info.nib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IBDocumentLocation 6 | 35 77 356 240 0 74 1152 774 7 | IBUserGuides 8 | 9 | MasterWindow 10 | 11 | guideLocations 12 | 13 | guidesLocked 14 | NO 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /Login/Sources/Application.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOApplication; 4 | import com.webobjects.foundation.NSLog; 5 | 6 | public class Application extends WOApplication { 7 | 8 | public static void main(String argv[]) { 9 | WOApplication.main(argv, Application.class); 10 | } 11 | 12 | public Application() { 13 | super(); 14 | NSLog.out.appendln("Welcome to " + this.name() + " !"); 15 | /* ** put your initialization code in here ** */ 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /DirectActions/Sources/Application.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOApplication; 4 | import com.webobjects.foundation.NSLog; 5 | 6 | public class Application extends WOApplication { 7 | 8 | public static void main(String argv[]) { 9 | WOApplication.main(argv, Application.class); 10 | } 11 | 12 | public Application() { 13 | super(); 14 | NSLog.out.appendln("Welcome to " + this.name() + " !"); 15 | /* ** put your initialization code in here ** */ 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /FetchSpecs/Sources/Application.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOApplication; 4 | import com.webobjects.foundation.NSLog; 5 | 6 | public class Application extends WOApplication { 7 | 8 | public static void main(String argv[]) { 9 | WOApplication.main(argv, Application.class); 10 | } 11 | 12 | public Application() { 13 | super(); 14 | NSLog.out.appendln("Welcome to " + this.name() + " !"); 15 | /* ** put your initialization code in here ** */ 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /FirstMenu/Sources/Application.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard 2 | 3 | import com.webobjects.appserver.WOApplication; 4 | import com.webobjects.foundation.NSLog; 5 | 6 | public class Application extends WOApplication { 7 | 8 | public static void main(String argv[]) { 9 | WOApplication.main(argv, Application.class); 10 | } 11 | 12 | public Application() { 13 | super(); 14 | NSLog.out.appendln("Welcome to " + this.name() + " !"); 15 | /* ** put your initialization code in here ** */ 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /OneDay/Sources/OneDay/client/OneDayInterfaceController.java: -------------------------------------------------------------------------------- 1 | // OneDayInterfaceController.java 2 | 3 | package OneDay.client; 4 | 5 | import com.webobjects.eoapplication.EOInterfaceController; 6 | import com.webobjects.eocontrol.EOEditingContext; 7 | 8 | public class OneDayInterfaceController extends EOInterfaceController { 9 | 10 | public OneDayInterfaceController() { 11 | super(); 12 | } 13 | 14 | public OneDayInterfaceController(EOEditingContext substitutionEditingContext) { 15 | super(substitutionEditingContext); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Chapter5And6/Sources/your/app/Application.java: -------------------------------------------------------------------------------- 1 | // Generated by the WOLips Templateengine Plug-in at 22 déc. 2009 05:00:07 2 | package your.app; 3 | 4 | import com.webobjects.foundation.NSLog; 5 | 6 | import com.webobjects.appserver.WOApplication; 7 | 8 | public class Application extends WOApplication { 9 | public static void main(String[] argv) { 10 | WOApplication.main(argv, Application.class); 11 | } 12 | 13 | public Application() { 14 | NSLog.out.appendln("Welcome to " + name() + " !"); 15 | /* ** put your initialization code in here ** */ 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /OneDay/Sources/DirectAction.java: -------------------------------------------------------------------------------- 1 | // 2 | // DirectAction.java 3 | // Project OneDay 4 | // 5 | // Created by admin on Tue Sep 18 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOActionResults; 9 | import com.webobjects.appserver.WODirectAction; 10 | import com.webobjects.appserver.WORequest; 11 | 12 | public class DirectAction extends WODirectAction { 13 | 14 | public DirectAction(WORequest aRequest) { 15 | super(aRequest); 16 | } 17 | 18 | public WOActionResults defaultAction() { 19 | return pageWithName("Main"); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /MonitorTest/Sources/DirectAction.java: -------------------------------------------------------------------------------- 1 | // 2 | // DirectAction.java 3 | // Project MonitorTest 4 | // 5 | // Created by admin on Sat Jan 03 1970 6 | // 7 | 8 | import com.webobjects.appserver.WOActionResults; 9 | import com.webobjects.appserver.WODirectAction; 10 | import com.webobjects.appserver.WORequest; 11 | 12 | public class DirectAction extends WODirectAction { 13 | 14 | public DirectAction(WORequest aRequest) { 15 | super(aRequest); 16 | } 17 | 18 | public WOActionResults defaultAction() { 19 | return pageWithName("Main"); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /WOGreeting4/Sources/DirectAction.java: -------------------------------------------------------------------------------- 1 | // 2 | // DirectAction.java 3 | // Project WOGreeting4 4 | // 5 | // Created by admin on Mon Sep 10 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOActionResults; 9 | import com.webobjects.appserver.WODirectAction; 10 | import com.webobjects.appserver.WORequest; 11 | 12 | public class DirectAction extends WODirectAction { 13 | 14 | public DirectAction(WORequest aRequest) { 15 | super(aRequest); 16 | } 17 | 18 | public WOActionResults defaultAction() { 19 | return pageWithName("Main"); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /Chapter8Demo/Sources/DirectAction.java: -------------------------------------------------------------------------------- 1 | // 2 | // DirectAction.java 3 | // Project Chapter8Demo 4 | // 5 | // Created by bernhard on Tue Sep 11 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOActionResults; 9 | import com.webobjects.appserver.WODirectAction; 10 | import com.webobjects.appserver.WORequest; 11 | 12 | public class DirectAction extends WODirectAction { 13 | 14 | public DirectAction(WORequest aRequest) { 15 | super(aRequest); 16 | } 17 | 18 | public WOActionResults defaultAction() { 19 | return pageWithName("Main"); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /WOGreeting/Sources/DirectAction.java: -------------------------------------------------------------------------------- 1 | // 2 | // DirectAction.java 3 | // Project WOGreetingCDP 4 | // 5 | // Created by chanoch on Tue Sep 11 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOActionResults; 9 | import com.webobjects.appserver.WODirectAction; 10 | import com.webobjects.appserver.WORequest; 11 | 12 | public class DirectAction extends WODirectAction { 13 | 14 | public DirectAction(WORequest aRequest) { 15 | super(aRequest); 16 | } 17 | 18 | public WOActionResults defaultAction() { 19 | return pageWithName("Main"); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/DirectAction.java: -------------------------------------------------------------------------------- 1 | // 2 | // DirectAction.java 3 | // Project WOWroxExample 4 | // 5 | // Created by admin on Mon Sep 10 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOActionResults; 9 | import com.webobjects.appserver.WODirectAction; 10 | import com.webobjects.appserver.WORequest; 11 | 12 | public class DirectAction extends WODirectAction { 13 | 14 | public DirectAction(WORequest aRequest) { 15 | super(aRequest); 16 | } 17 | 18 | public WOActionResults defaultAction() { 19 | return pageWithName("Main"); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /Chapter5And6/Sources/your/app/DirectAction.java: -------------------------------------------------------------------------------- 1 | // Generated by the WOLips Templateengine Plug-in at 22 déc. 2009 05:00:07 2 | package your.app; 3 | 4 | import com.webobjects.appserver.WOActionResults; 5 | import com.webobjects.appserver.WORequest; 6 | import com.webobjects.appserver.WODirectAction; 7 | 8 | import your.app.components.Main; 9 | 10 | public class DirectAction extends WODirectAction { 11 | public DirectAction(WORequest request) { 12 | super(request); 13 | } 14 | 15 | public WOActionResults defaultAction() { 16 | return pageWithName(Main.class.getName()); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /DirectActions/Sources/MyDirectAction.java: -------------------------------------------------------------------------------- 1 | /* MyDirectAction.java created by chanochw on Sat 15-Sep-2001 */ 2 | 3 | import com.webobjects.appserver.WOActionResults; 4 | import com.webobjects.appserver.WORequest; 5 | 6 | public class MyDirectAction extends DirectAction { 7 | public MyDirectAction(WORequest aRequest) { 8 | super(aRequest); 9 | } 10 | 11 | public WOActionResults performActionNamed(String name) { 12 | 13 | WROXPage nextPage=(WROXPage) pageWithName(name); 14 | nextPage.takeFormValues (request().formValues()); 15 | 16 | return nextPage; 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /OneDay/Resources/ModelOracle.eomodeld/applyDiscount.storedProcedure: -------------------------------------------------------------------------------- 1 | { 2 | arguments = ( 3 | { 4 | allowsNull = Y; 5 | columnName = discount; 6 | externalType = NUMBER; 7 | internalInfo = {_nameInObjectStore = 0; }; 8 | name = discount; 9 | parameterDirection = 1; 10 | precision = 3; 11 | scale = 2; 12 | valueClassName = NSNumber; 13 | valueType = d; 14 | } 15 | ); 16 | externalName = APPLY_DISCOUNT; 17 | name = applyDiscount; 18 | } 19 | -------------------------------------------------------------------------------- /OneDay/Sources/Application.java: -------------------------------------------------------------------------------- 1 | // 2 | // Application.java 3 | // Project OneDay 4 | // 5 | // Created by admin on Tue Sep 18 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOApplication; 9 | 10 | public class Application extends WOApplication { 11 | 12 | public static void main(String argv[]) { 13 | WOApplication.main(argv, Application.class); 14 | } 15 | 16 | public Application() { 17 | super(); 18 | System.out.println("Welcome to " + this.name() + "!"); 19 | 20 | /* ** Put your application initialization code here ** */ 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /MonitorTest/Sources/Application.java: -------------------------------------------------------------------------------- 1 | // 2 | // Application.java 3 | // Project MonitorTest 4 | // 5 | // Created by admin on Sat Jan 03 1970 6 | // 7 | 8 | import com.webobjects.appserver.WOApplication; 9 | 10 | public class Application extends WOApplication { 11 | 12 | public static void main(String argv[]) { 13 | WOApplication.main(argv, Application.class); 14 | } 15 | 16 | public Application() { 17 | super(); 18 | System.out.println("Welcome to " + this.name() + "!"); 19 | 20 | /* ** Put your application initialization code here ** */ 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /WOGreeting4/Sources/Application.java: -------------------------------------------------------------------------------- 1 | // 2 | // Application.java 3 | // Project WOGreeting4 4 | // 5 | // Created by admin on Mon Sep 10 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOApplication; 9 | 10 | public class Application extends WOApplication { 11 | 12 | public static void main(String argv[]) { 13 | WOApplication.main(argv, Application.class); 14 | } 15 | 16 | public Application() { 17 | super(); 18 | System.out.println("Welcome to " + this.name() + "!"); 19 | 20 | /* ** Put your application initialization code here ** */ 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /Chapter8Demo/Sources/Application.java: -------------------------------------------------------------------------------- 1 | // 2 | // Application.java 3 | // Project Chapter8Demo 4 | // 5 | // Created by bernhard on Tue Sep 11 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOApplication; 9 | 10 | public class Application extends WOApplication { 11 | 12 | public static void main(String argv[]) { 13 | WOApplication.main(argv, Application.class); 14 | } 15 | 16 | public Application() { 17 | super(); 18 | System.out.println("Welcome to " + this.name() + "!"); 19 | 20 | /* ** Put your application initialization code here ** */ 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/Application.java: -------------------------------------------------------------------------------- 1 | // 2 | // Application.java 3 | // Project WOWroxExample 4 | // 5 | // Created by admin on Mon Sep 10 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOApplication; 9 | 10 | public class Application extends WOApplication { 11 | 12 | public static void main(String argv[]) { 13 | WOApplication.main(argv, Application.class); 14 | } 15 | 16 | public Application() { 17 | super(); 18 | System.out.println("Welcome to " + this.name() + "!"); 19 | 20 | /* ** Put your application initialization code here ** */ 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /DirectActions/Components/MenuBar.wo/MenuBar.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Books 5 | 6 | 7 | 8 | Music 9 | 10 | 11 | 12 | Electronics 13 | 14 | 15 |   16 | 17 | 18 | Checkout 19 | 20 | 21 | -------------------------------------------------------------------------------- /FirstMenu/Components/MenuBar.wo/MenuBar.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Books 5 | 6 | 7 | Music 8 | 9 | 10 | Electronics 11 | 12 |   13 | 14 | Checkout 15 | 16 | 17 | -------------------------------------------------------------------------------- /WOGreeting4/Sources/PersonalizedGreeting.java: -------------------------------------------------------------------------------- 1 | // 2 | // PersonalizedGreeting.java: Class file for WO Component 'PersonalizedGreeting' 3 | // Project WOGreeting4 4 | // 5 | // Created by admin on Mon Sep 10 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOComponent; 9 | import com.webobjects.appserver.WOContext; 10 | 11 | public class PersonalizedGreeting extends WOComponent { 12 | protected String userName; 13 | 14 | public PersonalizedGreeting(WOContext context) { 15 | super(context); 16 | } 17 | 18 | public void setUserName(String newUserName) 19 | { 20 | userName = newUserName; 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /Login/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Login 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /OneDay/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | OneDay 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /WOWroxExample/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | DirectToWebPlaque: WOImage { 2 | alt = "Direct to Web - WebObjects 4.5"; 3 | filename = "DTW.gif"; 4 | framework = "JavaDirectToWeb"; 5 | height = "49"; 6 | name = "Direct to Web - WebObjects 4.5"; 7 | width = "196"; 8 | } 9 | 10 | LACheckbox: WOCheckBox { 11 | checked = wantsWebAssistant; 12 | } 13 | 14 | LoginButton: WOSubmitButton { 15 | action = defaultPage; 16 | value = "Login"; 17 | } 18 | 19 | LoginForm: WOForm { 20 | } 21 | 22 | PasswordField: WOPasswordField { 23 | value = password; 24 | width = "16"; 25 | } 26 | 27 | UsernameField: WOTextField { 28 | value = username; 29 | width = "16"; 30 | } 31 | 32 | -------------------------------------------------------------------------------- /FirstMenu/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | FirstMenu 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /Chapter5And6/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Chapter5And6 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /Chapter8Demo/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Chapter8Demo 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /FetchSpecs/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | FetchSpecs 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /MonitorTest/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | MonitorTest 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /WOGreeting/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | WOGreeting 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /WOGreeting4/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | WOGreeting4 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /DirectActions/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | DirectActions 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /WOWroxExample/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | WOWroxExample 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.objectstyle.wolips.incrementalbuilder 15 | 16 | 17 | 18 | 19 | 20 | org.eclipse.jdt.core.javanature 21 | org.objectstyle.wolips.incrementalapplicationnature 22 | 23 | 24 | -------------------------------------------------------------------------------- /WOWroxExample/Sources/Main.java: -------------------------------------------------------------------------------- 1 | /* created by DirectToWeb's Project Builder Wizard 2 | */ 3 | 4 | import com.webobjects.appserver.WOComponent; 5 | import com.webobjects.appserver.WOContext; 6 | import com.webobjects.directtoweb.D2W; 7 | 8 | public class Main extends WOComponent { 9 | 10 | public String username; 11 | public String password; 12 | public boolean wantsWebAssistant=false; 13 | 14 | public Main(WOContext aContext) { 15 | super(aContext); 16 | } 17 | 18 | public WOComponent defaultPage() { 19 | D2W.factory().setWebAssistantEnabled(wantsWebAssistant); 20 | return D2W.factory().defaultPage(session()); 21 | } 22 | 23 | } 24 | 25 | -------------------------------------------------------------------------------- /FetchSpecs/Components/Search.wo/Search.wod: -------------------------------------------------------------------------------- 1 | Conditional1: WOConditional { 2 | condition = showResults; 3 | } 4 | 5 | Conditional2: WOConditional { 6 | condition = noResults; 7 | } 8 | 9 | Form1: WOForm { 10 | } 11 | 12 | Repetition1: WORepetition { 13 | item = customer; 14 | list = customers; 15 | } 16 | 17 | String1: WOString { 18 | value = customer.firstName; 19 | } 20 | 21 | String2: WOString { 22 | value = customer.lastName; 23 | } 24 | 25 | String3: WOString { 26 | value = customer.email; 27 | } 28 | 29 | SubmitButton1: WOSubmitButton { 30 | action = searchForCustomers; 31 | value = "Search"; 32 | } 33 | 34 | TextField1: WOTextField { 35 | value = queryBindings.lastNameValue; 36 | } -------------------------------------------------------------------------------- /WOGreeting4/Sources/Session.java: -------------------------------------------------------------------------------- 1 | // 2 | // Session.java 3 | // Project WOGreeting4 4 | // 5 | // Created by admin on Mon Sep 10 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOSession; 9 | import com.webobjects.foundation.NSMutableArray; 10 | 11 | public class Session extends WOSession { 12 | 13 | /** @TypeInfo java.lang.String */ 14 | protected NSMutableArray pastUserNames; 15 | 16 | public Session() { 17 | super(); 18 | pastUserNames=new NSMutableArray(); 19 | } 20 | 21 | public void addUserName(String newUser){ 22 | pastUserNames.addObject(newUser); 23 | 24 | /* ** Put your per-session initialization code here ** */ 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /WOGreeting4/Sources/Main.java: -------------------------------------------------------------------------------- 1 | // 2 | // Main.java: Class file for WO Component 'Main' 3 | // Project WOGreeting4 4 | // 5 | // Created by admin on Mon Sep 10 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOComponent; 9 | import com.webobjects.appserver.WOContext; 10 | 11 | public class Main extends WOComponent { 12 | protected String userName; 13 | public Main(WOContext context) { 14 | super(context); 15 | } 16 | 17 | public WOComponent submitName() 18 | { 19 | PersonalizedGreeting greetingPage=(PersonalizedGreeting)pageWithName("PersonalizedGreeting"); 20 | greetingPage.setUserName(userName); 21 | ((Session)session()).addUserName(userName); 22 | return greetingPage; 23 | } 24 | 25 | } 26 | -------------------------------------------------------------------------------- /WOGreeting/Components/PersonalizedGreeting.wo/PersonalizedGreeting.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 | Hello 9 | 10 |

If this is not your name you can 11 | enter a new name 12 |

So far you have used the following names on the site:

13 | 14 | 15 | 16 | 17 | 18 |
19 |
20 | 21 | -------------------------------------------------------------------------------- /FirstMenu/Components/MenuBar.wo/MenuBar.wod: -------------------------------------------------------------------------------- 1 | books : MenuElement { 2 | area = "Books"; 3 | } 4 | 5 | booksLink : WOHyperlink { 6 | pageName = "BooksTop"; 7 | } 8 | 9 | checkout : MenuElement { 10 | area = "Checkout"; 11 | } 12 | 13 | checkoutLink : WOHyperlink { 14 | pageName = "Checkout"; 15 | } 16 | 17 | electronics : MenuElement { 18 | area = "Electronics"; 19 | } 20 | 21 | electronicsLink : WOHyperlink { 22 | pageName = "ElectronicsTop"; 23 | } 24 | 25 | emptyCell : MenuElement { 26 | area = "none"; 27 | } 28 | 29 | menuTable : WOGenericContainer { 30 | elementName = "TABLE"; 31 | height = 40; 32 | width = 360; 33 | } 34 | 35 | music : MenuElement { 36 | area = "Music"; 37 | } 38 | 39 | musicLink : WOHyperlink { 40 | pageName = "MusicTop"; 41 | } -------------------------------------------------------------------------------- /Chapter5And6/Resources/stored-procedure-oracle.sql: -------------------------------------------------------------------------------- 1 | CREATE OR REPLACE PROCEDURE apply_discount 2 | ( 3 | discount IN NUMBER 4 | ) AS 5 | BEGIN 6 | update tItem set retailPrice = retailPrice / (1 + discount) , 7 | storePrice = storePrice / (1 + discount) 8 | where itemID in 9 | (select distinct itemID from tLineItem, tOrder 10 | where tOrder.orderID = tLineItem.orderID and theDate < sysdate-30); 11 | END ; 12 | / 13 | 14 | CREATE OR REPLACE FUNCTION volume(startDate in DATE, endDate in DATE) return NUMBER AS 15 | sales number; 16 | BEGIN 17 | SELECT sum(amount) into sales from tPayment , tOrder where tOrder.theDate > startDate 18 | and tOrder.theDate < endDate and tPayment.paymentID = tOrder.paymentID; 19 | return sales; 20 | END; 21 | / 22 | -------------------------------------------------------------------------------- /Login/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Chapter5And6/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Chapter8Demo/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /DirectActions/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /FetchSpecs/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /FirstMenu/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /MonitorTest/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /WOGreeting/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /WOGreeting4/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /OneDay/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /FetchSpecs/Resources/ModelOB.eomodeld/Customer.fspec: -------------------------------------------------------------------------------- 1 | { 2 | lastNameFetchSpec = { 3 | class = EOFetchSpecification; 4 | entityName = Customer; 5 | fetchLimit = 0; 6 | isDeep = YES; 7 | qualifier = { 8 | class = EOKeyValueQualifier; 9 | key = lastName; 10 | selectorName = "isLike:"; 11 | value = {_key = lastNameValue; class = EOQualifierVariable; }; 12 | }; 13 | sortOrderings = ( 14 | { 15 | class = EOSortOrdering; 16 | key = lastName; 17 | selectorName = "compareCaseInsensitiveAscending:"; 18 | }, 19 | { 20 | class = EOSortOrdering; 21 | key = firstName; 22 | selectorName = "compareCaseInsensitiveAscending:"; 23 | } 24 | ); 25 | }; 26 | } 27 | -------------------------------------------------------------------------------- /WOWroxExample/Resources/ModelOB.eomodeld/Customer.fspec: -------------------------------------------------------------------------------- 1 | { 2 | lastNameFetchSpec = { 3 | class = EOFetchSpecification; 4 | entityName = Customer; 5 | fetchLimit = 0; 6 | isDeep = YES; 7 | qualifier = { 8 | class = EOKeyValueQualifier; 9 | key = lastName; 10 | selectorName = "isLike:"; 11 | value = {_key = lastNameValue; class = EOQualifierVariable; }; 12 | }; 13 | sortOrderings = ( 14 | { 15 | class = EOSortOrdering; 16 | key = lastName; 17 | selectorName = "compareCaseInsensitiveAscending:"; 18 | }, 19 | { 20 | class = EOSortOrdering; 21 | key = firstName; 22 | selectorName = "compareCaseInsensitiveAscending:"; 23 | } 24 | ); 25 | }; 26 | } 27 | -------------------------------------------------------------------------------- /WOWroxExample/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /DirectActions/Sources/WROXPage.java: -------------------------------------------------------------------------------- 1 | /* WROXPage.java created by chanochw on Fri 14-Sep-2001 */ 2 | 3 | import com.webobjects.appserver.WOContext; 4 | import com.webobjects.foundation.NSArray; 5 | import com.webobjects.foundation.NSDictionary; 6 | 7 | 8 | public abstract class WROXPage extends WROXComponent { 9 | 10 | public void takeFormValues(NSDictionary value) { 11 | java.util.Enumeration enumerator = getValueList().objectEnumerator(); 12 | while(enumerator.hasMoreElements()) { 13 | String key=(String) enumerator.nextElement(); 14 | 15 | Object obj = context().request().formValueForKey(key); 16 | if (obj != null) { 17 | takeValueForKey(obj,key); 18 | } 19 | } 20 | } 21 | 22 | public NSArray getValueList() { 23 | return NSArray.EmptyArray; 24 | } 25 | 26 | public WROXPage(WOContext context) { 27 | super(context); 28 | } 29 | 30 | public WROXPage getPage() { 31 | return (WROXPage)context().page(); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /OneDay/Resources/ModelOracle.eomodeld/volume.storedProcedure: -------------------------------------------------------------------------------- 1 | { 2 | arguments = ( 3 | { 4 | allowsNull = Y; 5 | columnName = 2; 6 | externalType = DATE; 7 | name = endDate; 8 | parameterDirection = 1; 9 | valueClassName = NSCalendarDate; 10 | }, 11 | { 12 | allowsNull = Y; 13 | columnName = 0; 14 | externalType = NUMBER; 15 | name = sales; 16 | parameterDirection = 2; 17 | precision = 22; 18 | valueClassName = NSNumber; 19 | valueType = l; 20 | }, 21 | { 22 | allowsNull = Y; 23 | columnName = 1; 24 | externalType = DATE; 25 | name = startDate; 26 | parameterDirection = 1; 27 | valueClassName = NSCalendarDate; 28 | } 29 | ); 30 | externalName = VOLUME; 31 | name = volume; 32 | } 33 | -------------------------------------------------------------------------------- /Chapter5And6/Resources/ModelOB.eomodeld/EOPrototypes.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = ""; 5 | externalType = int; 6 | name = artificialKey; 7 | valueClassName = NSNumber; 8 | valueType = i; 9 | }, 10 | { 11 | columnName = ""; 12 | externalType = double; 13 | name = currency; 14 | precision = 14; 15 | scale = 2; 16 | valueClassName = NSNumber; 17 | valueType = d; 18 | }, 19 | { 20 | columnName = ""; 21 | externalType = char; 22 | name = telephone; 23 | valueClassName = NSString; 24 | width = 20; 25 | } 26 | ); 27 | attributesUsedForLocking = (artificialKey, currency, telephone); 28 | className = EOGenericRecord; 29 | classProperties = (currency, telephone); 30 | fetchSpecificationDictionary = {}; 31 | name = EOPrototypes; 32 | primaryKeyAttributes = (artificialKey); 33 | } 34 | -------------------------------------------------------------------------------- /FetchSpecs/Sources/Item.java: -------------------------------------------------------------------------------- 1 | // Item.java 2 | // Created on Wed Sep 12 22:24:11 2001 by Apple EOModeler Version 5.0 3 | 4 | 5 | public class Item extends _Item { 6 | 7 | public Item() { 8 | super(); 9 | } 10 | 11 | /* 12 | // If you implement the following constructor EOF will use it to 13 | // create your objects, otherwise it will use the default 14 | // constructor. For maximum performance, you should only 15 | // implement this constructor if you depend on the arguments. 16 | public Item(EOEditingContext context, EOClassDescription classDesc, EOGlobalID gid) { 17 | super(context, classDesc, gid); 18 | } 19 | 20 | // If you add instance variables to store property values you 21 | // should add empty implementions of the Serialization methods 22 | // to avoid unnecessary overhead (the properties will be 23 | // serialized for you in the superclass). 24 | private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { 25 | } 26 | 27 | private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, java.lang.ClassNotFoundException { 28 | } 29 | */ 30 | 31 | } 32 | -------------------------------------------------------------------------------- /FetchSpecs/Components/Search.wo/Search.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 |

9 | Search for A Customer by Last Name:

10 |

11 |
12 |

13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 |
First NameLast NameE-Mail
28 |
29 | Sorry, no customers with that last name found. 30 |

31 | 32 | -------------------------------------------------------------------------------- /Chapter8Demo/Components/Main.wo/Main.wod: -------------------------------------------------------------------------------- 1 | Conditional1: WOConditional { 2 | condition = resultsAvailable; 3 | negate = true; 4 | } 5 | 6 | Conditional2: WOConditional { 7 | condition = resultsAvailable; 8 | } 9 | 10 | Form1: WOForm { 11 | } 12 | 13 | Repetition1: WORepetition { 14 | item = currentCustomer; 15 | list = customerList; 16 | } 17 | 18 | ResetButton1: WOResetButton { 19 | } 20 | 21 | String1: WOString { 22 | value = currentCustomer.firstName; 23 | } 24 | 25 | String2: WOString { 26 | value = currentCustomer.lastName; 27 | } 28 | 29 | String3: WOString { 30 | value = currentCustomer.address.address; 31 | } 32 | 33 | String4: WOString { 34 | value = currentCustomer.email; 35 | } 36 | 37 | String5: WOString { 38 | value = currentCustomer.address.city; 39 | } 40 | 41 | SubmitButton1: WOSubmitButton { 42 | action = submitValues; 43 | } 44 | 45 | TextField1: WOTextField { 46 | value = queryBindings.eMail; 47 | } 48 | 49 | TextField2: WOTextField { 50 | value = queryBindings.country; 51 | } 52 | 53 | TextField3: WOTextField { 54 | value = queryBindings.city; 55 | } 56 | 57 | TextField4: WOTextField { 58 | value = queryBindings.firstName; 59 | } 60 | 61 | TextField5: WOTextField { 62 | value = queryBindings.lastName; 63 | } 64 | -------------------------------------------------------------------------------- /FetchSpecs/Components/CustomerLookup.wo/CustomerLookup.wod: -------------------------------------------------------------------------------- 1 | Conditional1: WOConditional { 2 | condition = noResults; 3 | } 4 | 5 | Conditional2: WOConditional { 6 | condition = showDetails; 7 | } 8 | 9 | Conditional3: WOConditional { 10 | condition = foundResults; 11 | } 12 | 13 | Form1: WOForm { 14 | } 15 | 16 | Form2: WOForm { 17 | } 18 | 19 | Hyperlink1: WOHyperlink { 20 | action = viewDetails; 21 | } 22 | 23 | Repetition1: WORepetition { 24 | item = customer; 25 | list = customerList; 26 | } 27 | 28 | String1: WOString { 29 | value = customer.firstName; 30 | } 31 | 32 | String2: WOString { 33 | value = customer.lastName; 34 | } 35 | 36 | String3: WOString { 37 | value = customer.firstName; 38 | } 39 | 40 | String4: WOString { 41 | value = customer.lastName; 42 | } 43 | 44 | String5: WOString { 45 | value = customer.email; 46 | } 47 | 48 | String6: WOString { 49 | value = customer.address.city; 50 | } 51 | 52 | String7: WOString { 53 | value = customer.address.stateProvince; 54 | } 55 | 56 | String8: WOString { 57 | value = customer.address.country; 58 | } 59 | 60 | SubmitButton1: WOSubmitButton { 61 | action = lookUpCustomer; 62 | value = "Search"; 63 | } 64 | 65 | TextField1: WOTextField { 66 | value = customerName2Find; 67 | } -------------------------------------------------------------------------------- /Login/Sources/LoginForm.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Mon Sep 10 10:49:23 GMT 2001 2 | 3 | import com.webobjects.appserver.WOComponent; 4 | import com.webobjects.eoaccess.EOUtilities; 5 | import com.webobjects.eocontrol.EOEditingContext; 6 | import com.webobjects.foundation.NSArray; 7 | import com.webobjects.foundation.NSMutableDictionary; 8 | 9 | public class LoginForm extends WOComponent { 10 | protected String username; 11 | protected String password; 12 | 13 | public String getUsername() { 14 | return username; 15 | } 16 | 17 | public void setUsername(String username) { 18 | this.username=username; 19 | } 20 | 21 | public String getPassword() { 22 | return password; 23 | } 24 | 25 | public void setPassword(String password) { 26 | this.password = password; 27 | } 28 | 29 | public WOComponent login() { 30 | NSMutableDictionary lookup = new NSMutableDictionary(); 31 | 32 | lookup.setObjectForKey(username.toLowerCase(), "loginname"); 33 | lookup.setObjectForKey(password, "password"); 34 | 35 | Session sess = (Session)session(); 36 | 37 | EOEditingContext ec = sess.defaultEditingContext(); 38 | NSArray result = EOUtilities.objectsMatchingValues(ec, "Customer", lookup); 39 | 40 | if (result.count() == 1) { 41 | sess.setUser( (Customer) result.objectAtIndex(0)); 42 | } 43 | 44 | return null; 45 | } 46 | } -------------------------------------------------------------------------------- /WOWroxExample/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Direct to Web 5 | 6 | 7 |

Welcome to Direct to Web!

8 | 9 |
10 | 11 | 12 | 30 | 31 |
13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Username:
Password:
Enable Assistant:
29 |
32 |

33 | 34 |

35 |
36 | 37 | -------------------------------------------------------------------------------- /FirstMenu/Sources/MenuElement.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 14:28:54 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | 5 | public class MenuElement extends WROXPage { 6 | protected String area; 7 | protected String highlight = "FFFF00"; 8 | protected String background = "CE0031"; 9 | protected String align = "center"; 10 | protected String width = "72"; 11 | 12 | public MenuElement(WOContext context) { 13 | super(context); 14 | } 15 | 16 | public String getColor() { 17 | if (getPage().getArea().equals(area)) { 18 | return highlight; 19 | } else { 20 | return background; 21 | } 22 | } 23 | 24 | public String getArea() { 25 | return area; 26 | } 27 | public void setArea(String newArea) { 28 | area = newArea; 29 | } 30 | 31 | public String getHighlight() { 32 | return highlight; 33 | } 34 | public void setHighlight(String newHighlight) { 35 | highlight = newHighlight; 36 | } 37 | public String getBackground() { 38 | return background; 39 | } 40 | public void setBackground(String newBackground) { 41 | background = newBackground; 42 | } 43 | 44 | public String getAlign() { 45 | return align; 46 | } 47 | public void setAlign(String newAlign) { 48 | align = newAlign; 49 | } 50 | 51 | public String getWidth() { 52 | return width; 53 | } 54 | public void setWidth(String newWidth) { 55 | width = newWidth; 56 | } 57 | 58 | } 59 | 60 | -------------------------------------------------------------------------------- /Chapter5And6/Resources/ModelOB.eomodeld/LineItem.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | {columnName = itemID; name = itemID; prototypeName = artificialKey; }, 4 | {columnName = orderID; name = orderID; prototypeName = artificialKey; }, 5 | {columnName = price; name = price; prototypeName = currency; }, 6 | { 7 | columnName = quantity; 8 | externalType = int; 9 | name = quantity; 10 | valueClassName = NSNumber; 11 | valueType = i; 12 | } 13 | ); 14 | attributesUsedForLocking = (orderID, itemID, quantity, price); 15 | className = EOGenericRecord; 16 | classProperties = (quantity, item, order, price); 17 | externalName = tLineItem; 18 | fetchSpecificationDictionary = {}; 19 | internalInfo = {_clientClassPropertyNames = (quantity, item, order); }; 20 | name = LineItem; 21 | primaryKeyAttributes = (orderID, itemID); 22 | relationships = ( 23 | { 24 | destination = Item; 25 | isMandatory = Y; 26 | isToMany = N; 27 | joinSemantic = EOInnerJoin; 28 | joins = ({destinationAttribute = itemID; sourceAttribute = itemID; }); 29 | name = item; 30 | }, 31 | { 32 | destination = Order; 33 | isMandatory = Y; 34 | isToMany = N; 35 | joinSemantic = EOInnerJoin; 36 | joins = ({destinationAttribute = orderID; sourceAttribute = orderID; }); 37 | name = order; 38 | } 39 | ); 40 | } 41 | -------------------------------------------------------------------------------- /Chapter8Demo/Sources/Main.java: -------------------------------------------------------------------------------- 1 | // 2 | // Main.java: Class file for WO Component 'Main' 3 | // Project Chapter8Demo 4 | // 5 | // Created by bernhard on Tue Sep 11 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOComponent; 9 | import com.webobjects.appserver.WOContext; 10 | import com.webobjects.eocontrol.EOEditingContext; 11 | import com.webobjects.eocontrol.EOFetchSpecification; 12 | import com.webobjects.foundation.NSArray; 13 | import com.webobjects.foundation.NSMutableDictionary; 14 | 15 | public class Main extends WOComponent { 16 | protected NSMutableDictionary queryBindings; 17 | protected boolean resultsAvailable; 18 | 19 | /** @TypeInfo Customer */ 20 | protected NSArray customerList; 21 | 22 | /** @TypeInfo Customer */ 23 | protected Customer currentCustomer; 24 | 25 | public Main(WOContext context) { 26 | super(context); 27 | 28 | queryBindings= new NSMutableDictionary(); 29 | } 30 | 31 | public WOComponent submitValues() 32 | { 33 | EOFetchSpecification fetchSpec = EOFetchSpecification.fetchSpecificationNamed("genericFetchSpec", "Customer"); 34 | 35 | fetchSpec = fetchSpec.fetchSpecificationWithQualifierBindings(queryBindings); 36 | 37 | EOEditingContext myEditingContext = this.session().defaultEditingContext(); 38 | 39 | customerList = myEditingContext.objectsWithFetchSpecification(fetchSpec); 40 | 41 | //NSLog.out.appendln("Customers: "+customers.toString()); 42 | if (customerList.count() == 0) { 43 | resultsAvailable = false; 44 | } else { 45 | resultsAvailable = true; 46 | } 47 | return null; 48 | 49 | } 50 | 51 | } 52 | -------------------------------------------------------------------------------- /Login/Resources/wrox.eomodeld/Lineitem.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = ITEMID; 5 | externalType = NUMBER; 6 | name = itemid; 7 | precision = 22; 8 | valueClassName = NSNumber; 9 | valueType = l; 10 | }, 11 | { 12 | columnName = ORDERID; 13 | externalType = NUMBER; 14 | name = orderid; 15 | precision = 22; 16 | valueClassName = NSNumber; 17 | valueType = l; 18 | }, 19 | { 20 | columnName = PRICE; 21 | externalType = NUMBER; 22 | name = price; 23 | precision = 14; 24 | scale = 2; 25 | valueClassName = NSDecimalNumber; 26 | valueType = B; 27 | }, 28 | { 29 | columnName = QUANTITY; 30 | externalType = NUMBER; 31 | name = quantity; 32 | precision = 22; 33 | valueClassName = NSNumber; 34 | valueType = l; 35 | } 36 | ); 37 | attributesUsedForLocking = (itemid, orderid, price, quantity); 38 | className = Lineitem; 39 | classProperties = (price, quantity, torder); 40 | externalName = TLINEITEM; 41 | fetchSpecificationDictionary = {}; 42 | name = Lineitem; 43 | primaryKeyAttributes = (orderid, itemid); 44 | relationships = ( 45 | { 46 | destination = Order; 47 | isToMany = N; 48 | joinSemantic = EOInnerJoin; 49 | joins = ({destinationAttribute = orderid; sourceAttribute = orderid; }); 50 | name = torder; 51 | } 52 | ); 53 | } 54 | -------------------------------------------------------------------------------- /WOGreeting/Sources/Application.java: -------------------------------------------------------------------------------- 1 | // 2 | // Application.java 3 | // Project WOGreetingCDP 4 | // 5 | // Created by chanoch on Tue Sep 11 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOActionResults; 9 | import com.webobjects.appserver.WOApplication; 10 | import com.webobjects.appserver.WOContext; 11 | import com.webobjects.appserver.WORequest; 12 | import com.webobjects.appserver.WOResponse; 13 | 14 | public class Application extends WOApplication { 15 | 16 | public static void main(String argv[]) { 17 | WOApplication.main(argv, Application.class); 18 | } 19 | 20 | public Application() { 21 | super(); 22 | System.out.println("Welcome to " + this.name() + "!"); 23 | 24 | /* ** Put your application initialization code here ** */ 25 | } 26 | 27 | public void takeValuesFromRequest(WORequest aRequest, WOContext aContext) { 28 | System.out.println("\r\n=== " + this.getClass().getName() 29 | + " takeValuesFromRequest"); 30 | 31 | super.takeValuesFromRequest(aRequest, aContext); 32 | } 33 | 34 | public void appendToResponse(WOResponse aResponse, WOContext aContext) { 35 | System.out.println("\r\n=== " + this.getClass().getName() 36 | + " appendToResponse"); 37 | 38 | super.appendToResponse(aResponse, aContext); 39 | } 40 | 41 | public WOActionResults invokeAction(WORequest aRequest, WOContext aContext) { 42 | System.out.println("\r\n=== " + this.getClass().getName() 43 | + " invokeAction"); 44 | 45 | return super.invokeAction(aRequest, aContext); 46 | } 47 | 48 | } 49 | -------------------------------------------------------------------------------- /DirectActions/Components/MenuBar.wo/MenuBar.wod: -------------------------------------------------------------------------------- 1 | emptyCell : MenuElement { 2 | area = "none"; 3 | align = ^itemalign; 4 | valign = ^itemvalign; 5 | width = ^itemwidth; 6 | height = ^itemheight; 7 | background = ^background; 8 | highlight = ^highlight; 9 | } 10 | 11 | books: MenuElement { 12 | area = "Books"; 13 | align = ^itemalign; 14 | valign = ^itemvalign; 15 | width = ^itemwidth; 16 | height = ^itemheight; 17 | background = ^background; 18 | highlight = ^highlight; 19 | } 20 | 21 | music: MenuElement { 22 | area ="Music"; 23 | align=^itemalign; 24 | valign=^itemvalign; 25 | width=^itemwidth; 26 | height=^itemheight; 27 | background=^background; 28 | highlight=^highlight; 29 | } 30 | 31 | electronics: MenuElement { 32 | area ="Electronics"; 33 | align=^itemalign; 34 | valign=^itemvalign; 35 | width=^itemwidth; 36 | height=^itemheight; 37 | background=^background; 38 | highlight=^highlight; 39 | } 40 | 41 | checkout: MenuElement { 42 | area ="Checkout"; 43 | align=^itemalign; 44 | valign=^itemvalign; 45 | width=^itemwidth; 46 | height=^itemheight; 47 | background=^background; 48 | highlight=^highlight; 49 | } 50 | 51 | booksLink: WOHyperlink { 52 | directActionName="BooksTop"; 53 | } 54 | 55 | musicLink: WOHyperlink { 56 | directActionName="MusicTop"; 57 | } 58 | 59 | electronicsLink: WOHyperlink { 60 | directActionName="ElectronicsTop"; 61 | } 62 | 63 | checkoutLink: WOHyperlink { 64 | directActionName="Checkout"; 65 | } 66 | 67 | menuTable : WOGenericContainer { 68 | elementName = "TABLE"; 69 | bgcolor = ^bgcolor; 70 | width = ^width; 71 | height = ^height; 72 | cellpadding = ^cellpadding; 73 | cellspacing = ^cellspacing; 74 | align = ^align; 75 | } 76 | -------------------------------------------------------------------------------- /FetchSpecs/Sources/Search.java: -------------------------------------------------------------------------------- 1 | // 2 | // Search.java: Class file for WO Component 'Search' 3 | // Project Sample 4 | // 5 | // Created by Tom on Wed Aug 15 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOComponent; 9 | import com.webobjects.appserver.WOContext; 10 | import com.webobjects.eocontrol.EOEditingContext; 11 | import com.webobjects.eocontrol.EOFetchSpecification; 12 | import com.webobjects.foundation.NSArray; 13 | import com.webobjects.foundation.NSMutableDictionary; 14 | 15 | public class Search extends WOComponent { 16 | protected String lastName; 17 | protected Customer customer; 18 | 19 | /** @TypeInfo Customer */ 20 | protected NSArray customers; 21 | protected NSMutableDictionary queryBindings; 22 | protected boolean showResults; 23 | protected boolean noResults; 24 | 25 | public Search(WOContext context) { 26 | super(context); 27 | 28 | queryBindings = new NSMutableDictionary(); 29 | 30 | } 31 | 32 | public WOComponent searchForCustomers() 33 | { 34 | 35 | EOFetchSpecification fetchSpec = EOFetchSpecification.fetchSpecificationNamed("lastNameFetchSpec", "Customer"); 36 | 37 | fetchSpec = fetchSpec.fetchSpecificationWithQualifierBindings(queryBindings); 38 | 39 | EOEditingContext myEditingContext = this.session().defaultEditingContext(); 40 | 41 | customers = myEditingContext.objectsWithFetchSpecification(fetchSpec); 42 | 43 | if (customers.count() !=1) { 44 | showResults = false; 45 | noResults = true; 46 | return null; 47 | } else { 48 | showResults = true; 49 | noResults = false; 50 | return null; 51 | } 52 | } 53 | } 54 | 55 | -------------------------------------------------------------------------------- /WOGreeting/Sources/PersonalizedGreeting.java: -------------------------------------------------------------------------------- 1 | // 2 | // PersonalizedGreeting.java: Class file for WO Component 'PersonalizedGreeting' 3 | // Project WOGreetingCDP 4 | // 5 | // Created by chanoch on Tue Sep 11 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOActionResults; 9 | import com.webobjects.appserver.WOComponent; 10 | import com.webobjects.appserver.WOContext; 11 | import com.webobjects.appserver.WORequest; 12 | import com.webobjects.appserver.WOResponse; 13 | 14 | public class PersonalizedGreeting extends WOComponent { 15 | protected String userName; 16 | protected String tempUserName; 17 | 18 | public PersonalizedGreeting(WOContext context) { 19 | super(context); 20 | } 21 | 22 | public void setUserName(String newUserName) 23 | { 24 | userName = newUserName; 25 | } 26 | 27 | public void takeValuesFromRequest(WORequest aRequest, WOContext aContext) { 28 | System.out.println("\r\n=== " + this.getClass().getName() 29 | + " takeValuesFromRequest"); 30 | 31 | super.takeValuesFromRequest(aRequest, aContext); 32 | } 33 | 34 | public void appendToResponse(WOResponse aResponse, WOContext aContext) { 35 | System.out.println("\r\n=== " + this.getClass().getName() 36 | + " appendToResponse"); 37 | 38 | super.appendToResponse(aResponse, aContext); 39 | } 40 | 41 | public WOActionResults invokeAction(WORequest aRequest, WOContext aContext) { 42 | System.out.println("\r\n=== " + this.getClass().getName() 43 | + " invokeAction"); 44 | 45 | return super.invokeAction(aRequest, aContext); 46 | } 47 | 48 | 49 | } 50 | -------------------------------------------------------------------------------- /DirectActions/Sources/MenuElement.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 14:28:54 GMT 2001 2 | 3 | import com.webobjects.appserver.WOContext; 4 | import com.webobjects.foundation.NSArray; 5 | 6 | public class MenuElement extends WROXPage { 7 | protected String area; 8 | protected String highlight = "FFFF00"; 9 | protected String background = "CE0031"; 10 | protected String align = "center"; 11 | protected String width = "72"; 12 | 13 | public MenuElement(WOContext context) { 14 | super(context); 15 | } 16 | 17 | public NSArray bindingList() { 18 | return new NSArray(new Object[] {"area","highlight","background"}); 19 | } 20 | 21 | public boolean isStateless() { 22 | return true; 23 | } 24 | 25 | public String getColor() { 26 | String area = (String)valueForBinding("area"); 27 | 28 | if (getPage().getArea().equals(area)) { 29 | return highlight; 30 | } else { 31 | return background; 32 | } 33 | } 34 | 35 | public String getArea() { 36 | return area; 37 | } 38 | public void setArea(String newArea) { 39 | area = newArea; 40 | } 41 | 42 | public String getHighlight() { 43 | return highlight; 44 | } 45 | public void setHighlight(String newHighlight) { 46 | highlight = newHighlight; 47 | } 48 | public String getBackground() { 49 | return background; 50 | } 51 | public void setBackground(String newBackground) { 52 | background = newBackground; 53 | } 54 | 55 | public String getAlign() { 56 | return align; 57 | } 58 | public void setAlign(String newAlign) { 59 | align = newAlign; 60 | } 61 | 62 | public String getWidth() { 63 | return width; 64 | } 65 | public void setWidth(String newWidth) { 66 | width = newWidth; 67 | } 68 | 69 | } 70 | 71 | -------------------------------------------------------------------------------- /WOGreeting/Sources/Main.java: -------------------------------------------------------------------------------- 1 | // 2 | // Main.java: Class file for WO Component 'Main' 3 | // Project WOGreetingCDP 4 | // 5 | // Created by chanoch on Tue Sep 11 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOActionResults; 9 | import com.webobjects.appserver.WOComponent; 10 | import com.webobjects.appserver.WOContext; 11 | import com.webobjects.appserver.WORequest; 12 | import com.webobjects.appserver.WOResponse; 13 | 14 | public class Main extends WOComponent { 15 | protected String userName; 16 | 17 | public Main(WOContext context) { 18 | super(context); 19 | } 20 | 21 | public WOComponent submitName() 22 | { 23 | PersonalizedGreeting greetingPage = (PersonalizedGreeting)pageWithName("PersonalizedGreeting"); 24 | greetingPage.setUserName(userName); 25 | ((Session)session()).addUserName(userName); 26 | return greetingPage; 27 | } 28 | 29 | public void takeValuesFromRequest(WORequest aRequest, WOContext aContext) { 30 | System.out.println("\r\n=== " + this.getClass().getName() 31 | + " takeValuesFromRequest"); 32 | 33 | super.takeValuesFromRequest(aRequest, aContext); 34 | } 35 | 36 | public void appendToResponse(WOResponse aResponse, WOContext aContext) { 37 | System.out.println("\r\n=== " + this.getClass().getName() 38 | + " appendToResponse"); 39 | 40 | super.appendToResponse(aResponse, aContext); 41 | } 42 | 43 | public WOActionResults invokeAction(WORequest aRequest, WOContext aContext) { 44 | System.out.println("\r\n=== " + this.getClass().getName() 45 | + " invokeAction"); 46 | 47 | return super.invokeAction(aRequest, aContext); 48 | } 49 | 50 | 51 | } 52 | -------------------------------------------------------------------------------- /WOGreeting/Sources/Session.java: -------------------------------------------------------------------------------- 1 | // 2 | // Session.java 3 | // Project WOGreetingCDP 4 | // 5 | // Created by chanoch on Tue Sep 11 2001 6 | // 7 | 8 | import com.webobjects.appserver.WOActionResults; 9 | import com.webobjects.appserver.WOContext; 10 | import com.webobjects.appserver.WORequest; 11 | import com.webobjects.appserver.WOResponse; 12 | import com.webobjects.appserver.WOSession; 13 | import com.webobjects.foundation.NSMutableArray; 14 | 15 | public class Session extends WOSession { 16 | 17 | /** @TypeInfo java.lang.String */ 18 | protected NSMutableArray pastUserNames; 19 | 20 | public Session() { 21 | super(); 22 | pastUserNames = new NSMutableArray(); 23 | 24 | /* ** Put your per-session initialization code here ** */ 25 | } 26 | 27 | public void addUserName(String newUser) { 28 | pastUserNames.addObject(newUser); 29 | } 30 | 31 | public void takeValuesFromRequest(WORequest aRequest, WOContext aContext) { 32 | System.out.println("\r\n=== " + this.getClass().getName() 33 | + " takeValuesFromRequest"); 34 | 35 | super.takeValuesFromRequest(aRequest, aContext); 36 | } 37 | 38 | public void appendToResponse(WOResponse aResponse, WOContext aContext) { 39 | System.out.println("\r\n=== " + this.getClass().getName() 40 | + " appendToResponse"); 41 | 42 | super.appendToResponse(aResponse, aContext); 43 | } 44 | 45 | public WOActionResults invokeAction(WORequest aRequest, WOContext aContext) { 46 | System.out.println("\r\n=== " + this.getClass().getName() 47 | + " invokeAction"); 48 | 49 | return super.invokeAction(aRequest, aContext); 50 | } 51 | 52 | 53 | } 54 | -------------------------------------------------------------------------------- /Login/Resources/wrox.eomodeld/Order.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = CUSTOMERID; 5 | externalType = NUMBER; 6 | name = customerid; 7 | precision = 22; 8 | valueClassName = NSNumber; 9 | valueType = l; 10 | }, 11 | { 12 | columnName = ORDERID; 13 | externalType = NUMBER; 14 | name = orderid; 15 | precision = 22; 16 | valueClassName = NSNumber; 17 | valueType = l; 18 | }, 19 | { 20 | columnName = PAYMENTID; 21 | externalType = NUMBER; 22 | name = paymentid; 23 | precision = 22; 24 | valueClassName = NSNumber; 25 | valueType = l; 26 | }, 27 | { 28 | columnName = THEDATE; 29 | externalType = DATE; 30 | name = thedate; 31 | valueClassName = NSCalendarDate; 32 | } 33 | ); 34 | attributesUsedForLocking = (customerid, orderid, paymentid, thedate); 35 | className = Order; 36 | classProperties = (customerid, paymentid, thedate, tcustomer, tlineitems); 37 | externalName = TORDER; 38 | fetchSpecificationDictionary = {}; 39 | name = Order; 40 | primaryKeyAttributes = (orderid); 41 | relationships = ( 42 | { 43 | destination = Customer; 44 | isToMany = N; 45 | joinSemantic = EOInnerJoin; 46 | joins = ({destinationAttribute = customerid; sourceAttribute = customerid; }); 47 | name = tcustomer; 48 | }, 49 | { 50 | destination = Lineitem; 51 | isToMany = Y; 52 | joinSemantic = EOInnerJoin; 53 | joins = ({destinationAttribute = orderid; sourceAttribute = orderid; }); 54 | name = tlineitems; 55 | } 56 | ); 57 | } 58 | -------------------------------------------------------------------------------- /Login/Resources/wrox.eomodeld/Category.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = CATEGORYID; 5 | externalType = VARCHAR2; 6 | name = categoryid; 7 | valueClassName = NSString; 8 | width = 20; 9 | }, 10 | { 11 | columnName = PARENTID; 12 | externalType = VARCHAR2; 13 | name = parentid; 14 | valueClassName = NSString; 15 | width = 20; 16 | }, 17 | { 18 | columnName = THEDESCRIPTION; 19 | externalType = VARCHAR2; 20 | name = thedescription; 21 | valueClassName = NSString; 22 | width = 50; 23 | } 24 | ); 25 | attributesUsedForLocking = (categoryid, parentid, thedescription); 26 | className = Category; 27 | classProperties = (parentid, thedescription, tcategory, tcategorys, titems); 28 | externalName = TCATEGORY; 29 | fetchSpecificationDictionary = {}; 30 | name = Category; 31 | primaryKeyAttributes = (categoryid); 32 | relationships = ( 33 | { 34 | destination = Category; 35 | isToMany = N; 36 | joinSemantic = EOInnerJoin; 37 | joins = ({destinationAttribute = categoryid; sourceAttribute = parentid; }); 38 | name = tcategory; 39 | }, 40 | { 41 | destination = Category; 42 | isToMany = Y; 43 | joinSemantic = EOInnerJoin; 44 | joins = ({destinationAttribute = parentid; sourceAttribute = categoryid; }); 45 | name = tcategorys; 46 | }, 47 | { 48 | destination = Item; 49 | isToMany = Y; 50 | joinSemantic = EOInnerJoin; 51 | joins = ({destinationAttribute = categoryid; sourceAttribute = categoryid; }); 52 | name = titems; 53 | } 54 | ); 55 | } 56 | -------------------------------------------------------------------------------- /OneDay/Resources/ModelOracle.eomodeld/LineItem.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = itemID; 5 | externalType = Number; 6 | name = itemID; 7 | valueClassName = NSNumber; 8 | valueType = i; 9 | }, 10 | { 11 | columnName = orderID; 12 | externalType = number; 13 | name = orderID; 14 | valueClassName = NSNumber; 15 | valueType = i; 16 | }, 17 | { 18 | columnName = price; 19 | externalType = number; 20 | name = price; 21 | valueClassName = NSNumber; 22 | valueType = i; 23 | }, 24 | { 25 | columnName = quantity; 26 | externalType = NUMBER; 27 | name = quantity; 28 | valueClassName = NSNumber; 29 | valueType = i; 30 | } 31 | ); 32 | attributesUsedForLocking = (orderID, itemID, quantity, price); 33 | className = LineItem; 34 | classProperties = (quantity, item, order, price); 35 | externalName = tLineItem; 36 | fetchSpecificationDictionary = {}; 37 | internalInfo = {_clientClassPropertyNames = (quantity, item, order); }; 38 | name = LineItem; 39 | primaryKeyAttributes = (orderID, itemID); 40 | relationships = ( 41 | { 42 | destination = Item; 43 | isMandatory = Y; 44 | isToMany = N; 45 | joinSemantic = EOInnerJoin; 46 | joins = ({destinationAttribute = itemID; sourceAttribute = itemID; }); 47 | name = item; 48 | }, 49 | { 50 | destination = Order; 51 | isMandatory = Y; 52 | isToMany = N; 53 | joinSemantic = EOInnerJoin; 54 | joins = ({destinationAttribute = orderID; sourceAttribute = orderID; }); 55 | name = order; 56 | } 57 | ); 58 | } 59 | -------------------------------------------------------------------------------- /Login/Sources/WROXPage.java: -------------------------------------------------------------------------------- 1 | /* WROXPage.java created by chanochw on Tue 11-Sep-2001 */ 2 | 3 | import com.webobjects.appserver.WOContext; 4 | import com.webobjects.eoaccess.EOUtilities; 5 | import com.webobjects.foundation.NSArray; 6 | import com.webobjects.foundation.NSDictionary; 7 | 8 | 9 | public class WROXPage extends WROXComponent { 10 | 11 | protected String entityName; 12 | protected String area; 13 | 14 | public WROXPage(WOContext context) { 15 | super(context); 16 | } 17 | 18 | public WROXPage getPage() { 19 | return (WROXPage) context().page(); 20 | } 21 | 22 | public void takeFormValues(NSDictionary values) { 23 | java.util.Enumeration enumerator = getValueList().objectEnumerator(); 24 | 25 | while(enumerator.hasMoreElements()) { 26 | String key = (String) enumerator.nextElement(); 27 | 28 | Object value = values.objectForKey(key); 29 | if (value != null) { 30 | takeValueForKey(value, key); 31 | } 32 | } 33 | } 34 | 35 | public void setSid(String urlvalue) { 36 | Object obj = EOUtilities.objectWithPrimaryKeyValue(session().defaultEditingContext(), getEntityName(), urlvalue); 37 | takeValueForKey(obj, getEntityName()); 38 | } 39 | 40 | public void setIid(String urlvalue) { 41 | Object obj= EOUtilities.objectWithPrimaryKeyValue(session().defaultEditingContext(), getEntityName(), Integer.decode(urlvalue)); 42 | takeValueForKey(obj, getEntityName()); 43 | } 44 | 45 | public NSArray getValueList() { 46 | // return new NSArray(); 47 | return NSArray.EmptyArray; 48 | } 49 | 50 | public String getEntityName() { 51 | if(entityName == null) { 52 | entityName = (String)valueForBinding("entityName"); 53 | } 54 | return entityName; 55 | } 56 | 57 | public String getArea() { 58 | return (String)valueForBinding("area"); 59 | } 60 | 61 | public void setArea(String area) { 62 | this.area = area; 63 | } 64 | 65 | } 66 | -------------------------------------------------------------------------------- /Chapter8Demo/Resources/ModelOB.eomodeld/LineItem.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = itemID; 5 | externalType = int; 6 | name = itemID; 7 | valueClassName = NSNumber; 8 | valueType = i; 9 | }, 10 | { 11 | columnName = orderID; 12 | externalType = int; 13 | name = orderID; 14 | valueClassName = NSNumber; 15 | valueType = i; 16 | }, 17 | { 18 | columnName = price; 19 | externalType = double; 20 | name = price; 21 | precision = 38; 22 | scale = 2; 23 | valueClassName = NSNumber; 24 | valueType = d; 25 | }, 26 | { 27 | columnName = quantity; 28 | externalType = int; 29 | name = quantity; 30 | valueClassName = NSNumber; 31 | valueType = i; 32 | } 33 | ); 34 | attributesUsedForLocking = (orderID, itemID, quantity, price); 35 | className = LineItem; 36 | classProperties = (quantity, item, order, price); 37 | externalName = tLineItem; 38 | fetchSpecificationDictionary = {}; 39 | internalInfo = {"_clientClassPropertyNames" = (quantity, item, order); }; 40 | name = LineItem; 41 | primaryKeyAttributes = (orderID, itemID); 42 | relationships = ( 43 | { 44 | destination = Item; 45 | isMandatory = Y; 46 | isToMany = N; 47 | joinSemantic = EOInnerJoin; 48 | joins = ({destinationAttribute = itemID; sourceAttribute = itemID; }); 49 | name = item; 50 | }, 51 | { 52 | destination = Order; 53 | isMandatory = Y; 54 | isToMany = N; 55 | joinSemantic = EOInnerJoin; 56 | joins = ({destinationAttribute = orderID; sourceAttribute = orderID; }); 57 | name = order; 58 | } 59 | ); 60 | } 61 | -------------------------------------------------------------------------------- /FetchSpecs/Resources/ModelOB.eomodeld/DiagramLayout: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Layouts 6 | 7 | Default 8 | 9 | EntityOption 10 | All 11 | RelationshipOption 12 | None 13 | ViewPositions 14 | 15 | Address 16 | 17 | 183.000000 18 | 342.000000 19 | 152.000000 20 | 168.000000 21 | 22 | Category 23 | 24 | 782.000000 25 | 363.000000 26 | 160.000000 27 | 132.000000 28 | 29 | Customer 30 | 31 | 396.000000 32 | 364.000000 33 | 187.000000 34 | 240.000000 35 | 36 | Item 37 | 38 | 774.000000 39 | 164.000000 40 | 165.000000 41 | 168.000000 42 | 43 | LineItem 44 | 45 | 607.000000 46 | 153.000000 47 | 122.000000 48 | 132.000000 49 | 50 | Order 51 | 52 | 419.000000 53 | 165.000000 54 | 141.000000 55 | 150.000000 56 | 57 | Payment 58 | 59 | 186.000000 60 | 162.000000 61 | 198.000000 62 | 150.000000 63 | 64 | 65 | orthoLines 66 | Y 67 | 68 | 69 | Version 70 | 1 71 | 72 | 73 | -------------------------------------------------------------------------------- /OneDay/Resources/ModelOracle.eomodeld/DiagramLayout: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Layouts 6 | 7 | Default 8 | 9 | EntityOption 10 | Primary Keys 11 | RelationshipOption 12 | Name 13 | ViewPositions 14 | 15 | Address 16 | 17 | 42.000000 18 | 216.000000 19 | 129.000000 20 | 42.000000 21 | 22 | Category 23 | 24 | 42.000000 25 | 440.000000 26 | 133.000000 27 | 42.000000 28 | 29 | Customer 30 | 31 | 337.000000 32 | 234.000000 33 | 136.000000 34 | 42.000000 35 | 36 | Item 37 | 38 | -12.000000 39 | 374.000000 40 | 109.000000 41 | 42.000000 42 | 43 | LineItem 44 | 45 | -8.000000 46 | 284.000000 47 | 115.000000 48 | 60.000000 49 | 50 | Order 51 | 52 | 308.000000 53 | 353.000000 54 | 115.000000 55 | 42.000000 56 | 57 | Payment 58 | 59 | 350.000000 60 | 439.000000 61 | 133.000000 62 | 42.000000 63 | 64 | 65 | orthoLines 66 | Y 67 | 68 | 69 | Version 70 | 1 71 | 72 | 73 | -------------------------------------------------------------------------------- /Chapter8Demo/Resources/ModelOB.eomodeld/DiagramLayout: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Layouts 6 | 7 | Default 8 | 9 | EntityOption 10 | All 11 | RelationshipOption 12 | None 13 | ViewPositions 14 | 15 | Address 16 | 17 | 183.000000 18 | 342.000000 19 | 152.000000 20 | 168.000000 21 | 22 | Category 23 | 24 | 782.000000 25 | 363.000000 26 | 160.000000 27 | 132.000000 28 | 29 | Customer 30 | 31 | 396.000000 32 | 364.000000 33 | 187.000000 34 | 240.000000 35 | 36 | Item 37 | 38 | 774.000000 39 | 164.000000 40 | 165.000000 41 | 168.000000 42 | 43 | LineItem 44 | 45 | 607.000000 46 | 153.000000 47 | 122.000000 48 | 132.000000 49 | 50 | Order 51 | 52 | 419.000000 53 | 165.000000 54 | 141.000000 55 | 150.000000 56 | 57 | Payment 58 | 59 | 186.000000 60 | 162.000000 61 | 198.000000 62 | 150.000000 63 | 64 | 65 | orthoLines 66 | Y 67 | 68 | 69 | Version 70 | 1 71 | 72 | 73 | -------------------------------------------------------------------------------- /WOWroxExample/Resources/ModelOB.eomodeld/DiagramLayout: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Layouts 6 | 7 | Default 8 | 9 | EntityOption 10 | All 11 | RelationshipOption 12 | None 13 | ViewPositions 14 | 15 | Address 16 | 17 | 183.000000 18 | 342.000000 19 | 152.000000 20 | 168.000000 21 | 22 | Category 23 | 24 | 782.000000 25 | 363.000000 26 | 160.000000 27 | 132.000000 28 | 29 | Customer 30 | 31 | 396.000000 32 | 364.000000 33 | 187.000000 34 | 240.000000 35 | 36 | Item 37 | 38 | 774.000000 39 | 164.000000 40 | 165.000000 41 | 168.000000 42 | 43 | LineItem 44 | 45 | 607.000000 46 | 153.000000 47 | 122.000000 48 | 132.000000 49 | 50 | Order 51 | 52 | 419.000000 53 | 165.000000 54 | 141.000000 55 | 150.000000 56 | 57 | Payment 58 | 59 | 186.000000 60 | 162.000000 61 | 198.000000 62 | 150.000000 63 | 64 | 65 | orthoLines 66 | Y 67 | 68 | 69 | Version 70 | 1 71 | 72 | 73 | -------------------------------------------------------------------------------- /FetchSpecs/Resources/ModelOB.eomodeld/LineItem.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = itemID; 5 | externalType = int; 6 | name = itemID; 7 | valueClassName = NSNumber; 8 | valueType = i; 9 | }, 10 | { 11 | columnName = orderID; 12 | externalType = int; 13 | name = orderID; 14 | valueClassName = NSNumber; 15 | valueType = i; 16 | }, 17 | { 18 | columnName = price; 19 | externalType = double; 20 | internalInfo = {_nameInObjectStore = retailPrice; }; 21 | name = price; 22 | precision = 38; 23 | scale = 2; 24 | valueClassName = NSNumber; 25 | valueType = d; 26 | }, 27 | { 28 | columnName = quantity; 29 | externalType = int; 30 | name = quantity; 31 | valueClassName = NSNumber; 32 | valueType = i; 33 | } 34 | ); 35 | attributesUsedForLocking = (orderID, itemID, quantity, price); 36 | className = LineItem; 37 | classProperties = (quantity, item, order, price); 38 | externalName = tLineItem; 39 | fetchSpecificationDictionary = {}; 40 | internalInfo = {_clientClassPropertyNames = (quantity, item, order); }; 41 | name = LineItem; 42 | primaryKeyAttributes = (orderID, itemID); 43 | relationships = ( 44 | { 45 | destination = Item; 46 | isMandatory = Y; 47 | isToMany = N; 48 | joinSemantic = EOInnerJoin; 49 | joins = ({destinationAttribute = itemID; sourceAttribute = itemID; }); 50 | name = item; 51 | }, 52 | { 53 | destination = Order; 54 | isMandatory = Y; 55 | isToMany = N; 56 | joinSemantic = EOInnerJoin; 57 | joins = ({destinationAttribute = orderID; sourceAttribute = orderID; }); 58 | name = order; 59 | } 60 | ); 61 | } 62 | -------------------------------------------------------------------------------- /Login/Resources/wrox.eomodeld/Address.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = ADDRESS; 5 | externalType = VARCHAR2; 6 | name = address; 7 | valueClassName = NSString; 8 | width = 75; 9 | }, 10 | { 11 | columnName = ADDRESSID; 12 | externalType = NUMBER; 13 | name = addressid; 14 | precision = 22; 15 | valueClassName = NSNumber; 16 | valueType = l; 17 | }, 18 | { 19 | columnName = AREACODE; 20 | externalType = VARCHAR2; 21 | name = areacode; 22 | valueClassName = NSString; 23 | width = 15; 24 | }, 25 | { 26 | columnName = CITY; 27 | externalType = VARCHAR2; 28 | name = city; 29 | valueClassName = NSString; 30 | width = 20; 31 | }, 32 | { 33 | columnName = COUNTRY; 34 | externalType = VARCHAR2; 35 | name = country; 36 | valueClassName = NSString; 37 | width = 30; 38 | }, 39 | { 40 | columnName = STATEPROVINCE; 41 | externalType = VARCHAR2; 42 | name = stateprovince; 43 | valueClassName = NSString; 44 | width = 20; 45 | } 46 | ); 47 | attributesUsedForLocking = (address, addressid, areacode, city, country, stateprovince); 48 | className = Address; 49 | classProperties = (address, areacode, city, country, stateprovince, tcustomers); 50 | externalName = TADDRESS; 51 | fetchSpecificationDictionary = {}; 52 | name = Address; 53 | primaryKeyAttributes = (addressid); 54 | relationships = ( 55 | { 56 | destination = Customer; 57 | isToMany = Y; 58 | joinSemantic = EOInnerJoin; 59 | joins = ({destinationAttribute = addressid; sourceAttribute = addressid; }); 60 | name = tcustomers; 61 | } 62 | ); 63 | } 64 | -------------------------------------------------------------------------------- /WOWroxExample/Resources/ModelOB.eomodeld/LineItem.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = itemID; 5 | externalType = int; 6 | name = itemID; 7 | valueClassName = NSNumber; 8 | valueType = i; 9 | }, 10 | { 11 | columnName = orderID; 12 | externalType = int; 13 | name = orderID; 14 | valueClassName = NSNumber; 15 | valueType = i; 16 | }, 17 | { 18 | columnName = price; 19 | externalType = double; 20 | internalInfo = {_nameInObjectStore = retailPrice; }; 21 | name = price; 22 | precision = 38; 23 | scale = 2; 24 | valueClassName = NSNumber; 25 | valueType = d; 26 | }, 27 | { 28 | columnName = quantity; 29 | externalType = int; 30 | name = quantity; 31 | valueClassName = NSNumber; 32 | valueType = i; 33 | } 34 | ); 35 | attributesUsedForLocking = (orderID, itemID, quantity, price); 36 | className = LineItem; 37 | classProperties = (quantity, item, order, price); 38 | externalName = tLineItem; 39 | fetchSpecificationDictionary = {}; 40 | internalInfo = {_clientClassPropertyNames = (quantity, item, order); }; 41 | name = LineItem; 42 | primaryKeyAttributes = (orderID, itemID); 43 | relationships = ( 44 | { 45 | destination = Item; 46 | isMandatory = Y; 47 | isToMany = N; 48 | joinSemantic = EOInnerJoin; 49 | joins = ({destinationAttribute = itemID; sourceAttribute = itemID; }); 50 | name = item; 51 | }, 52 | { 53 | destination = Order; 54 | isMandatory = Y; 55 | isToMany = N; 56 | joinSemantic = EOInnerJoin; 57 | joins = ({destinationAttribute = orderID; sourceAttribute = orderID; }); 58 | name = order; 59 | } 60 | ); 61 | } 62 | -------------------------------------------------------------------------------- /Chapter5And6/Resources/ModelOB.eomodeld/Address.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = address; 5 | externalType = char; 6 | name = address; 7 | valueClassName = NSString; 8 | width = 75; 9 | }, 10 | {columnName = addressID; name = addressID; prototypeName = artificialKey; }, 11 | { 12 | columnName = areaCode; 13 | externalType = char; 14 | name = areaCode; 15 | valueClassName = NSString; 16 | width = 15; 17 | }, 18 | { 19 | columnName = city; 20 | externalType = char; 21 | name = city; 22 | valueClassName = NSString; 23 | width = 20; 24 | }, 25 | { 26 | columnName = country; 27 | externalType = char; 28 | name = country; 29 | valueClassName = NSString; 30 | width = 30; 31 | }, 32 | { 33 | columnName = stateProvince; 34 | externalType = char; 35 | name = stateProvince; 36 | valueClassName = NSString; 37 | width = 20; 38 | } 39 | ); 40 | attributesUsedForLocking = (addressID, address, city, stateProvince, areaCode, country); 41 | className = EOGenericRecord; 42 | classProperties = (address, city, stateProvince, areaCode, country, customer); 43 | externalName = tAddress; 44 | fetchSpecificationDictionary = {}; 45 | internalInfo = { 46 | _clientClassPropertyNames = (address, complement, city, stateProvince, areaCode, country, customer); 47 | }; 48 | name = Address; 49 | primaryKeyAttributes = (addressID); 50 | relationships = ( 51 | { 52 | destination = Customer; 53 | isMandatory = Y; 54 | isToMany = N; 55 | joinSemantic = EOInnerJoin; 56 | joins = ({destinationAttribute = customerID; sourceAttribute = addressID; }); 57 | name = customer; 58 | } 59 | ); 60 | } 61 | -------------------------------------------------------------------------------- /DirectActions/Sources/WROXComponent.java: -------------------------------------------------------------------------------- 1 | // Generated by the WebObjects Wizard Fri Sep 14 14:05:25 GMT 2001 2 | 3 | import com.webobjects.appserver.WOActionResults; 4 | import com.webobjects.appserver.WOComponent; 5 | import com.webobjects.appserver.WOContext; 6 | import com.webobjects.appserver.WORequest; 7 | import com.webobjects.appserver.WOResponse; 8 | import com.webobjects.foundation.NSArray; 9 | 10 | public abstract class WROXComponent extends WOComponent { 11 | 12 | public WROXComponent(WOContext context) { 13 | super(context); 14 | } 15 | 16 | public abstract String getArea(); 17 | 18 | public boolean synchronizesVariablesWithBindings() { 19 | if (isStateless()) { 20 | return false; 21 | } 22 | return true; 23 | } 24 | 25 | public void appendToResponse(WOResponse response, WOContext context) { 26 | if (synchronizesVariablesWithBindings ()) { 27 | pullBindings(); 28 | } 29 | super.appendToResponse(response, context); 30 | } 31 | 32 | public void takeValuesFromRequest( WORequest request, WOContext context) { 33 | if (synchronizesVariablesWithBindings ()) { 34 | pullBindings(); 35 | } 36 | super.takeValuesFromRequest(request, context); 37 | } 38 | 39 | public WOActionResults invokeAction(WORequest request, WOContext context) { 40 | if (synchronizesVariablesWithBindings ()) { 41 | pullBindings(); 42 | } 43 | return super.invokeAction(request, context); 44 | } 45 | 46 | void pullBindings() { 47 | java.util.Enumeration enumerator = getBindingList().objectEnumerator(); 48 | while(enumerator.hasMoreElements()) { 49 | String key = (String) enumerator.nextElement(); 50 | takeValueForKey(valueForBinding(key), key); 51 | } 52 | } 53 | 54 | public NSArray getBindingList() { 55 | return NSArray.EmptyArray; 56 | } 57 | 58 | public void reset() { 59 | java.util.Enumeration enumerator = getBindingList().objectEnumerator(); 60 | while(enumerator.hasMoreElements()) { 61 | String key = (String) enumerator.nextElement(); 62 | this.takeValueForKey(null,key); 63 | } 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /Chapter5And6/Resources/ModelOB.eomodeld/Payment.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | {columnName = amount; name = amount; prototypeName = currency; }, 4 | { 5 | columnName = creditCardExpiryDate; 6 | externalType = char; 7 | name = creditCardExpiryDate; 8 | valueClassName = NSString; 9 | width = 7; 10 | }, 11 | { 12 | columnName = creditCardName; 13 | externalType = char; 14 | name = creditCardName; 15 | valueClassName = NSString; 16 | width = 40; 17 | }, 18 | { 19 | columnName = creditCardNumber; 20 | externalType = int; 21 | name = creditCardNumber; 22 | valueClassName = NSNumber; 23 | valueType = i; 24 | }, 25 | { 26 | allowsNull = Y; 27 | columnName = datePaid; 28 | externalType = date; 29 | name = datePaid; 30 | valueClassName = NSCalendarDate; 31 | }, 32 | {columnName = paymentID; name = paymentID; prototypeName = artificialKey; }, 33 | { 34 | columnName = type; 35 | externalType = char; 36 | name = type; 37 | valueClassName = NSString; 38 | width = 40; 39 | } 40 | ); 41 | attributesUsedForLocking = ( 42 | paymentID, 43 | amount, 44 | creditCardNumber, 45 | creditCardExpiryDate, 46 | type, 47 | creditCardName, 48 | datePaid 49 | ); 50 | className = EOGenericRecord; 51 | classProperties = ( 52 | amount, 53 | creditCardNumber, 54 | creditCardExpiryDate, 55 | type, 56 | creditCardName, 57 | datePaid 58 | ); 59 | externalName = tPayment; 60 | fetchSpecificationDictionary = {}; 61 | internalInfo = { 62 | _clientClassPropertyNames = (amount, creditCardNumber, creditCardExpiryDate, type, creditCardName); 63 | }; 64 | name = Payment; 65 | primaryKeyAttributes = (paymentID); 66 | } 67 | -------------------------------------------------------------------------------- /Chapter5And6/Resources/ModelOB.eomodeld/Order.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | {columnName = customerID; name = customerID; prototypeName = artificialKey; }, 4 | {columnName = orderID; name = orderID; prototypeName = artificialKey; }, 5 | {columnName = paymentID; name = paymentID; prototypeName = artificialKey; }, 6 | { 7 | columnName = theDate; 8 | externalType = date; 9 | name = theDate; 10 | valueClassName = NSCalendarDate; 11 | } 12 | ); 13 | attributesUsedForLocking = (orderID, paymentID, customerID, theDate); 14 | className = EOGenericRecord; 15 | classProperties = (theDate, payment, customer, lineItems); 16 | externalName = tOrder; 17 | fetchSpecificationDictionary = {}; 18 | internalInfo = {_clientClassPropertyNames = (date, payment, customer); }; 19 | maxNumberOfInstancesToBatchFetch = 2; 20 | name = Order; 21 | primaryKeyAttributes = (orderID); 22 | relationships = ( 23 | { 24 | destination = Customer; 25 | isMandatory = Y; 26 | isToMany = N; 27 | joinSemantic = EOInnerJoin; 28 | joins = ({destinationAttribute = customerID; sourceAttribute = customerID; }); 29 | name = customer; 30 | }, 31 | { 32 | deleteRule = EODeleteRuleCascade; 33 | destination = LineItem; 34 | isMandatory = Y; 35 | isToMany = Y; 36 | joinSemantic = EOInnerJoin; 37 | joins = ({destinationAttribute = orderID; sourceAttribute = orderID; }); 38 | name = lineItems; 39 | numberOfToManyFaultsToBatchFetch = 2; 40 | ownsDestination = Y; 41 | propagatesPrimaryKey = Y; 42 | }, 43 | { 44 | deleteRule = EODeleteRuleCascade; 45 | destination = Payment; 46 | isMandatory = Y; 47 | isToMany = N; 48 | joinSemantic = EOInnerJoin; 49 | joins = ({destinationAttribute = paymentID; sourceAttribute = paymentID; }); 50 | name = payment; 51 | } 52 | ); 53 | } 54 | -------------------------------------------------------------------------------- /Login/Sources/WROXComponent.java: -------------------------------------------------------------------------------- 1 | /* WROXComponent.java created by chanochw on Tue 11-Sep-2001 */ 2 | 3 | import com.webobjects.appserver.WOActionResults; 4 | import com.webobjects.appserver.WOComponent; 5 | import com.webobjects.appserver.WOContext; 6 | import com.webobjects.appserver.WORequest; 7 | import com.webobjects.appserver.WOResponse; 8 | import com.webobjects.foundation.NSArray; 9 | 10 | 11 | public class WROXComponent extends WOComponent { 12 | 13 | public WROXComponent(WOContext context) { 14 | super(context); 15 | } 16 | 17 | public boolean synchronizesVariablesWithBindings() { 18 | if (isStateless()) { 19 | return false; 20 | } 21 | return true; 22 | } 23 | 24 | public void appendToResponse (WOResponse response, WOContext context) { 25 | if (!synchronizesVariablesWithBindings()) { 26 | pullBindings(); 27 | } 28 | super.appendToResponse(response, context); 29 | } 30 | 31 | public void takeValuesFromRequest( WORequest request, WOContext context) { 32 | if (!synchronizesVariablesWithBindings()) { 33 | pullBindings(); 34 | } 35 | super.takeValuesFromRequest(request, context); 36 | } 37 | 38 | public WOActionResults invokeAction(WORequest request, WOContext context) { 39 | if (!synchronizesVariablesWithBindings()) { 40 | pullBindings(); 41 | } 42 | return super.invokeAction(request, context); 43 | } 44 | 45 | public void pullBindings() { 46 | java.util.Enumeration enumerator = getBindingList().objectEnumerator(); 47 | 48 | while(enumerator.hasMoreElements()) { 49 | String key = (String) enumerator.nextElement(); 50 | this.takeValueForKey(valueForBinding(key), key); 51 | } 52 | } 53 | 54 | public void reset() { 55 | java.util.Enumeration enumerator = getBindingList().objectEnumerator(); 56 | String key; 57 | while (enumerator.hasMoreElements()) { 58 | key = (String) enumerator.nextElement(); 59 | takeValueForKey(null, key); 60 | } 61 | } 62 | 63 | public NSArray getBindingList() { 64 | // return new NSArray(); 65 | return NSArray.EmptyArray; 66 | } 67 | 68 | } 69 | 70 | 71 | -------------------------------------------------------------------------------- /Chapter8Demo/Components/Main.wo/Main.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Untitled 6 | 7 | 8 | Please enter your search criterias below. The more you specify, the more precise the result will be.

9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Last name
First name
City
Country
E-Mail
32 |

33 | 34 | 35 |

36 |
37 |
38 | The above query results in the following customer
39 |
40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 |
First nameLast nameAddressE-MailCity
Caption
59 |
60 | Please fill in search criterias. There are no results for the current shown search values. 61 | 62 | -------------------------------------------------------------------------------- /OneDay/Resources/ModelOracle.eomodeld/Address.plist: -------------------------------------------------------------------------------- 1 | { 2 | attributes = ( 3 | { 4 | columnName = address; 5 | externalType = VARCHAR2; 6 | name = address; 7 | valueClassName = NSString; 8 | width = 75; 9 | }, 10 | { 11 | columnName = addressID; 12 | externalType = number; 13 | name = addressID; 14 | valueClassName = NSNumber; 15 | valueType = i; 16 | }, 17 | { 18 | columnName = areaCode; 19 | externalType = VARCHAR2; 20 | name = areaCode; 21 | valueClassName = NSString; 22 | width = 15; 23 | }, 24 | { 25 | columnName = city; 26 | externalType = VARCHAR2; 27 | name = city; 28 | valueClassName = NSString; 29 | width = 20; 30 | }, 31 | { 32 | columnName = country; 33 | externalType = VARCHAR2; 34 | name = country; 35 | valueClassName = NSString; 36 | width = 30; 37 | }, 38 | { 39 | columnName = stateProvince; 40 | externalType = VARCHAR2; 41 | name = stateProvince; 42 | valueClassName = NSString; 43 | width = 20; 44 | } 45 | ); 46 | attributesUsedForLocking = (addressID, address, city, stateProvince, areaCode, country); 47 | className = Address; 48 | classProperties = (address, city, stateProvince, areaCode, country, customers); 49 | externalName = tAddress; 50 | fetchSpecificationDictionary = {}; 51 | internalInfo = { 52 | _clientClassPropertyNames = (address, complement, city, stateProvince, areaCode, country, customer); 53 | }; 54 | name = Address; 55 | primaryKeyAttributes = (addressID); 56 | relationships = ( 57 | { 58 | destination = Customer; 59 | isToMany = Y; 60 | joinSemantic = EOInnerJoin; 61 | joins = ({destinationAttribute = addressID; sourceAttribute = addressID; }); 62 | name = customers; 63 | } 64 | ); 65 | } 66 | --------------------------------------------------------------------------------