<!--

    Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->


<property name="module" value="resEnableDisable"/>
<property name="appname" value="${module}"/>
<property name="application.xml" value="descriptor/application.xml"/>
<property name="sun-application.xml" value="descriptor/sun-application.xml"/>
<property name="ejb-jar.xml" value="descriptor/ejb-jar.xml"/>
<property name="sun-ejb-jar.xml" value="descriptor/sun-ejb-jar.xml"/>
<property name="web.xml" value="descriptor/web.xml"/>
<property name="sun-web.xml" value="descriptor/sun-web.xml"/>
<property name="application-client.xml" value="descriptor/application-client.xml"/>
<property name="sun-application-client.xml" value="descriptor/sun-application-client.xml"/>
<property name="appclientjar.files" value="${build.classes.dir}"/>
<property name="appclient.jar" value="${assemble.dir}/${appname}-client.jar"/>
<property name="app.type" value="application"/>
<property name="poolname" value="jdbc-resEnableDisable"/>
<property name="resourcename" value="jdbc/resEnableDisable"/>
<property name="validationmethod" value="table"/>
<property name="validationtablename" value="O_CUSTOMER"/>
<property name="contextroot" value="/jdbc-resEnableDisable/servlet"/>
<property name="http:host" value="localhost"/>
<property name="http:port" value="8080"/>
<property name="TEST.PASS" value="PASS"/>
<property name="TEST.FAIL" value="FAIL"/>
