| <!-- |
| |
| Copyright (c) 2009, 2020 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 |
| |
| --> |
| |
| <!-- grizzly/networkListenerNew.jsf --> |
| |
| |
| <!initPage |
| setResourceBundle(key="i18n_web" bundle="org.glassfish.web.admingui.Strings"); |
| setResourceBundle(key="help_web" bundle="org.glassfish.web.admingui.Helplinks"); |
| /> |
| <!composition template="/templates/default.layout" guiTitle="$resource{i18n_web.grizzly.networkListenerNewPageTitle}" > |
| <!define name="content"> |
| <event> |
| <!beforeCreate |
| getRequestValue(key="configName" value=>$page{configName}); |
| urlencode(value="#{pageSession.configName}" encoding="UTF-8" result="#{pageSession.encodedConfigName}"); |
| setPageSessionAttribute(key="parentPage" value="#{request.contextPath}/web/grizzly/networkListeners.jsf"); |
| setPageSessionAttribute(key="childType" value="network-listener"); |
| setPageSessionAttribute(key="parentUrl", value="#{sessionScope.REST_URL}/configs/config/#{pageSession.encodedConfigName}/network-config/network-listeners"); |
| setPageSessionAttribute(key="selfUrl", value="#{pageSession.parentUrl}/#{pageSession.childType}"); |
| setPageSessionAttribute(key="rest-api" value="true"); |
| gf.getDefaultValues(endpoint="#{pageSession.selfUrl}", valueMap="#{pageSession.valueMap}"); |
| mapPut(map="#{pageSession.valueMap}" key="target" value="#{pageSession.configName}"); |
| setPageSessionAttribute(key="convertToFalseList" value={"Enabled"}); |
| setPageSessionAttribute(key="showDefaultButton" value="#{true}" ); |
| setPageSessionAttribute(key="showCancelButton" value="#{true}" ); |
| //set the following for including buttons.inc |
| setPageSessionAttribute(key="edit" value="#{false}" ); |
| setPageSessionAttribute(key="showDefaultButton" value="#{true}" ); |
| setPageSessionAttribute(key="showCancelButton" value="#{true}" ); |
| setPageSessionAttribute(key="hasPropertySheet" value="#{true}" ); |
| setPageSessionAttribute(key="hasPropertyTable" value="#{false}" ); |
| /> |
| </event> |
| |
| " <script type="text/javascript">admingui.nav.selectTreeNodeById(admingui.nav.TREE_ID+":configurations:#{pageSession.encodedConfigName}:networkConfig:networkListeners");</script> |
| |
| <sun:form id="propertyForm"> |
| #include "/common/shared/alertMsg.inc" |
| <sun:title id="propertyContentPage" title="$resource{i18n_web.grizzly.networkListenerNewPageTitle}" helpText="$resource{i18n_web.grizzly.networkListenerNewPageTitleHelp}"> |
| <!facet pageButtonsTop> |
| <sun:panelGroup id="topButtons"> |
| <sun:button id="newButton" rendered="#{!edit}" text="$resource{i18n.button.OK}" |
| onClick="if (checkRequired()) {submitAndDisable(this, '$resource{i18n.button.Processing}');}; return false;" > |
| <!command |
| setPageSessionAttribute(key="protocolUrl", value="#{sessionScope.REST_URL}/configs/config/#{pageSession.encodedConfigName}/network-config/protocols/protocol"); |
| urlencode(value="#{pageSession.valueMap['name']}" result="#{requestScope.encodedListenerNameToCheck}"); |
| gf.checkIfEndPointExist(endpoint="#{sessionScope.REST_URL}/configs/config/#{pageSession.encodedConfigName}/network-config/network-listeners/network-listener/#{requestScope.encodedListenerNameToCheck}", exists="#{requestScope.exist}"); |
| if (#{requestScope.exist}){ |
| gf.handleError(detail="$resource{i18n_web.grizzly.networkListener.alreadyExist, #{requestScope.encodedListenerNameToCheck}}"); |
| } |
| createMap(result="#{pageSession.protocolMap}"); |
| if("#{pageSession.valueMap['securityEnabled']}=#{null}") { |
| mapPut(map="#{pageSession.valueMap}", key="securityEnabled", value="false"); |
| } |
| if("#{pageSession.valueMap['jkenabled']}=#{null}") { |
| mapPut(map="#{pageSession.valueMap}", key="jkenabled", value="false"); |
| } |
| if("#{pageSession.valueMap['enabled']}=#{null}") { |
| mapPut(map="#{pageSession.valueMap}", key="enabled", value="false"); |
| } |
| mapPut(map="#{pageSession.protocolMap}", key="securityEnabled", value="#{pageSession.valueMap['securityEnabled']}"); |
| if ("#{pageSession.valueMap['protocolChoice']}=create") { |
| urlencode(value="#{pageSession.valueMap['newProtocolName']}" result="#{requestScope.encodedProtocolToCheck}"); |
| gf.checkIfEndPointExist(endpoint="#{pageSession.protocolUrl}/#{requestScope.encodedProtocolToCheck}", exists="#{requestScope.pExist}"); |
| if (#{requestScope.pExist}){ |
| gf.handleError(detail="$resource{i18n_web.grizzly.protocol.alreadyExist, #{requestScope.encodedProtocolToCheck}}"); |
| } |
| mapPut(map="#{pageSession.protocolMap}", key="name", value="#{pageSession.valueMap['newProtocolName']}"); |
| mapPut(map="#{pageSession.protocolMap}", key="target", value="#{pageSession.valueMap['target']}"); |
| setPageSessionAttribute(key="protocolName", value="#{pageSession.valueMap['newProtocolName']}"); |
| |
| |
| gf.createEntity(endpoint="#{pageSession.protocolUrl}", attrs="#{pageSession.protocolMap}"); |
| createMap(result="#{pageSession.httpMap}"); |
| mapPut(map="#{pageSession.httpMap}", key="defaultVirtualServer", value="#{pageSession.valueMap['defaultVirtualServer']}"); |
| mapPut(map="#{pageSession.httpMap}", key="target", value="#{pageSession.valueMap['target']}"); |
| |
| gf.createEntity(endpoint="#{pageSession.protocolUrl}/#{pageSession.protocolName}/create-http", attrs="#{pageSession.httpMap}"); |
| } |
| if ("!(#{pageSession.valueMap['protocolChoice']}=create)") { |
| createMap(result="#{pageSession.protocolMap}"); |
| mapPut(map="#{pageSession.protocolMap}", key="Name", value="#{pageSession.valueMap['existingProtocolName']}"); |
| setPageSessionAttribute(key="protocolName", value="#{pageSession.valueMap['existingProtocolName']}"); |
| gf.restRequest(endpoint="#{pageSession.protocolUrl}/#{pageSession.protocolName}", attrs="#{pageSession.protocolMap}", method="post"); |
| } |
| createMap(result="#{pageSession.networkListenerMap}"); |
| mapPut(map="#{pageSession.networkListenerMap}", key="name", value="#{pageSession.valueMap['name']}"); |
| mapPut(map="#{pageSession.networkListenerMap}", key="address", value="#{pageSession.valueMap['address']}"); |
| mapPut(map="#{pageSession.networkListenerMap}", key="port", value="#{pageSession.valueMap['port']}"); |
| mapPut(map="#{pageSession.networkListenerMap}", key="transport", value="#{pageSession.valueMap['transport']}"); |
| mapPut(map="#{pageSession.networkListenerMap}", key="threadpool", value="#{pageSession.valueMap['threadpool']}"); |
| mapPut(map="#{pageSession.networkListenerMap}", key="enabled", value="#{pageSession.valueMap['enabled']}"); |
| mapPut(map="#{pageSession.networkListenerMap}", key="jkenabled", value="#{pageSession.valueMap['jkenabled']}"); |
| mapPut(map="#{pageSession.networkListenerMap}", key="protocol", value="#{pageSession.protocolName}"); |
| mapPut(map="#{pageSession.networkListenerMap}", key="target", value="#{pageSession.valueMap['target']}"); |
| gf.createEntity(endpoint="#{pageSession.parentUrl}/network-listener", attrs="#{pageSession.networkListenerMap}"); |
| gf.restRequest(endpoint="#{pageSession.protocolUrl}/#{pageSession.protocolName}/http.json", method="get", result="#{pageSession.protocolAttrHttp}"); |
| setPageSessionAttribute(key="vsName" value="#{pageSession.protocolAttrHttp.data.extraProperties.entity['defaultVirtualServer']}"); |
| gf.redirect(page="#{pageSession.parentPage}?configName=#{configName}"); |
| /> |
| </sun:button> |
| <sun:button id="cancelButton" immediate="#{true}" primary="#{false}" rendered="#{pageSession.showCancelButton}" text="$resource{i18n.button.Cancel}" > |
| <!command |
| gf.redirect(page="#{parentPage}?configName=#{configName}"); |
| /> |
| </sun:button> |
| </sun:panelGroup> |
| </facet> |
| </sun:title> |
| |
| #include "/web/grizzly/networkListenerAttr.inc" |
| |
| <sun:hidden id="helpKey" value="$resource{help_web.networkListenerNew}" /> |
| </sun:form> |
| |
| <f:verbatim> |
| <script type="text/javascript"> |
| |
| function radioBtnAction(choice) { |
| var compt = getTextElement('#{pageSession.protocolChoiceId}'); |
| compt.value = choice; |
| if (choice == 'create'){ |
| disableComponent('$pageSession{PdropDownId}', 'select'); |
| enableComponent('$pageSession{pNameId}', 'text'); |
| enableComponent('$pageSession{newVsId}', 'select'); |
| }else{ |
| enableComponent('$pageSession{PdropDownId}', 'select'); |
| disableComponent('$pageSession{pNameId}', 'text'); |
| disableComponent('$pageSession{newVsId}', 'select'); |
| } |
| } |
| |
| function setProtocolName(){ |
| var currentChoice = getTextElement('#{pageSession.protocolChoiceId}').value; |
| if (currentChoice == 'create'){ |
| getTextElement('#{pageSession.pNameId}').value = getTextElement('#{pageSession.listenerId}').value+"-protocol"; |
| } |
| } |
| |
| function checkRequired(){ |
| var currentChoice = getTextElement('#{pageSession.protocolChoiceId}').value; |
| if (currentChoice == 'create'){ |
| var component = getTextElement('#{pageSession.pNameId}'); |
| if (component.value==''){ |
| component.select(); |
| component.focus(); |
| return showAlert('#{reqMsg}' + ' ' + getLabel(component)); |
| } |
| } |
| return guiValidate('#{reqMsg}','#{reqInt}','#{reqPort}'); |
| } |
| |
| function disableProtocolNameField() { |
| var methodType = document.getElementById("$pageSession{protocolChoice}"); |
| require(['webui/suntheme/field'], function (field) { |
| field.setDisabled("$pageSession{protocolNmField}", methodType.getSelectedValue() != '__create__'); |
| }); |
| } |
| </script> |
| </f:verbatim> |
| </define> |
| </composition> |