<?xml version="1.0" encoding="UTF-8"?>
<!--
    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.
-->

<ofbiz-component name="myportal" enabled="true"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="https://ofbiz.apache.org/dtds/ofbiz-component.xsd">
    <resource-loader name="main" type="component"/>
    <classpath type="dir" location="config"/>

    <entity-resource type="data" reader-name="seed" loader="main" location="data/MyPortalSecurityPermissionSeedData.xml"/>
    <entity-resource type="data" reader-name="demo" loader="main" location="data/MyPortalSecurityGroupDemoData.xml"/>
    <entity-resource type="data" reader-name="demo" loader="main" location="data/MyPortalPageDemoData.xml"/>
    <entity-resource type="data" reader-name="demo" loader="main" location="data/MyPortalDemoData.xml"/>

    <service-resource type="model" loader="main" location="servicedef/services.xml"/>

    <webapp name="myportal"
        title="MyPortal"
        position="18"
        app-bar-display="true"
        base-permission="MYPORTALBASE"
        server="default-server"
        location="webapp/myportal"
        mount-point="/myportal"/>
</ofbiz-component>
