mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Partial Commit
This commit is contained in:
commit
5a8975d7ac
@ -17,6 +17,8 @@
|
||||
*/
|
||||
package org.wso2.carbon.device.mgt.common;
|
||||
|
||||
import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@ -31,6 +33,20 @@ public interface DeviceManager {
|
||||
*/
|
||||
FeatureManager getFeatureManager();
|
||||
|
||||
/**
|
||||
* Method to save platform specific Configuration.
|
||||
*
|
||||
* @return Returns the status of the operation
|
||||
*/
|
||||
boolean saveConfiguration(TenantConfiguration configuration) throws DeviceManagementException;
|
||||
|
||||
/**
|
||||
* Method to get platform specific Configuration.
|
||||
*
|
||||
* @return Returns the platform specific tenant configurations
|
||||
*/
|
||||
TenantConfiguration getConfiguration() throws DeviceManagementException;
|
||||
|
||||
/**
|
||||
* Method to enrolling a particular device of type mobile, IoT, etc within CDM.
|
||||
*
|
||||
|
||||
@ -0,0 +1,53 @@
|
||||
/*
|
||||
* Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*/
|
||||
|
||||
package org.wso2.carbon.device.mgt.common.configuration.mgt;
|
||||
|
||||
/**
|
||||
* Represents an individual configuration entry.
|
||||
*/
|
||||
public class ConfigurationEntry {
|
||||
|
||||
private String name;
|
||||
private String contentType;
|
||||
private Object value;
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getContentType() {
|
||||
return contentType;
|
||||
}
|
||||
|
||||
public void setContentType(String contentType) {
|
||||
this.contentType = contentType;
|
||||
}
|
||||
|
||||
public Object getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(Object value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,47 @@
|
||||
/*
|
||||
* Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*/
|
||||
|
||||
package org.wso2.carbon.device.mgt.common.configuration.mgt;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Represents the tenant configuration for a device platform.
|
||||
*/
|
||||
public class TenantConfiguration {
|
||||
|
||||
private String type;
|
||||
private List<ConfigurationEntry> configuration;
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public List<ConfigurationEntry> getConfiguration() {
|
||||
return configuration;
|
||||
}
|
||||
|
||||
public void setConfiguration(List<ConfigurationEntry> configuration) {
|
||||
this.configuration = configuration;
|
||||
}
|
||||
|
||||
}
|
||||
@ -24,7 +24,7 @@ import org.wso2.carbon.device.mgt.common.app.mgt.ApplicationManager;
|
||||
|
||||
/**
|
||||
* Composite interface that acts as the SPI exposing all device management as well as application management
|
||||
* functionalities
|
||||
* functionalities.
|
||||
*/
|
||||
public interface DeviceManagementService extends ApplicationManager {
|
||||
|
||||
|
||||
@ -83,8 +83,9 @@
|
||||
org.wso2.carbon.identity.oauth.stub,
|
||||
org.wso2.carbon.identity.oauth.stub.dto,
|
||||
org.wso2.carbon.ndatasource.core,
|
||||
org.wso2.carbon.base,
|
||||
org.wso2.carbon.base.api
|
||||
org.apache.catalina,
|
||||
org.apache.catalina.core,
|
||||
javax.servlet
|
||||
</Import-Package>
|
||||
<Export-Package>
|
||||
!org.wso2.carbon.device.mgt.core.internal,
|
||||
@ -209,6 +210,14 @@
|
||||
<groupId>org.wso2.carbon.identity</groupId>
|
||||
<artifactId>org.wso2.carbon.identity.oauth.stub</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.tomcat</groupId>
|
||||
<artifactId>tomcat</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.wso2.tomcat</groupId>
|
||||
<artifactId>tomcat-servlet-api</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
|
||||
@ -53,6 +53,7 @@ public class APIConfig {
|
||||
private String version;
|
||||
private String transports;
|
||||
private APIProvider provider;
|
||||
private boolean isSecured;
|
||||
|
||||
public void init() throws DeviceManagementException {
|
||||
try {
|
||||
@ -126,4 +127,14 @@ public class APIConfig {
|
||||
this.transports = transports;
|
||||
}
|
||||
|
||||
@XmlElement(name = "isSecured", required = false)
|
||||
public boolean isSecured() {
|
||||
return isSecured;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
public void setSecured(boolean secured) {
|
||||
isSecured = secured;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -1,82 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.device.mgt.core.api.mgt;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.apimgt.api.APIManagementException;
|
||||
import org.wso2.carbon.apimgt.api.APIProvider;
|
||||
import org.wso2.carbon.apimgt.api.model.API;
|
||||
import org.wso2.carbon.apimgt.impl.APIManagerFactory;
|
||||
import org.wso2.carbon.core.ServerStartupObserver;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
||||
import org.wso2.carbon.device.mgt.core.api.mgt.config.APIPublisherConfig;
|
||||
import org.wso2.carbon.device.mgt.core.internal.DeviceManagementDataHolder;
|
||||
import org.wso2.carbon.device.mgt.core.util.DeviceManagerUtil;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* This particular class corresponding to the ServerStartupObserver written for publishing the set of APIs used by
|
||||
* the device management related components.
|
||||
*
|
||||
* Note: Using this particular approach is not a must, had there been a proper programming interface provided by the
|
||||
* underlying API-Management infrastructure for manipulating the APIs. Even though, there's one, its concrete
|
||||
* implementation consumes a set of OSGi declarative services for initializing some of its internal states, which
|
||||
* prevents us from, simply, instantiating the APIPublisher implementation and using for device management related
|
||||
* tasks. The aforesaid complication lead us to go for this alternative approach to get the same done.
|
||||
*/
|
||||
public class APIRegistrationStartupObserver implements ServerStartupObserver {
|
||||
|
||||
private static final Log log = LogFactory.getLog(APIRegistrationStartupObserver.class);
|
||||
|
||||
@Override
|
||||
public void completingServerStartup() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void completedServerStartup() {
|
||||
/* Publish all mobile device management related JAX-RS services as APIs */
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Publishing all mobile device management related JAX-RS services as APIs");
|
||||
}
|
||||
List<APIConfig> apiConfigs = APIPublisherConfig.getInstance().getApiConfigs();
|
||||
for (APIConfig apiConfig : apiConfigs) {
|
||||
try {
|
||||
/* API Config is initialized at this point in order to avoid OSGi declarative services which
|
||||
the APIManagerComponent depend on, are deployed and initialized before invoking methods in
|
||||
APIManagerFactory */
|
||||
apiConfig.init();
|
||||
|
||||
API api = DeviceManagerUtil.getAPI(apiConfig);
|
||||
DeviceManagementDataHolder.getInstance().getApiPublisherService().publishAPI(api);
|
||||
} catch (Throwable e) {
|
||||
/* Throwable is caught as none of the RuntimeExceptions that can potentially occur at this point
|
||||
does not seem to be logged anywhere else within the framework */
|
||||
log.error("Error occurred while publishing API '" + apiConfig.getName() + "' with the context '" +
|
||||
apiConfig.getContext() + "' and version '" + apiConfig.getVersion() + "'", e);
|
||||
}
|
||||
}
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("End of publishing all mobile device management related JAX-RS services as APIs");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,110 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.device.mgt.core.api.mgt.config;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.w3c.dom.Document;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
||||
import org.wso2.carbon.device.mgt.core.api.mgt.APIConfig;
|
||||
import org.wso2.carbon.device.mgt.core.util.DeviceManagerUtil;
|
||||
import org.wso2.carbon.utils.CarbonUtils;
|
||||
import org.xml.sax.SAXException;
|
||||
|
||||
import javax.xml.XMLConstants;
|
||||
import javax.xml.bind.JAXBContext;
|
||||
import javax.xml.bind.JAXBException;
|
||||
import javax.xml.bind.Unmarshaller;
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlElementWrapper;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.validation.Schema;
|
||||
import javax.xml.validation.SchemaFactory;
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* This class carries all API configurations used by device management components, that need to be published within
|
||||
* the underlying API-Management infrastructure.
|
||||
*/
|
||||
@XmlRootElement(name = "APIPublisherConfig")
|
||||
public class APIPublisherConfig {
|
||||
|
||||
private List<APIConfig> apiConfigs;
|
||||
private static APIPublisherConfig config;
|
||||
|
||||
private static final Log log = LogFactory.getLog(APIPublisherConfig.class);
|
||||
private static final String USER_DEFINED_API_CONFIG_PATH =
|
||||
CarbonUtils.getEtcCarbonConfigDirPath() + File.separator + "user-api-publisher-config.xml";
|
||||
private static final String USER_DEFINED_API_CONFIG_SCHEMA_PATH =
|
||||
"resources/config/schema/api-publisher-config-schema.xsd";
|
||||
|
||||
private static final Object LOCK = new Object();
|
||||
|
||||
public static APIPublisherConfig getInstance() {
|
||||
if (config == null) {
|
||||
synchronized (LOCK) {
|
||||
try {
|
||||
init();
|
||||
} catch (DeviceManagementException e) {
|
||||
log.error("Error occurred while initializing API Publisher Config", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
return config;
|
||||
}
|
||||
|
||||
@XmlElementWrapper(name = "APIs", required = true)
|
||||
@XmlElement(name = "API", required = true)
|
||||
public List<APIConfig> getApiConfigs() {
|
||||
return apiConfigs;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
public void setApiConfigs(List<APIConfig> apiConfigs) {
|
||||
this.apiConfigs = apiConfigs;
|
||||
}
|
||||
|
||||
private static void init() throws DeviceManagementException {
|
||||
try {
|
||||
File publisherConfig = new File(APIPublisherConfig.USER_DEFINED_API_CONFIG_PATH);
|
||||
Document doc = DeviceManagerUtil.convertToDocument(publisherConfig);
|
||||
|
||||
/* Un-marshaling API publisher configuration */
|
||||
JAXBContext ctx = JAXBContext.newInstance(APIPublisherConfig.class);
|
||||
Unmarshaller unmarshaller = ctx.createUnmarshaller();
|
||||
//unmarshaller.setSchema(getSchema());
|
||||
config = (APIPublisherConfig) unmarshaller.unmarshal(doc);
|
||||
} catch (JAXBException e) {
|
||||
throw new DeviceManagementException("Error occurred while un-marshalling API Publisher Config", e);
|
||||
}
|
||||
}
|
||||
|
||||
private static Schema getSchema() throws DeviceManagementException {
|
||||
try {
|
||||
File deviceManagementSchemaConfig = new File(APIPublisherConfig.USER_DEFINED_API_CONFIG_SCHEMA_PATH);
|
||||
SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
|
||||
return factory.newSchema(deviceManagementSchemaConfig);
|
||||
} catch (SAXException e) {
|
||||
throw new DeviceManagementException("Error occurred while initializing the schema of " +
|
||||
"user-api-publisher-config.xml", e);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,131 @@
|
||||
/*
|
||||
* Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. 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.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.device.mgt.core.api.mgt.lifecycle.listener;
|
||||
|
||||
import org.apache.catalina.Lifecycle;
|
||||
import org.apache.catalina.LifecycleEvent;
|
||||
import org.apache.catalina.LifecycleListener;
|
||||
import org.apache.catalina.core.StandardContext;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.apimgt.api.model.API;
|
||||
import org.wso2.carbon.device.mgt.core.api.mgt.APIConfig;
|
||||
import org.wso2.carbon.device.mgt.core.internal.DeviceManagementDataHolder;
|
||||
import org.wso2.carbon.device.mgt.core.util.DeviceManagerUtil;
|
||||
|
||||
import javax.servlet.ServletContext;
|
||||
|
||||
public class APIPublisherLifecycleListener implements LifecycleListener {
|
||||
|
||||
private static final String API_CONFIG_DEFAULT_VERSION = "1.0.0";
|
||||
private static final Log log = LogFactory.getLog(APIPublisherLifecycleListener.class);
|
||||
|
||||
@Override
|
||||
public void lifecycleEvent(LifecycleEvent lifecycleEvent) {
|
||||
if (Lifecycle.AFTER_START_EVENT.equals(lifecycleEvent.getType())) {
|
||||
StandardContext context = (StandardContext) lifecycleEvent.getLifecycle();
|
||||
ServletContext servletContext = context.getServletContext();
|
||||
|
||||
String param = servletContext.getInitParameter("managed-api-enabled");
|
||||
boolean isManagedApi = (param != null && !"".equals(param)) && Boolean.parseBoolean(param);
|
||||
|
||||
if (isManagedApi) {
|
||||
APIConfig apiConfig = this.buildApiConfig(servletContext);
|
||||
try {
|
||||
apiConfig.init();
|
||||
API api = DeviceManagerUtil.getAPI(apiConfig);
|
||||
DeviceManagementDataHolder.getInstance().getApiPublisherService().publishAPI(api);
|
||||
} catch (Throwable e) {
|
||||
/* Throwable is caught as none of the RuntimeExceptions that can potentially occur at this point
|
||||
does not seem to be logged anywhere else within the framework */
|
||||
log.error("Error occurred while publishing API '" + apiConfig.getName() + "' with the context '" +
|
||||
apiConfig.getContext() + "' and version '" + apiConfig.getVersion() + "'", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private APIConfig buildApiConfig(ServletContext servletContext) {
|
||||
APIConfig apiConfig = new APIConfig();
|
||||
|
||||
String name = servletContext.getInitParameter("managed-api-name");
|
||||
if (name == null || "".equals(name)) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("'managed-api-name' attribute is not configured. Therefore, using the default, " +
|
||||
"which is the name of the web application");
|
||||
}
|
||||
name = servletContext.getServletContextName();
|
||||
}
|
||||
apiConfig.setName(name);
|
||||
|
||||
String version = servletContext.getInitParameter("managed-api-version");
|
||||
if (version == null || "".equals(version)) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("'managed-api-version' attribute is not configured. Therefore, using the " +
|
||||
"default, which is '1.0.0'");
|
||||
}
|
||||
version = API_CONFIG_DEFAULT_VERSION;
|
||||
}
|
||||
apiConfig.setVersion(version);
|
||||
|
||||
String context = servletContext.getInitParameter("managed-api-context");
|
||||
if (context == null || "".equals(context)) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("'managed-api-context' attribute is not configured. Therefore, using the default, " +
|
||||
"which is the original context assigned to the web application");
|
||||
}
|
||||
context = servletContext.getContextPath();
|
||||
}
|
||||
apiConfig.setContext(context);
|
||||
|
||||
String endpoint = servletContext.getInitParameter("managed-api-endpoint");
|
||||
if (endpoint == null || "".equals(endpoint)) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("'managed-api-endpoint' attribute is not configured");
|
||||
}
|
||||
}
|
||||
apiConfig.setEndpoint(endpoint);
|
||||
|
||||
String owner = servletContext.getInitParameter("managed-api-owner");
|
||||
if (owner == null || "".equals(owner)) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("'managed-api-owner' attribute is not configured");
|
||||
}
|
||||
}
|
||||
apiConfig.setOwner(owner);
|
||||
|
||||
String isSecuredParam = servletContext.getInitParameter("managed-api-isSecured");
|
||||
boolean isSecured =
|
||||
(isSecuredParam != null && !"".equals(isSecuredParam)) && Boolean.parseBoolean(isSecuredParam);
|
||||
apiConfig.setSecured(isSecured);
|
||||
|
||||
String transports = servletContext.getInitParameter("managed-api-transports");
|
||||
if (transports == null || "".equals(transports)) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("'managed-api-transports' attribute is not configured. Therefore using the defaults, " +
|
||||
"which are 'http' and 'https'");
|
||||
}
|
||||
transports = "http,https";
|
||||
}
|
||||
apiConfig.setTransports(transports);
|
||||
|
||||
return apiConfig;
|
||||
}
|
||||
|
||||
}
|
||||
@ -180,10 +180,8 @@ public class ApplicationManagerProviderServiceImpl implements ApplicationManagem
|
||||
@Override
|
||||
public void updateApplicationListInstalledInDevice(
|
||||
DeviceIdentifier deviceIdentifier, List<Application> applications) throws ApplicationManagementException {
|
||||
|
||||
int tenantId = getTenantId();
|
||||
|
||||
try {
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
DeviceManagementDAOFactory.beginTransaction();
|
||||
Device device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
|
||||
@ -199,8 +197,8 @@ public class ApplicationManagerProviderServiceImpl implements ApplicationManagem
|
||||
List<Application> appsToAdd = new ArrayList<Application>();
|
||||
List<Integer> appIdsToRemove = new ArrayList<Integer>();
|
||||
|
||||
for(Application installedApp:installedAppList){
|
||||
if (!applications.contains(installedApp)){
|
||||
for (Application installedApp : installedAppList) {
|
||||
if (!applications.contains(installedApp)) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Remove app Id:" + installedApp.getId());
|
||||
}
|
||||
@ -211,12 +209,12 @@ public class ApplicationManagerProviderServiceImpl implements ApplicationManagem
|
||||
Application installedApp;
|
||||
List<Integer> applicationIds = new ArrayList<>();
|
||||
|
||||
for(Application application:applications){
|
||||
for (Application application : applications) {
|
||||
if (!installedAppList.contains(application)) {
|
||||
installedApp = applicationDAO.getApplication(application.getApplicationIdentifier(), tenantId);
|
||||
if (installedApp == null){
|
||||
if (installedApp == null) {
|
||||
appsToAdd.add(application);
|
||||
}else{
|
||||
} else {
|
||||
applicationIds.add(installedApp.getId());
|
||||
}
|
||||
}
|
||||
@ -234,7 +232,7 @@ public class ApplicationManagerProviderServiceImpl implements ApplicationManagem
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("num of remove app Ids:" + appIdsToRemove.size());
|
||||
}
|
||||
applicationMappingDAO.removeApplicationMapping(device.getId(), appIdsToRemove,tenantId);
|
||||
applicationMappingDAO.removeApplicationMapping(device.getId(), appIdsToRemove, tenantId);
|
||||
DeviceManagementDAOFactory.commitTransaction();
|
||||
} catch (DeviceManagementDAOException deviceDaoEx) {
|
||||
String errorMsg = "Error occurred saving application list to the device";
|
||||
@ -242,37 +240,26 @@ public class ApplicationManagerProviderServiceImpl implements ApplicationManagem
|
||||
try {
|
||||
DeviceManagementDAOFactory.rollbackTransaction();
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
log.error("Error occurred while roll back transaction",e);
|
||||
log.error("Error occurred while roll back transaction", e);
|
||||
}
|
||||
throw new ApplicationManagementException(errorMsg, deviceDaoEx);
|
||||
}
|
||||
}
|
||||
|
||||
private int getTenantId() {
|
||||
|
||||
int tenantId = 0;
|
||||
if (isTest){
|
||||
tenantId = DeviceManagerUtil.currentTenant.get();
|
||||
}else{
|
||||
tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
}
|
||||
|
||||
return tenantId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Application> getApplicationListForDevice(DeviceIdentifier deviceIdentifier)
|
||||
throws ApplicationManagementException {
|
||||
Device device = null;
|
||||
try {
|
||||
int tenantId = getTenantId();
|
||||
device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
return applicationDAO.getInstalledApplications(device.getId());
|
||||
}catch (DeviceManagementDAOException deviceDaoEx) {
|
||||
String errorMsg = "Error occured while fetching the Application List of device : " + device.getId();
|
||||
log.error(errorMsg, deviceDaoEx);
|
||||
throw new ApplicationManagementException(errorMsg, deviceDaoEx);
|
||||
}
|
||||
public List<Application> getApplicationListForDevice(
|
||||
DeviceIdentifier deviceId) throws ApplicationManagementException {
|
||||
Device device = null;
|
||||
try {
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
device = deviceDAO.getDevice(deviceId, tenantId);
|
||||
return applicationDAO.getInstalledApplications(device.getId());
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
throw new ApplicationManagementException("Error occured while fetching the Application List of '" +
|
||||
deviceId.getType() + "' device carrying the identifier'" + deviceId.getId(), e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -97,6 +97,7 @@ public class EmailServiceProviderImpl implements EmailService {
|
||||
if (configContext != null) {
|
||||
serviceClient = new ServiceClient(configContext, null);
|
||||
} else {
|
||||
|
||||
serviceClient = new ServiceClient();
|
||||
}
|
||||
Options options = new Options();
|
||||
|
||||
@ -35,7 +35,6 @@ import org.wso2.carbon.device.mgt.core.DeviceManagementConstants;
|
||||
import org.wso2.carbon.device.mgt.core.DeviceManagementPluginRepository;
|
||||
import org.wso2.carbon.device.mgt.core.api.mgt.APIPublisherService;
|
||||
import org.wso2.carbon.device.mgt.core.api.mgt.APIPublisherServiceImpl;
|
||||
import org.wso2.carbon.device.mgt.core.api.mgt.APIRegistrationStartupObserver;
|
||||
import org.wso2.carbon.device.mgt.core.api.mgt.ApplicationManagementProviderService;
|
||||
import org.wso2.carbon.device.mgt.core.app.mgt.ApplicationManagerProviderServiceImpl;
|
||||
import org.wso2.carbon.device.mgt.core.app.mgt.config.AppManagementConfig;
|
||||
@ -198,8 +197,6 @@ public class DeviceManagementServiceComponent {
|
||||
DeviceManagementDataHolder.getInstance().setApiPublisherService(publisher);
|
||||
bundleContext.registerService(APIPublisherService.class, publisher, null);
|
||||
|
||||
bundleContext.registerService(ServerStartupObserver.class, new APIRegistrationStartupObserver(), null);
|
||||
|
||||
/* Registering App Management service */
|
||||
try {
|
||||
AppManagementConfigurationManager.getInstance().initConfig();
|
||||
|
||||
@ -19,13 +19,10 @@
|
||||
|
||||
package org.wso2.carbon.device.mgt.core.license.mgt;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementConstants;
|
||||
import org.wso2.carbon.device.mgt.common.license.mgt.License;
|
||||
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManagementException;
|
||||
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManager;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderServiceImpl;
|
||||
import org.wso2.carbon.device.mgt.common.license.mgt.License;
|
||||
import org.wso2.carbon.governance.api.exception.GovernanceException;
|
||||
import org.wso2.carbon.governance.api.generic.GenericArtifactFilter;
|
||||
import org.wso2.carbon.governance.api.generic.GenericArtifactManager;
|
||||
|
||||
@ -22,6 +22,7 @@ import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.context.CarbonContext;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
||||
import org.wso2.carbon.device.mgt.common.EnrolmentInfo;
|
||||
import org.wso2.carbon.device.mgt.common.operation.mgt.Operation;
|
||||
import org.wso2.carbon.device.mgt.common.operation.mgt.OperationManagementException;
|
||||
@ -72,13 +73,13 @@ public class OperationManagerImpl implements OperationManager {
|
||||
|
||||
@Override
|
||||
public int addOperation(Operation operation,
|
||||
List<DeviceIdentifier> deviceIds) throws OperationManagementException {
|
||||
List<DeviceIdentifier> deviceIds) throws OperationManagementException {
|
||||
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("operation:[" + operation.toString() + "]");
|
||||
for (DeviceIdentifier deviceIdentifier : deviceIds) {
|
||||
log.debug("device identifier id:[" + deviceIdentifier.getId() + "] type:[" + deviceIdentifier.getType()
|
||||
+ "]");
|
||||
+ "]");
|
||||
}
|
||||
}
|
||||
try {
|
||||
@ -94,8 +95,8 @@ public class OperationManagerImpl implements OperationManager {
|
||||
enrolmentId = deviceDAO.getEnrolmentByStatus(deviceId, EnrolmentInfo.Status.ACTIVE, tenantId);
|
||||
if (enrolmentId < 0) {
|
||||
String errorMsg = "The operation not added for device.The device not found for " +
|
||||
"device Identifier type -'" + deviceId.getType() + "' and device Id '" +
|
||||
deviceId.getId();
|
||||
"device Identifier type -'" + deviceId.getType() + "' and device Id '" +
|
||||
deviceId.getId();
|
||||
log.error(errorMsg);
|
||||
} else {
|
||||
operationMappingDAO.addOperationMapping(operationId, enrolmentId);
|
||||
@ -123,23 +124,25 @@ public class OperationManagerImpl implements OperationManager {
|
||||
@Override
|
||||
public List<? extends Operation> getOperations(DeviceIdentifier deviceId) throws OperationManagementException {
|
||||
|
||||
try {
|
||||
List<Operation> operations = new ArrayList<Operation>();
|
||||
int enrolmentId = -1;
|
||||
|
||||
try {
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
enrolmentId = deviceDAO.getEnrolmentByStatus(deviceId, EnrolmentInfo.Status.ACTIVE, tenantId);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
List<Operation> operations = new ArrayList<Operation>();
|
||||
int enrolmentId = -1;
|
||||
|
||||
try {
|
||||
OperationManagementDAOFactory.getConnection();
|
||||
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
enrolmentId = deviceDAO.getEnrolmentByStatus(deviceId, EnrolmentInfo.Status.ACTIVE, tenantId);
|
||||
|
||||
if (enrolmentId < 0) {
|
||||
throw new OperationManagementException("Device not found for given device " +
|
||||
"Identifier:" + deviceId.getId() + " and given type" + deviceId.getType());
|
||||
"Identifier:" + deviceId.getId() + " and given type" + deviceId.getType());
|
||||
}
|
||||
List<? extends org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation> operationList = operationDAO
|
||||
.getOperationsForDevice(enrolmentId);
|
||||
|
||||
Operation operation;
|
||||
|
||||
for (org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation dtoOperation : operationList) {
|
||||
operation = OperationDAOUtil.convertOperation(dtoOperation);
|
||||
operations.add(operation);
|
||||
@ -147,9 +150,19 @@ public class OperationManagerImpl implements OperationManager {
|
||||
return operations;
|
||||
} catch (OperationManagementDAOException e) {
|
||||
throw new OperationManagementException("Error occurred while retrieving the list of " +
|
||||
"operations assigned for '" + deviceId.getType() + "' device '" + deviceId.getId()
|
||||
+ "'", e);
|
||||
"operations assigned for '" + deviceId.getType() + "' device '" + deviceId.getId()
|
||||
+ "'", e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
throw new OperationManagementException("Error occurred while retrieving metadata of '" +
|
||||
deviceId.getType() + "' device carrying the identifier '" + deviceId.getId() + "'");
|
||||
} finally {
|
||||
try {
|
||||
OperationManagementDAOFactory.closeConnection();
|
||||
} catch (OperationManagementDAOException e) {
|
||||
log.warn("Error occurred while closing data source connection", e);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -158,7 +171,7 @@ public class OperationManagerImpl implements OperationManager {
|
||||
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Device identifier id:[" + deviceId.getId() + "] type:[" + deviceId.getType()
|
||||
+ "]");
|
||||
+ "]");
|
||||
}
|
||||
|
||||
int enrolmentId = -1;
|
||||
@ -168,25 +181,27 @@ public class OperationManagerImpl implements OperationManager {
|
||||
new ArrayList<org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation>();
|
||||
|
||||
try {
|
||||
OperationManagementDAOFactory.getConnection();
|
||||
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
enrolmentId = deviceDAO.getEnrolmentByStatus(deviceId, EnrolmentInfo.Status.ACTIVE, tenantId);
|
||||
|
||||
if (enrolmentId < 0) {
|
||||
throw new OperationManagementException("Device not found for given device " +
|
||||
"Identifier:" + deviceId.getId() + " and given type:" + deviceId.getType());
|
||||
"Identifier:" + deviceId.getId() + " and given type:" + deviceId.getType());
|
||||
}
|
||||
|
||||
dtoOperationList.addAll(commandOperationDAO.getOperationsByDeviceAndStatus(enrolmentId,
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status.PENDING));
|
||||
dtoOperationList.addAll(commandOperationDAO.getOperationsByDeviceAndStatus(
|
||||
enrolmentId, org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status.PENDING));
|
||||
|
||||
dtoOperationList.addAll(configOperationDAO.getOperationsByDeviceAndStatus(enrolmentId,
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status.PENDING));
|
||||
dtoOperationList.addAll(configOperationDAO.getOperationsByDeviceAndStatus(
|
||||
enrolmentId, org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status.PENDING));
|
||||
|
||||
dtoOperationList.addAll(profileOperationDAO.getOperationsByDeviceAndStatus(enrolmentId,
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status.PENDING));
|
||||
dtoOperationList.addAll(profileOperationDAO.getOperationsByDeviceAndStatus(
|
||||
enrolmentId, org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status.PENDING));
|
||||
|
||||
dtoOperationList.addAll(policyOperationDAO.getOperationsByDeviceAndStatus(enrolmentId,
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status.PENDING));
|
||||
dtoOperationList.addAll(policyOperationDAO.getOperationsByDeviceAndStatus(
|
||||
enrolmentId, org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status.PENDING));
|
||||
|
||||
Operation operation;
|
||||
for (org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation dtoOperation : dtoOperationList) {
|
||||
@ -197,33 +212,40 @@ public class OperationManagerImpl implements OperationManager {
|
||||
return operations;
|
||||
} catch (OperationManagementDAOException e) {
|
||||
throw new OperationManagementException("Error occurred while retrieving the list of " +
|
||||
"pending operations assigned for '" + deviceId.getType() + "' device '" +
|
||||
deviceId.getId() + "'", e);
|
||||
"pending operations assigned for '" + deviceId.getType() + "' device '" +
|
||||
deviceId.getId() + "'", e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
String errorMsg = "Error occurred while retrieving the device " +
|
||||
"for device Identifier type -'" + deviceId.getType() + "' and device Id '"
|
||||
+ deviceId.getId();
|
||||
"for device Identifier type -'" + deviceId.getType() + "' and device Id '"
|
||||
+ deviceId.getId();
|
||||
log.error(errorMsg, e);
|
||||
throw new OperationManagementException(errorMsg, e);
|
||||
} finally {
|
||||
try {
|
||||
OperationManagementDAOFactory.closeConnection();
|
||||
} catch (OperationManagementDAOException e) {
|
||||
log.warn("Error occurred while closing data source connection", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Operation getNextPendingOperation(DeviceIdentifier deviceId) throws OperationManagementException {
|
||||
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("device identifier id:[" + deviceId.getId() + "] type:[" + deviceId.getType()
|
||||
+ "]");
|
||||
+ "]");
|
||||
}
|
||||
Operation operation = null;
|
||||
int enrolmentId = -1;
|
||||
try {
|
||||
OperationManagementDAOFactory.getConnection();
|
||||
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
enrolmentId = deviceDAO.getEnrolmentByStatus(deviceId, EnrolmentInfo.Status.ACTIVE, tenantId);
|
||||
|
||||
if (enrolmentId < 0) {
|
||||
throw new OperationManagementException("Device not found for given device " +
|
||||
"Identifier:" + deviceId.getId() + " and given type" + deviceId.getType());
|
||||
"Identifier:" + deviceId.getId() + " and given type" + deviceId.getType());
|
||||
}
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation dtoOperation = operationDAO
|
||||
.getNextOperation(enrolmentId);
|
||||
@ -252,17 +274,19 @@ public class OperationManagerImpl implements OperationManager {
|
||||
} catch (OperationManagementDAOException e) {
|
||||
throw new OperationManagementException("Error occurred while retrieving next pending operation", e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
String errorMsg = "Error occurred while retrieving the device " +
|
||||
"for device Identifier type -'" + deviceId.getType() + "' and device Id '"
|
||||
+ deviceId.getId();
|
||||
log.error(errorMsg, e);
|
||||
throw new OperationManagementException(errorMsg, e);
|
||||
throw new OperationManagementException("Error occurred while retrieving the device " +
|
||||
"for device Identifier type -'" + deviceId.getType() + "' and device Id '" + deviceId.getId(), e);
|
||||
} finally {
|
||||
try {
|
||||
OperationManagementDAOFactory.closeConnection();
|
||||
} catch (OperationManagementDAOException e) {
|
||||
log.warn("Error occurred while closing data source connection", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateOperation(DeviceIdentifier deviceId, Operation operation) throws OperationManagementException {
|
||||
|
||||
int operationId = operation.getId();
|
||||
|
||||
if (log.isDebugEnabled()) {
|
||||
@ -270,35 +294,46 @@ public class OperationManagerImpl implements OperationManager {
|
||||
}
|
||||
|
||||
try {
|
||||
OperationManagementDAOFactory.beginTransaction();
|
||||
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
int enrolmentId = deviceDAO.getEnrolmentByStatus(deviceId, EnrolmentInfo.Status.ACTIVE, tenantId);
|
||||
|
||||
if (operation.getStatus() !=null) {
|
||||
if (operation.getStatus() != null) {
|
||||
OperationManagementDAOFactory.beginTransaction();
|
||||
operationDAO.updateOperationStatus(enrolmentId, operationId,
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status
|
||||
.valueOf(operation.getStatus().toString()));
|
||||
OperationManagementDAOFactory.commitTransaction();
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status
|
||||
.valueOf(operation.getStatus().toString()));
|
||||
}
|
||||
|
||||
if (operation.getOperationResponse() != null){
|
||||
|
||||
if (operation.getOperationResponse() != null) {
|
||||
OperationManagementDAOFactory.beginTransaction();
|
||||
operationDAO.addOperationResponse(enrolmentId, operationId, operation.getOperationResponse());
|
||||
OperationManagementDAOFactory.commitTransaction();
|
||||
}
|
||||
} catch (OperationManagementDAOException ex) {
|
||||
} catch (OperationManagementDAOException e) {
|
||||
try {
|
||||
OperationManagementDAOFactory.rollbackTransaction();
|
||||
} catch (OperationManagementDAOException e1) {
|
||||
log.warn("Error occurred while roll-backing the update operation transaction", e1);
|
||||
}
|
||||
log.error("Error occurred while updating the operation: " + operationId + " status:" + operation.getStatus(), ex);
|
||||
throw new OperationManagementException("Error occurred while update operation", ex);
|
||||
throw new OperationManagementException("Error occurred while updating the operation: " + operationId +
|
||||
" status:" + operation.getStatus(), e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
log.error("Error occurred while fetch the device for device identifier: " + deviceId.getId() + " " +
|
||||
"type:" + deviceId.getType(), e);
|
||||
throw new OperationManagementException("Error occurred while update operation", e);
|
||||
try {
|
||||
OperationManagementDAOFactory.rollbackTransaction();
|
||||
} catch (OperationManagementDAOException e1) {
|
||||
log.warn("Error occurred while roll-backing the update operation transaction", e1);
|
||||
}
|
||||
throw new OperationManagementException("Error occurred while fetching the device for device identifier: " +
|
||||
deviceId.getId() + "type:" + deviceId.getType(), e);
|
||||
} finally {
|
||||
try {
|
||||
OperationManagementDAOFactory.closeConnection();
|
||||
} catch (OperationManagementDAOException e) {
|
||||
log.warn("Error occurred while closing data source connection", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -317,14 +352,13 @@ public class OperationManagerImpl implements OperationManager {
|
||||
lookupOperationDAO(operation).deleteOperation(operationId);
|
||||
OperationManagementDAOFactory.commitTransaction();
|
||||
|
||||
} catch (OperationManagementDAOException ex) {
|
||||
} catch (OperationManagementDAOException e) {
|
||||
try {
|
||||
OperationManagementDAOFactory.rollbackTransaction();
|
||||
} catch (OperationManagementDAOException e) {
|
||||
log.warn("Error occurred while roll-backing the delete operation transaction", e);
|
||||
} catch (OperationManagementDAOException e1) {
|
||||
log.warn("Error occurred while roll-backing the delete operation transaction", e1);
|
||||
}
|
||||
log.error("Error occurred while deleting the operation: " + operationId, ex);
|
||||
throw new OperationManagementException("Error occurred while delete operation", ex);
|
||||
throw new OperationManagementException("Error occurred while deleting the operation: " + operationId, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -336,15 +370,17 @@ public class OperationManagerImpl implements OperationManager {
|
||||
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Operation Id:" + operationId + " Device Type:" + deviceId.getType() + " Device Identifier:" +
|
||||
deviceId.getId());
|
||||
deviceId.getId());
|
||||
}
|
||||
|
||||
try {
|
||||
OperationManagementDAOFactory.getConnection();
|
||||
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
enrolmentId = deviceDAO.getEnrolmentByStatus(deviceId, EnrolmentInfo.Status.ACTIVE, tenantId);
|
||||
if (enrolmentId < 0) {
|
||||
throw new OperationManagementException("Device not found for given device identifier:" +
|
||||
deviceId.getId() + " type:" + deviceId.getType());
|
||||
deviceId.getId() + " type:" + deviceId.getType());
|
||||
}
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation dtoOperation = operationDAO
|
||||
.getOperationByDeviceAndId(enrolmentId, operationId);
|
||||
@ -352,36 +388,43 @@ public class OperationManagerImpl implements OperationManager {
|
||||
if (dtoOperation.getType()
|
||||
.equals(org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Type.COMMAND)) {
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.CommandOperation commandOperation;
|
||||
commandOperation = (org.wso2.carbon.device.mgt.core.dto.operation.mgt.CommandOperation) commandOperationDAO
|
||||
.getOperation(dtoOperation.getId());
|
||||
commandOperation =
|
||||
(org.wso2.carbon.device.mgt.core.dto.operation.mgt.CommandOperation) commandOperationDAO.
|
||||
getOperation(dtoOperation.getId());
|
||||
dtoOperation.setEnabled(commandOperation.isEnabled());
|
||||
} else if (dtoOperation.getType()
|
||||
.equals(org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Type.CONFIG)) {
|
||||
dtoOperation = configOperationDAO.getOperation(dtoOperation.getId());
|
||||
} else if (dtoOperation.getType().equals(org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Type
|
||||
.PROFILE)) {
|
||||
.PROFILE)) {
|
||||
dtoOperation = profileOperationDAO.getOperation(dtoOperation.getId());
|
||||
} else if (dtoOperation.getType().equals(org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Type
|
||||
.POLICY)) {
|
||||
.POLICY)) {
|
||||
|
||||
dtoOperation = policyOperationDAO.getOperation(dtoOperation.getId());
|
||||
}
|
||||
|
||||
if (dtoOperation == null) {
|
||||
throw new OperationManagementException("Operation not found for operation Id:" + operationId +
|
||||
" device id:" + deviceId.getId());
|
||||
" device id:" + deviceId.getId());
|
||||
}
|
||||
operation = OperationDAOUtil.convertOperation(dtoOperation);
|
||||
} catch (OperationManagementDAOException e) {
|
||||
throw new OperationManagementException("Error occurred while retrieving the list of " +
|
||||
"operations assigned for '" + deviceId.getType() + "' device '" + deviceId.getId()
|
||||
+ "'", e);
|
||||
"operations assigned for '" + deviceId.getType() + "' device '" + deviceId.getId()
|
||||
+ "'", e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
String errorMsg = "Error occurred while retrieving the device " +
|
||||
"for device Identifier type -'" + deviceId.getType() + "' and device Id '"
|
||||
+ deviceId.getId();
|
||||
"for device Identifier type -'" + deviceId.getType() + "' and device Id '"
|
||||
+ deviceId.getId();
|
||||
log.error(errorMsg, e);
|
||||
throw new OperationManagementException(errorMsg, e);
|
||||
} finally {
|
||||
try {
|
||||
OperationManagementDAOFactory.closeConnection();
|
||||
} catch (OperationManagementDAOException e) {
|
||||
log.warn("Error occurred while closing data source connection", e);
|
||||
}
|
||||
}
|
||||
return operation;
|
||||
}
|
||||
@ -389,18 +432,18 @@ public class OperationManagerImpl implements OperationManager {
|
||||
@Override
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(
|
||||
DeviceIdentifier deviceId, Operation.Status status) throws OperationManagementException {
|
||||
|
||||
List<Operation> operations = new ArrayList<Operation>();
|
||||
List<org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation> dtoOperationList =
|
||||
new ArrayList<org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation>();
|
||||
try {
|
||||
List<Operation> operations = new ArrayList<Operation>();
|
||||
List<org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation> dtoOperationList =
|
||||
new ArrayList<org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation>();
|
||||
OperationManagementDAOFactory.getConnection();
|
||||
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
int enrolmentId = deviceDAO.getEnrolmentByStatus(deviceId, EnrolmentInfo.Status.ACTIVE, tenantId);
|
||||
|
||||
if (enrolmentId < 0) {
|
||||
throw new OperationManagementException("Device not found for device id:" + deviceId.getId() + " " +
|
||||
"type:" + deviceId.getType());
|
||||
"type:" + deviceId.getType());
|
||||
}
|
||||
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Status dtoOpStatus = org.wso2.carbon.device
|
||||
@ -428,13 +471,17 @@ public class OperationManagerImpl implements OperationManager {
|
||||
return operations;
|
||||
} catch (OperationManagementDAOException e) {
|
||||
throw new OperationManagementException("Error occurred while retrieving the list of " +
|
||||
"operations assigned for '" + deviceId.getType() + "' device '" +
|
||||
deviceId.getId() + "' and status:" + status.toString(), e);
|
||||
"operations assigned for '" + deviceId.getType() + "' device '" +
|
||||
deviceId.getId() + "' and status:" + status.toString(), e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
String errorMsg = "Error occurred while retrieving the device " +
|
||||
"for device Identifier type -'" + deviceId.getType() + "' and device Id '" + deviceId.getId();
|
||||
log.error(errorMsg, e);
|
||||
throw new OperationManagementException(errorMsg, e);
|
||||
throw new OperationManagementException("Error occurred while retrieving the device " +
|
||||
"for device Identifier type -'" + deviceId.getType() + "' and device Id '" + deviceId.getId(), e);
|
||||
} finally {
|
||||
try {
|
||||
OperationManagementDAOFactory.closeConnection();
|
||||
} catch (OperationManagementDAOException e) {
|
||||
log.warn("Error occurred while closing data source connection", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -443,6 +490,8 @@ public class OperationManagerImpl implements OperationManager {
|
||||
|
||||
Operation operation;
|
||||
try {
|
||||
OperationManagementDAOFactory.getConnection();
|
||||
|
||||
org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation dtoOperation = operationDAO.getOperation
|
||||
(operationId);
|
||||
if (dtoOperation == null) {
|
||||
@ -459,19 +508,24 @@ public class OperationManagerImpl implements OperationManager {
|
||||
.equals(org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Type.CONFIG)) {
|
||||
dtoOperation = configOperationDAO.getOperation(dtoOperation.getId());
|
||||
} else if (dtoOperation.getType().equals(org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Type
|
||||
.PROFILE)) {
|
||||
.PROFILE)) {
|
||||
dtoOperation = profileOperationDAO.getOperation(dtoOperation.getId());
|
||||
} else if (dtoOperation.getType().equals(org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation.Type
|
||||
.POLICY)) {
|
||||
.POLICY)) {
|
||||
|
||||
dtoOperation = policyOperationDAO.getOperation(dtoOperation.getId());
|
||||
}
|
||||
|
||||
operation = OperationDAOUtil.convertOperation(dtoOperation);
|
||||
} catch (OperationManagementDAOException e) {
|
||||
String errorMsg = "Error occurred while retrieving the operation with operation Id '" + operationId;
|
||||
log.error(errorMsg, e);
|
||||
throw new OperationManagementException(errorMsg, e);
|
||||
} finally {
|
||||
try {
|
||||
OperationManagementDAOFactory.closeConnection();
|
||||
} catch (OperationManagementDAOException e) {
|
||||
log.warn("Error occurred while closing data source connection", e);
|
||||
}
|
||||
}
|
||||
return operation;
|
||||
}
|
||||
|
||||
@ -22,15 +22,15 @@ import java.util.List;
|
||||
|
||||
public class PolicyOperation extends Operation {
|
||||
|
||||
public static final String POLICY_OPERATION_CODE = "POLICY_BUNDLE";
|
||||
private List<ProfileOperation> profileOperations;
|
||||
|
||||
public List<ProfileOperation> getProfileOperations() {
|
||||
return profileOperations;
|
||||
}
|
||||
public static final String POLICY_OPERATION_CODE = "POLICY_BUNDLE";
|
||||
|
||||
public void setProfileOperations(List<ProfileOperation> profileOperations) {
|
||||
this.profileOperations = profileOperations;
|
||||
}
|
||||
|
||||
private List<ProfileOperation> profileOperations;
|
||||
|
||||
}
|
||||
|
||||
@ -18,7 +18,6 @@
|
||||
*/
|
||||
package org.wso2.carbon.device.mgt.core.operation.mgt.dao;
|
||||
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.device.mgt.core.dto.operation.mgt.Operation;
|
||||
|
||||
import java.util.List;
|
||||
@ -33,18 +32,18 @@ public interface OperationDAO {
|
||||
|
||||
Operation getOperation(int operationId) throws OperationManagementDAOException;
|
||||
|
||||
Operation getOperationByDeviceAndId(int deviceId, int operationId) throws OperationManagementDAOException;
|
||||
Operation getOperationByDeviceAndId(int enrolmentId, int operationId) throws OperationManagementDAOException;
|
||||
|
||||
List<? extends Operation> getOperationsByDeviceAndStatus(int deviceId, Operation.Status status)
|
||||
List<? extends Operation> getOperationsByDeviceAndStatus(int enrolmentId, Operation.Status status)
|
||||
throws OperationManagementDAOException;
|
||||
|
||||
List<? extends Operation> getOperationsForDevice(int deviceId) throws OperationManagementDAOException;
|
||||
List<? extends Operation> getOperationsForDevice(int enrolmentId) throws OperationManagementDAOException;
|
||||
|
||||
Operation getNextOperation(int deviceId) throws OperationManagementDAOException;
|
||||
Operation getNextOperation(int enrolmentId) throws OperationManagementDAOException;
|
||||
|
||||
void updateOperationStatus(int deviceId, int operationId,Operation.Status status)
|
||||
void updateOperationStatus(int enrolmentId, int operationId,Operation.Status status)
|
||||
throws OperationManagementDAOException;
|
||||
|
||||
void addOperationResponse(int deviceId, int operationId, Object operationResponse)
|
||||
void addOperationResponse(int enrolmentId, int operationId, Object operationResponse)
|
||||
throws OperationManagementDAOException;
|
||||
}
|
||||
|
||||
@ -130,7 +130,7 @@ public class CommandOperationDAOImpl extends OperationDAOImpl {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(int deviceId,
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(int enrolmentId,
|
||||
Operation.Status status) throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
@ -146,11 +146,11 @@ public class CommandOperationDAOImpl extends OperationDAOImpl {
|
||||
Connection conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "Select co.OPERATION_ID,ENABLED from DM_COMMAND_OPERATION co " +
|
||||
"INNER JOIN " +
|
||||
"(Select * From DM_DEVICE_OPERATION_MAPPING WHERE DEVICE_ID=? " +
|
||||
"(Select * From DM_ENROLMENT_OPERATION_MAPPING WHERE ENROLMENT_ID=? " +
|
||||
"AND STATUS=? ) dm ON dm.OPERATION_ID = co.OPERATION_ID";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, deviceId);
|
||||
stmt.setInt(1, enrolmentId);
|
||||
stmt.setString(2, status.toString());
|
||||
|
||||
rs = stmt.executeQuery();
|
||||
@ -169,7 +169,7 @@ public class CommandOperationDAOImpl extends OperationDAOImpl {
|
||||
}
|
||||
|
||||
} catch (SQLException e) {
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + deviceId +
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + enrolmentId +
|
||||
"' with status '" + status.toString();
|
||||
log.error(errorMsg);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
|
||||
@ -168,7 +168,7 @@ public class ConfigOperationDAOImpl extends OperationDAOImpl {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(int deviceId,
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(int enrolmentId,
|
||||
Operation.Status status) throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
@ -184,11 +184,11 @@ public class ConfigOperationDAOImpl extends OperationDAOImpl {
|
||||
Connection conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "Select co.OPERATION_ID, co.OPERATION_CONFIG from DM_CONFIG_OPERATION co " +
|
||||
"INNER JOIN " +
|
||||
"(Select * From DM_DEVICE_OPERATION_MAPPING WHERE DEVICE_ID=? " +
|
||||
"(Select * From DM_ENROLMENT_OPERATION_MAPPING WHERE ENROLMENT_ID=? " +
|
||||
"AND STATUS=?) dm ON dm.OPERATION_ID = co.OPERATION_ID";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, deviceId);
|
||||
stmt.setInt(1, enrolmentId);
|
||||
stmt.setString(2, status.toString());
|
||||
|
||||
rs = stmt.executeQuery();
|
||||
@ -211,7 +211,7 @@ public class ConfigOperationDAOImpl extends OperationDAOImpl {
|
||||
log.error(errorMsg, e);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
} catch (SQLException e) {
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + deviceId +
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + enrolmentId +
|
||||
"' with status '" + status.toString();
|
||||
log.error(errorMsg);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
|
||||
@ -86,17 +86,17 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
}
|
||||
}
|
||||
|
||||
public void updateOperationStatus(int deviceId, int operationId, Operation.Status status)
|
||||
public void updateOperationStatus(int enrolmentId, int operationId, Operation.Status status)
|
||||
throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
try {
|
||||
Connection connection = OperationManagementDAOFactory.getConnection();
|
||||
stmt = connection.prepareStatement("UPDATE DM_DEVICE_OPERATION_MAPPING O SET O.STATUS=? " +
|
||||
"WHERE O.DEVICE_ID=? and O.OPERATION_ID=?");
|
||||
stmt = connection.prepareStatement("UPDATE DM_ENROLMENT_OPERATION_MAPPING O SET O.STATUS=? " +
|
||||
"WHERE O.ENROLMENT_ID=? and O.OPERATION_ID=?");
|
||||
|
||||
stmt.setString(1, status.toString());
|
||||
stmt.setInt(2, deviceId);
|
||||
stmt.setInt(2, enrolmentId);
|
||||
stmt.setInt(3, operationId);
|
||||
stmt.executeUpdate();
|
||||
|
||||
@ -111,7 +111,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addOperationResponse(int deviceId, int operationId, Object operationResponse)
|
||||
public void addOperationResponse(int enrolmentId, int operationId, Object operationResponse)
|
||||
throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
@ -129,7 +129,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
oos.writeObject(operationResponse);
|
||||
|
||||
stmt.setInt(1, operationId);
|
||||
stmt.setInt(2, deviceId);
|
||||
stmt.setInt(2, enrolmentId);
|
||||
stmt.setBytes(3, bao.toByteArray());
|
||||
stmt.executeUpdate();
|
||||
|
||||
@ -214,7 +214,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Operation getOperationByDeviceAndId(int deviceId, int operationId) throws OperationManagementDAOException {
|
||||
public Operation getOperationByDeviceAndId(int enrolmentId, int operationId) throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet rs = null;
|
||||
@ -225,13 +225,13 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
String sql = "SELECT o.ID, o.TYPE, o.CREATED_TIMESTAMP, o.RECEIVED_TIMESTAMP, o.STATUS, o.OPERATION_CODE " +
|
||||
" From (SELECT ID, TYPE, CREATED_TIMESTAMP, RECEIVED_TIMESTAMP, STATUS," +
|
||||
"OPERATION_CODE FROM DM_OPERATION WHERE id=?) o INNER JOIN (Select * from " +
|
||||
"DM_DEVICE_OPERATION_MAPPING dm where dm.OPERATION_ID=? AND dm.DEVICE_ID=?) om " +
|
||||
"DM_ENROLMENT_OPERATION_MAPPING dm where dm.OPERATION_ID=? AND dm.ENROLMENT_ID=?) om " +
|
||||
"ON o.ID = om.OPERATION_ID ";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, operationId);
|
||||
stmt.setInt(2, operationId);
|
||||
stmt.setInt(3, deviceId);
|
||||
stmt.setInt(3, enrolmentId);
|
||||
rs = stmt.executeQuery();
|
||||
|
||||
if (rs.next()) {
|
||||
@ -247,7 +247,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
operation.setCode(rs.getString("OPERATION_CODE"));
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + deviceId +
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + enrolmentId +
|
||||
"' with id '" + operationId;
|
||||
log.error(errorMsg);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
@ -259,7 +259,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(int deviceId,
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(int enrolmentId,
|
||||
Operation.Status status) throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
@ -272,11 +272,11 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
Connection conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "SELECT o.ID, TYPE, CREATED_TIMESTAMP, RECEIVED_TIMESTAMP, OPERATION_CODE " +
|
||||
"FROM DM_OPERATION o " +
|
||||
"INNER JOIN (Select * from DM_DEVICE_OPERATION_MAPPING dm " +
|
||||
"where dm.DEVICE_ID=? and dm.STATUS=?) om ON o.ID = om.OPERATION_ID ORDER BY o.CREATED_TIMESTAMP ASC";
|
||||
"INNER JOIN (Select * from DM_ENROLMENT_OPERATION_MAPPING dm " +
|
||||
"where dm.ENROLMENT_ID=? and dm.STATUS=?) om ON o.ID = om.OPERATION_ID ORDER BY o.CREATED_TIMESTAMP ASC";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, deviceId);
|
||||
stmt.setInt(1, enrolmentId);
|
||||
stmt.setString(2, status.toString());
|
||||
|
||||
rs = stmt.executeQuery();
|
||||
@ -296,7 +296,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
operationList.add(operation);
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + deviceId +
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + enrolmentId +
|
||||
"' with status '" + status.toString();
|
||||
log.error(errorMsg);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
@ -308,7 +308,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Operation> getOperationsForDevice(int deviceId)
|
||||
public List<? extends Operation> getOperationsForDevice(int enrolmentId)
|
||||
throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
@ -321,11 +321,11 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
Connection conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "SELECT o.ID, TYPE, CREATED_TIMESTAMP, RECEIVED_TIMESTAMP, " +
|
||||
"OPERATION_CODE,dm.STATUS FROM DM_OPERATION o " +
|
||||
"INNER JOIN (Select * from DM_DEVICE_OPERATION_MAPPING dm " +
|
||||
"where dm.DEVICE_ID=?) om ON o.ID = om.OPERATION_ID ORDER BY o.CREATED_TIMESTAMP ASC";
|
||||
"INNER JOIN (Select * from DM_ENROLMENT_OPERATION_MAPPING dm " +
|
||||
"where dm.ENROLMENT_ID=?) om ON o.ID = om.OPERATION_ID ORDER BY o.CREATED_TIMESTAMP ASC";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, deviceId);
|
||||
stmt.setInt(1, enrolmentId);
|
||||
|
||||
rs = stmt.executeQuery();
|
||||
|
||||
@ -344,7 +344,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
operationList.add(operation);
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + deviceId +
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + enrolmentId +
|
||||
"' with status '";
|
||||
log.error(errorMsg);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
@ -356,7 +356,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Operation getNextOperation(int deviceId) throws OperationManagementDAOException {
|
||||
public Operation getNextOperation(int enrolmentId) throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet rs = null;
|
||||
@ -365,11 +365,11 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
Connection connection = OperationManagementDAOFactory.getConnection();
|
||||
stmt = connection.prepareStatement("SELECT o.ID, TYPE, CREATED_TIMESTAMP, RECEIVED_TIMESTAMP, " +
|
||||
"OPERATION_CODE FROM DM_OPERATION o " +
|
||||
"INNER JOIN (Select * from DM_DEVICE_OPERATION_MAPPING dm " +
|
||||
"where dm.DEVICE_ID=? AND dm.STATUS=?) om ON o.ID = om.OPERATION_ID " +
|
||||
"INNER JOIN (Select * from DM_ENROLMENT_OPERATION_MAPPING dm " +
|
||||
"where dm.ENROLMENT_ID=? AND dm.STATUS=?) om ON o.ID = om.OPERATION_ID " +
|
||||
"ORDER BY o.CREATED_TIMESTAMP ASC LIMIT 1");
|
||||
|
||||
stmt.setInt(1, deviceId);
|
||||
stmt.setInt(1, enrolmentId);
|
||||
stmt.setString(2, Operation.Status.PENDING.toString());
|
||||
|
||||
rs = stmt.executeQuery();
|
||||
@ -398,7 +398,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
}
|
||||
|
||||
|
||||
public List<? extends Operation> getOperationsByDeviceStatusAndType(int deviceId,
|
||||
public List<? extends Operation> getOperationsByDeviceStatusAndType(int enrolmentId,
|
||||
Operation.Status status, Operation.Type type) throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
@ -412,12 +412,12 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
String sql = "SELECT o.ID, TYPE, CREATED_TIMESTAMP, RECEIVED_TIMESTAMP, OPERATION_CODE FROM " +
|
||||
"(SELECT o.ID, TYPE, CREATED_TIMESTAMP, RECEIVED_TIMESTAMP, OPERATION_CODE " +
|
||||
"FROM DM_OPERATION o WHERE o.TYPE=?) o " +
|
||||
"INNER JOIN (Select * from DM_DEVICE_OPERATION_MAPPING dm " +
|
||||
"where dm.DEVICE_ID=? and dm.STATUS=?) om ON o.ID = om.OPERATION_ID ORDER BY o.CREATED_TIMESTAMP ASC";
|
||||
"INNER JOIN (Select * from DM_ENROLMENT_OPERATION_MAPPING dm " +
|
||||
"where dm.ENROLMENT_ID=? and dm.STATUS=?) om ON o.ID = om.OPERATION_ID ORDER BY o.CREATED_TIMESTAMP ASC";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setString(1, type.toString());
|
||||
stmt.setInt(2, deviceId);
|
||||
stmt.setInt(2, enrolmentId);
|
||||
stmt.setString(3, status.toString());
|
||||
|
||||
rs = stmt.executeQuery();
|
||||
@ -436,7 +436,7 @@ public class OperationDAOImpl implements OperationDAO {
|
||||
operationList.add(operation);
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + deviceId +
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + enrolmentId +
|
||||
"' with status '" + status.toString();
|
||||
log.error(errorMsg);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
|
||||
@ -35,7 +35,7 @@ public class OperationMappingDAOImpl implements OperationMappingDAO {
|
||||
PreparedStatement stmt = null;
|
||||
try {
|
||||
Connection conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "INSERT INTO DM_DEVICE_OPERATION_MAPPING(DEVICE_ID, OPERATION_ID,STATUS) VALUES(?, ?,?)";
|
||||
String sql = "INSERT INTO DM_ENROLMENT_OPERATION_MAPPING(ENROLMENT_ID, OPERATION_ID, STATUS) VALUES (?, ?,?)";
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, deviceId);
|
||||
stmt.setInt(2, operationId);
|
||||
@ -54,7 +54,7 @@ public class OperationMappingDAOImpl implements OperationMappingDAO {
|
||||
PreparedStatement stmt = null;
|
||||
try {
|
||||
Connection conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "DELETE FROM DM_DEVICE_OPERATION_MAPPING WHERE DEVICE_ID = ? AND OPERATION_ID = ?";
|
||||
String sql = "DELETE FROM DM_ENROLMENT_OPERATION_MAPPING WHERE ENROLMENT_ID = ? AND OPERATION_ID = ?";
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, 0);
|
||||
stmt.setInt(2, operationId);
|
||||
|
||||
@ -171,7 +171,7 @@ public class PolicyOperationDAOImpl extends OperationDAOImpl {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(int deviceId,
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(int enrolmentId,
|
||||
Operation.Status status) throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
@ -187,11 +187,11 @@ public class PolicyOperationDAOImpl extends OperationDAOImpl {
|
||||
Connection conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "Select po.OPERATION_ID, ENABLED, OPERATION_DETAILS from DM_POLICY_OPERATION po " +
|
||||
"INNER JOIN " +
|
||||
"(Select * From DM_DEVICE_OPERATION_MAPPING WHERE DEVICE_ID=? " +
|
||||
"(Select * From DM_ENROLMENT_OPERATION_MAPPING WHERE ENROLMENT_ID=? " +
|
||||
"AND STATUS=?) dm ON dm.OPERATION_ID = po.OPERATION_ID";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, deviceId);
|
||||
stmt.setInt(1, enrolmentId);
|
||||
stmt.setString(2, status.toString());
|
||||
|
||||
rs = stmt.executeQuery();
|
||||
@ -214,7 +214,7 @@ public class PolicyOperationDAOImpl extends OperationDAOImpl {
|
||||
log.error(errorMsg, e);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
} catch (SQLException e) {
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + deviceId +
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + enrolmentId +
|
||||
"' with status '" + status.toString();
|
||||
log.error(errorMsg);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
|
||||
@ -167,7 +167,7 @@ public class ProfileOperationDAOImpl extends OperationDAOImpl {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(int deviceId,
|
||||
public List<? extends Operation> getOperationsByDeviceAndStatus(int enrolmentId,
|
||||
Operation.Status status) throws OperationManagementDAOException {
|
||||
|
||||
PreparedStatement stmt = null;
|
||||
@ -183,11 +183,11 @@ public class ProfileOperationDAOImpl extends OperationDAOImpl {
|
||||
Connection conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "Select po.OPERATION_ID, ENABLED, OPERATION_DETAILS from DM_PROFILE_OPERATION po " +
|
||||
"INNER JOIN " +
|
||||
"(Select * From DM_DEVICE_OPERATION_MAPPING WHERE DEVICE_ID=? " +
|
||||
"(Select * From DM_ENROLMENT_OPERATION_MAPPING WHERE ENROLMENT_ID=? " +
|
||||
"AND STATUS=?) dm ON dm.OPERATION_ID = po.OPERATION_ID";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setInt(1, deviceId);
|
||||
stmt.setInt(1, enrolmentId);
|
||||
stmt.setString(2, status.toString());
|
||||
|
||||
rs = stmt.executeQuery();
|
||||
@ -210,7 +210,7 @@ public class ProfileOperationDAOImpl extends OperationDAOImpl {
|
||||
log.error(errorMsg, e);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
} catch (SQLException e) {
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + deviceId +
|
||||
String errorMsg = "SQL error occurred while retrieving the operation available for the device'" + enrolmentId +
|
||||
"' with status '" + status.toString();
|
||||
log.error(errorMsg);
|
||||
throw new OperationManagementDAOException(errorMsg, e);
|
||||
|
||||
@ -20,6 +20,7 @@ package org.wso2.carbon.device.mgt.core.service;
|
||||
import org.wso2.carbon.device.mgt.common.*;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManager;
|
||||
import org.wso2.carbon.device.mgt.common.app.mgt.Application;
|
||||
import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration;
|
||||
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManager;
|
||||
import org.wso2.carbon.device.mgt.common.operation.mgt.OperationManager;
|
||||
import java.util.List;
|
||||
@ -40,6 +41,16 @@ public interface DeviceManagementProviderService extends DeviceManager, LicenseM
|
||||
|
||||
FeatureManager getFeatureManager(String type) throws DeviceManagementException;
|
||||
|
||||
/**
|
||||
* Proxy method to get the tenant configuration of a given platform.
|
||||
*
|
||||
* @param type Device platform
|
||||
* @return Tenant configuration settings of the particular tenant and platform.
|
||||
* @throws DeviceManagementException If some unusual behaviour is observed while fetching the
|
||||
* configuration.
|
||||
*/
|
||||
TenantConfiguration getConfiguration(String type) throws DeviceManagementException;
|
||||
|
||||
/**
|
||||
* Method to get the list of devices owned by an user.
|
||||
*
|
||||
|
||||
@ -21,6 +21,7 @@ import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.context.CarbonContext;
|
||||
import org.wso2.carbon.device.mgt.common.*;
|
||||
import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration;
|
||||
import org.wso2.carbon.device.mgt.common.license.mgt.License;
|
||||
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManagementException;
|
||||
import org.wso2.carbon.device.mgt.common.operation.mgt.Operation;
|
||||
@ -53,7 +54,6 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv
|
||||
private DeviceTypeDAO deviceTypeDAO;
|
||||
private EnrolmentDAO enrolmentDAO;
|
||||
private DeviceManagementPluginRepository pluginRepository;
|
||||
private boolean isTest = false;
|
||||
|
||||
private static Log log = LogFactory.getLog(DeviceManagementProviderServiceImpl.class);
|
||||
private int tenantId;
|
||||
@ -76,7 +76,6 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv
|
||||
DeviceManagementProviderServiceImpl(DeviceManagementPluginRepository pluginRepo, boolean test) {
|
||||
this.pluginRepository = pluginRepo;
|
||||
initDataAccessObjects();
|
||||
isTest = test;
|
||||
}
|
||||
|
||||
private void initDataAccessObjects() {
|
||||
@ -90,6 +89,26 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean saveConfiguration(TenantConfiguration configuration)
|
||||
throws DeviceManagementException {
|
||||
DeviceManager dms =
|
||||
this.getPluginRepository().getDeviceManagementService(configuration.getType()).getDeviceManager();
|
||||
return dms.saveConfiguration(configuration);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TenantConfiguration getConfiguration() throws DeviceManagementException {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TenantConfiguration getConfiguration(String type) throws DeviceManagementException {
|
||||
DeviceManager dms =
|
||||
this.getPluginRepository().getDeviceManagementService(type).getDeviceManager();
|
||||
return dms.getConfiguration();
|
||||
}
|
||||
|
||||
@Override
|
||||
public FeatureManager getFeatureManager(String type) {
|
||||
DeviceManager dms =
|
||||
@ -110,7 +129,7 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv
|
||||
} else {
|
||||
device.getEnrolmentInfo().setStatus(EnrolmentInfo.Status.ACTIVE);
|
||||
}
|
||||
int tenantId = getTenantId();
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
|
||||
Device existingDevice = this.getDevice(deviceIdentifier);
|
||||
|
||||
@ -453,12 +472,16 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv
|
||||
}
|
||||
}
|
||||
if (device != null) {
|
||||
DeviceManager dms =
|
||||
this.getPluginRepository().getDeviceManagementService(deviceId.getType()).getDeviceManager();
|
||||
Device pluginSpecificInfo = dms.getDevice(deviceId);
|
||||
if (pluginSpecificInfo != null) {
|
||||
device.setFeatures(pluginSpecificInfo.getFeatures());
|
||||
device.setProperties(pluginSpecificInfo.getProperties());
|
||||
// The changes made here to prevent unit tests getting failed. They failed because when running the unit
|
||||
// tests there is no osgi services. So getDeviceManager() returns a null.
|
||||
DeviceManagementService service = this.getPluginRepository().getDeviceManagementService(deviceId.getType());
|
||||
if(service != null) {
|
||||
DeviceManager dms = service.getDeviceManager();
|
||||
Device pluginSpecificInfo = dms.getDevice(deviceId);
|
||||
if (pluginSpecificInfo != null) {
|
||||
device.setFeatures(pluginSpecificInfo.getFeatures());
|
||||
device.setProperties(pluginSpecificInfo.getProperties());
|
||||
}
|
||||
}
|
||||
}
|
||||
return device;
|
||||
@ -752,14 +775,10 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv
|
||||
DeviceManagementDAOFactory.getConnection();
|
||||
int tenantId = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
allDevices = deviceDAO.getDevicesByStatus(status, tenantId);
|
||||
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
String errorMsg = "Error occurred while fetching the list of devices that matches to status: '"
|
||||
+ status + "'";
|
||||
log.error(errorMsg, e);
|
||||
throw new DeviceManagementException(errorMsg, e);
|
||||
throw new DeviceManagementException(
|
||||
"Error occurred while fetching the list of devices that matches to status: '" + status + "'", e);
|
||||
} finally {
|
||||
|
||||
try {
|
||||
DeviceManagementDAOFactory.closeConnection();
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
@ -780,19 +799,4 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv
|
||||
}
|
||||
return devices;
|
||||
}
|
||||
|
||||
|
||||
private int getTenantId() {
|
||||
|
||||
ThreadLocal<Integer> tenantId = new ThreadLocal<Integer>();
|
||||
int tenant = 0;
|
||||
|
||||
if (isTest) {
|
||||
tenant = DeviceManagerUtil.currentTenant.get();
|
||||
} else {
|
||||
tenant = CarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
}
|
||||
return tenant;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -51,11 +51,14 @@ public class URLPrinterStartupHandler implements ServerStartupObserver {
|
||||
String mgtConsoleTransport = CarbonUtils.getManagementTransport();
|
||||
ConfigurationContextService configContextService =
|
||||
DeviceManagementDataHolder.getInstance().getConfigurationContextService();
|
||||
int httpsPort = CarbonUtils.getTransportPort(configContextService, mgtConsoleTransport);
|
||||
int port = CarbonUtils.getTransportPort(configContextService, mgtConsoleTransport);
|
||||
int httpsProxyPort =
|
||||
CarbonUtils.getTransportProxyPort(configContextService.getServerConfigContext(),
|
||||
mgtConsoleTransport);
|
||||
return "https://" + hostName + ":" + httpsPort + "/mdm";
|
||||
if (httpsProxyPort > 0) {
|
||||
port = httpsProxyPort;
|
||||
}
|
||||
return "https://" + hostName + ":" + port + "/mdm";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -49,7 +49,6 @@ import java.util.*;
|
||||
public final class DeviceManagerUtil {
|
||||
|
||||
private static final Log log = LogFactory.getLog(DeviceManagerUtil.class);
|
||||
public static ThreadLocal<Integer> currentTenant = new ThreadLocal<Integer>();
|
||||
|
||||
enum HTTPMethod {
|
||||
GET, POST, DELETE, PUT, OPTIONS
|
||||
|
||||
@ -16,8 +16,11 @@
|
||||
package org.wso2.carbon.device.mgt.core;
|
||||
|
||||
import org.wso2.carbon.device.mgt.common.*;
|
||||
import org.wso2.carbon.device.mgt.common.configuration.mgt.ConfigurationEntry;
|
||||
import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class TestDeviceManager implements DeviceManager {
|
||||
|
||||
@ -26,6 +29,16 @@ public class TestDeviceManager implements DeviceManager {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean saveConfiguration(TenantConfiguration configuration)
|
||||
throws DeviceManagementException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override public TenantConfiguration getConfiguration() throws DeviceManagementException {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean enrollDevice(Device device) throws DeviceManagementException {
|
||||
return true;
|
||||
|
||||
@ -26,6 +26,8 @@ import org.testng.annotations.AfterSuite;
|
||||
import org.testng.annotations.BeforeClass;
|
||||
import org.testng.annotations.BeforeSuite;
|
||||
import org.w3c.dom.Document;
|
||||
import org.wso2.carbon.base.MultitenantConstants;
|
||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
||||
import org.wso2.carbon.device.mgt.core.TestUtils;
|
||||
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOFactory;
|
||||
@ -50,6 +52,7 @@ public abstract class BaseDeviceManagementTest {
|
||||
public void setupDataSource() throws Exception {
|
||||
this.initDatSource();
|
||||
this.initSQLScript();
|
||||
this.initializeCarbonContext();
|
||||
}
|
||||
|
||||
public void initDatSource() throws Exception {
|
||||
@ -69,6 +72,32 @@ public abstract class BaseDeviceManagementTest {
|
||||
return new org.apache.tomcat.jdbc.pool.DataSource(properties);
|
||||
}
|
||||
|
||||
private void initializeCarbonContext(){
|
||||
|
||||
if (System.getProperty("carbon.home") == null) {
|
||||
File file = new File("src/test/resources/carbon-home");
|
||||
if (file.exists()) {
|
||||
System.setProperty("carbon.home", file.getAbsolutePath());
|
||||
}
|
||||
file = new File("../resources/carbon-home");
|
||||
if (file.exists()) {
|
||||
System.setProperty("carbon.home", file.getAbsolutePath());
|
||||
}
|
||||
file = new File("../../resources/carbon-home");
|
||||
if (file.exists()) {
|
||||
System.setProperty("carbon.home", file.getAbsolutePath());
|
||||
}
|
||||
file = new File("../../../resources/carbon-home");
|
||||
if (file.exists()) {
|
||||
System.setProperty("carbon.home", file.getAbsolutePath());
|
||||
}
|
||||
}
|
||||
|
||||
PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain(MultitenantConstants
|
||||
.SUPER_TENANT_DOMAIN_NAME);
|
||||
PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(MultitenantConstants.SUPER_TENANT_ID);
|
||||
}
|
||||
|
||||
private DataSourceConfig readDataSourceConfig() throws DeviceManagementException {
|
||||
try {
|
||||
File file = new File("src/test/resources/config/datasource/data-source-config.xml");
|
||||
|
||||
@ -58,7 +58,6 @@ public class DeviceManagementProviderServiceTest extends BaseDeviceManagementTes
|
||||
deviceManagementProviderService = new DeviceManagementProviderServiceImpl(deviceManagementPluginRepository,
|
||||
true);
|
||||
DeviceManagerUtil.registerDeviceType(TestDataHolder.TEST_DEVICE_TYPE);
|
||||
DeviceManagerUtil.currentTenant.set(TestDataHolder.SUPER_TENANT_ID);
|
||||
|
||||
Device device = TestDataHolder.generateDummyDeviceData(TestDataHolder.TEST_DEVICE_TYPE);
|
||||
boolean isEnrolled = deviceManagementProviderService.enrollDevice(device);
|
||||
|
||||
@ -0,0 +1,723 @@
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<axisconfig name="AxisJava2.0">
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Globally engaged modules -->
|
||||
<!-- ================================================= -->
|
||||
<module ref="addressing"/>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Parameters -->
|
||||
<!-- ================================================= -->
|
||||
<parameter name="hotdeployment">${hotdeployment}</parameter>
|
||||
<parameter name="hotupdate">${hotupdate}</parameter>
|
||||
<parameter name="enableMTOM" locked="false">optional</parameter>
|
||||
<parameter name="cacheAttachments">true</parameter>
|
||||
<parameter name="attachmentDIR">work/mtom</parameter>
|
||||
<parameter name="sizeThreshold">4000</parameter>
|
||||
|
||||
<parameter name="EnableChildFirstClassLoading">${childfirstCL}</parameter>
|
||||
|
||||
<!--
|
||||
The exposeServiceMetadata parameter decides whether the metadata (WSDL, schema, policy) of
|
||||
the services deployed on Axis2 should be visible when ?wsdl, ?wsdl2, ?xsd, ?policy requests
|
||||
are received.
|
||||
This parameter can be defined in the axi2.xml file, in which case this will be applicable
|
||||
globally, or in the services.xml files, in which case, it will be applicable to the
|
||||
Service groups and/or services, depending on the level at which the parameter is declared.
|
||||
This value of this parameter defaults to true.
|
||||
-->
|
||||
<parameter name="exposeServiceMetadata">true</parameter>
|
||||
|
||||
<!--If turned on with use the Accept header of the request to determine the contentType of the
|
||||
response-->
|
||||
<parameter name="httpContentNegotiation">true</parameter>
|
||||
|
||||
<!--
|
||||
Defines how the persistence of WS-ReliableMessaging is handled
|
||||
|
||||
Possible value are: inmemory & persistent
|
||||
-->
|
||||
<!-- Following parameter will completely disable REST handling in both the servlets-->
|
||||
<parameter name="disableREST" locked="false">false</parameter>
|
||||
|
||||
<parameter name="Sandesha2StorageManager">inmemory</parameter>
|
||||
|
||||
<!-- This deployment interceptor will be called whenever before a module is initialized or
|
||||
service is deployed -->
|
||||
<listener class="org.wso2.carbon.core.deployment.DeploymentInterceptor"/>
|
||||
|
||||
<!-- setting servicePath. contextRoot is defined in the carbon.xml file -->
|
||||
<!-- modification of this variable should be accompanied by the change in 'ServerURL' in carbon.xml file -->
|
||||
<parameter name="servicePath">services</parameter>
|
||||
|
||||
<!--the directory in which .aar services are deployed inside axis2 repository-->
|
||||
<parameter name="ServicesDirectory">axis2services</parameter>
|
||||
|
||||
<!--the directory in which modules are deployed inside axis2 repository-->
|
||||
<parameter name="ModulesDirectory">axis2modules</parameter>
|
||||
|
||||
<parameter name="userAgent" locked="true">
|
||||
@product.name@-@product.version@
|
||||
</parameter>
|
||||
<parameter name="server" locked="true">
|
||||
@product.name@-@product.version@
|
||||
</parameter>
|
||||
|
||||
<!-- ========================================================================-->
|
||||
|
||||
<!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
|
||||
<!--that behaviour.-->
|
||||
<parameter name="sendStacktraceDetailsWithFaults">false</parameter>
|
||||
|
||||
<!--If there aren't any information available to find out the fault reason, we set the message of the expcetion-->
|
||||
<!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
|
||||
<!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
|
||||
<!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
|
||||
<parameter name="DrillDownToRootCauseForFaultReason">false</parameter>
|
||||
|
||||
<!--Set the flag to true if you want to enable transport level session mangment-->
|
||||
<parameter name="manageTransportSession">true</parameter>
|
||||
|
||||
<!-- Synapse Configuration file -->
|
||||
<parameter name="SynapseConfig.ConfigurationFile" locked="false">repository/deployment/server/synapse-configs</parameter>
|
||||
|
||||
<!-- Synapse Home parameter -->
|
||||
<parameter name="SynapseConfig.HomeDirectory" locked="false">.</parameter>
|
||||
|
||||
<!-- Resolve root used to resolve synapse references like schemas inside a WSDL -->
|
||||
<parameter name="SynapseConfig.ResolveRoot" locked="false">.</parameter>
|
||||
|
||||
<!-- Synapse Server name parameter -->
|
||||
<parameter name="SynapseConfig.ServerName" locked="false">WSO2 Carbon Server</parameter>
|
||||
|
||||
<!--By default, JAXWS services are created by reading annotations. WSDL and schema are generated-->
|
||||
<!--using a separate WSDL generator only when ?wsdl is called. Therefore, even if you engage-->
|
||||
<!--policies etc.. to AxisService, it doesn't appear in the WSDL. By setting the following property-->
|
||||
<!--to true, you can create the AxisService using the generated WSDL and remove the need for a-->
|
||||
<!--WSDL generator. When ?wsdl is called, WSDL is generated in the normal way.-->
|
||||
<parameter name="useGeneratedWSDLinJAXWS">${jaxwsparam}</parameter>
|
||||
|
||||
<!-- Deployer for the dataservice. -->
|
||||
<!--<deployer extension="dbs" directory="dataservices" class="org.wso2.dataservices.DBDeployer"/>-->
|
||||
|
||||
<!-- Axis1 deployer for Axis2-->
|
||||
<!--<deployer extension="wsdd" class="org.wso2.carbon.axis1services.Axis1Deployer" directory="axis1services"/>-->
|
||||
|
||||
<!-- POJO service deployer for Jar -->
|
||||
<!--<deployer extension="jar" class="org.apache.axis2.deployment.POJODeployer" directory="pojoservices"/>-->
|
||||
|
||||
<!-- POJO service deployer for Class -->
|
||||
<!--<deployer extension="class" class="org.apache.axis2.deployment.POJODeployer" directory="pojoservices"/>-->
|
||||
|
||||
<!-- JAXWS service deployer -->
|
||||
<!--<deployer extension=".jar" class="org.apache.axis2.jaxws.framework.JAXWSDeployer" directory="servicejars"/>-->
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Receivers -->
|
||||
<!-- ================================================= -->
|
||||
<!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for -->
|
||||
<!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
|
||||
<!--any operation -->
|
||||
<!--Note : You can ovride this for particular service by adding the same element with your requirement-->
|
||||
|
||||
<messageReceivers>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-only"
|
||||
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/robust-in-only"
|
||||
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
|
||||
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
|
||||
</messageReceivers>
|
||||
|
||||
<messageFormatters>
|
||||
<messageFormatter contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
|
||||
<messageFormatter contentType="multipart/form-data"
|
||||
class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
|
||||
<messageFormatter contentType="application/xml"
|
||||
class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
|
||||
<messageFormatter contentType="text/xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
<messageFormatter contentType="application/soap+xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
|
||||
<!--JSON Message Formatters-->
|
||||
<!--messageFormatter contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/-->
|
||||
<messageFormatter contentType="application/json"
|
||||
class="org.apache.axis2.json.gson.JsonFormatter" />
|
||||
<messageFormatter contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishMessageFormatter"/>
|
||||
<!--messageFormatter contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/-->
|
||||
<messageFormatter contentType="text/javascript"
|
||||
class="org.apache.axis2.json.gson.JsonFormatter" />
|
||||
|
||||
<!--messageFormatter contentType="application/x-www-form-urlencoded"
|
||||
class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
|
||||
<!--messageFormatter contentType="multipart/form-data"
|
||||
class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
|
||||
<!--messageFormatter contentType="application/xml"
|
||||
class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
|
||||
<!--messageFormatter contentType="text/html"
|
||||
class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
|
||||
<!--messageFormatter contentType="application/soap+xml"
|
||||
class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
|
||||
<!--messageFormatter contentType="x-application/hessian"
|
||||
class="org.apache.synapse.format.hessian.HessianMessageFormatter"/-->
|
||||
<!--<messageFormatter contentType="">
|
||||
class="org.apache.synapse.format.hessian.HessianMessageFormatter"/-->
|
||||
</messageFormatters>
|
||||
|
||||
<messageBuilders>
|
||||
<messageBuilder contentType="application/xml"
|
||||
class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
|
||||
<messageBuilder contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
|
||||
<messageBuilder contentType="multipart/form-data"
|
||||
class="org.apache.axis2.builder.MultipartFormDataBuilder"/>
|
||||
|
||||
<!--JSON Message Builders-->
|
||||
<!--messageBuilder contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/-->
|
||||
<messageBuilder contentType="application/json"
|
||||
class="org.apache.axis2.json.gson.JsonBuilder" />
|
||||
<messageBuilder contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishOMBuilder"/>
|
||||
<!--messageBuilder contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/-->
|
||||
<messageBuilder contentType="text/javascript"
|
||||
class="org.apache.axis2.json.gson.JsonBuilder" />
|
||||
|
||||
<!--messageBuilder contentType="application/xml"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="application/x-www-form-urlencoded"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="multipart/form-data"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="multipart/related"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="application/soap+xml"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="text/plain"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="text/xml"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageFormatter contentType="text/plain"
|
||||
class="org.apache.axis2.format.PlainTextBuilder"/-->
|
||||
<!--messageBuilder contentType="x-application/hessian"
|
||||
class="org.apache.synapse.format.hessian.HessianMessageBuilder"/-->
|
||||
</messageBuilders>
|
||||
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- In Transports -->
|
||||
<!-- ================================================= -->
|
||||
<transportReceiver name="http"
|
||||
class="org.wso2.carbon.core.transports.http.HttpTransportListener">
|
||||
<!--
|
||||
Uncomment the following if you are deploying this within an application server. You
|
||||
need to specify the HTTP port of the application server
|
||||
-->
|
||||
<parameter name="port">9763</parameter>
|
||||
|
||||
<!--
|
||||
Uncomment the following to enable any proxy like Apache2 mod_proxy or any load balancer. The port on the proxy server like Apache is 80
|
||||
in this case.
|
||||
-->
|
||||
<!--<parameter name="proxyPort">80</parameter>-->
|
||||
</transportReceiver>
|
||||
|
||||
<!--Please uncomment this in Multiple Instance Scenario if you want to use NIO Transport Recievers and
|
||||
Remove the current transport REceivers in axis2.xml -->
|
||||
<!--transportReceiver name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOListener">
|
||||
<parameter name="port" locked="false">8280</parameter>
|
||||
<parameter name="non-blocking" locked="false">true</parameter>
|
||||
</transportReceiver>
|
||||
|
||||
<transportReceiver name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLListener">
|
||||
<parameter name="port" locked="false">8243</parameter>
|
||||
<parameter name="non-blocking" locked="false">true</parameter>
|
||||
<parameter name="keystore" locked="false">
|
||||
<KeyStore>
|
||||
<Location>repository/resources/security/wso2carbon.jks</Location>
|
||||
<Type>JKS</Type>
|
||||
<Password>wso2carbon</Password>
|
||||
<KeyPassword>wso2carbon</KeyPassword>
|
||||
</KeyStore>
|
||||
</parameter>
|
||||
<parameter name="truststore" locked="false">
|
||||
<TrustStore>
|
||||
<Location>repository/resources/security/client-truststore.jks</Location>
|
||||
<Type>JKS</Type>
|
||||
<Password>wso2carbon</Password>
|
||||
</TrustStore>
|
||||
</parameter>
|
||||
</transportReceiver-->
|
||||
|
||||
|
||||
<transportReceiver name="https"
|
||||
class="org.wso2.carbon.core.transports.http.HttpsTransportListener">
|
||||
<!--
|
||||
Uncomment the following if you are deploying this within an application server. You
|
||||
need to specify the HTTPS port of the application server
|
||||
-->
|
||||
<parameter name="port">9443</parameter>
|
||||
|
||||
<!--
|
||||
Uncomment the following to enable any proxy like Apache2 mod_proxy or any load balancer. The port on a proxy server like Apache is 443
|
||||
in this case.
|
||||
-->
|
||||
<!--<parameter name="proxyPort">443</parameter>-->
|
||||
</transportReceiver>
|
||||
|
||||
<!--
|
||||
Uncomment the following segment to enable TCP transport.
|
||||
Note : Addressing module should be engaged for TCP transport to work
|
||||
-->
|
||||
<!--<transportReceiver name="tcp"
|
||||
class="org.apache.axis2.transport.tcp.TCPServer">
|
||||
<parameter name="port">6667</parameter>
|
||||
</transportReceiver>-->
|
||||
|
||||
<!--
|
||||
To Enable Mail Transport Listener, please uncomment the following.
|
||||
-->
|
||||
<!--<transportReceiver name="mailto" class="org.apache.axis2.transport.mail.MailTransportListener">
|
||||
|
||||
</transportReceiver>-->
|
||||
|
||||
|
||||
<!--
|
||||
Uncomment this and configure as appropriate for JMS transport support,
|
||||
after setting up your JMS environment (e.g. ActiveMQ)
|
||||
-->
|
||||
<!--<transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
|
||||
<parameter name="myTopicConnectionFactory">
|
||||
<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="myQueueConnectionFactory">
|
||||
<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="default">
|
||||
<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
|
||||
</parameter>
|
||||
</transportReceiver>-->
|
||||
|
||||
<!--Uncomment this and configure as appropriate for JMS transport support with Apache Qpid -->
|
||||
<!--transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
|
||||
<parameter name="myTopicConnectionFactory" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.apache.qpid.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">TopicConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">topic</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="myQueueConnectionFactory" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.apache.qpid.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="default" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.apache.qpid.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
|
||||
</parameter>
|
||||
</transportReceiver-->
|
||||
|
||||
<!--Uncomment this and configure as appropriate for JMS transport support with WSO2 MB 2.x.x -->
|
||||
<!--transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
|
||||
<parameter name="myTopicConnectionFactory" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">TopicConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">topic</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="myQueueConnectionFactory" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="default" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
|
||||
</parameter>
|
||||
</transportReceiver-->
|
||||
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Out Transports -->
|
||||
<!-- ================================================= -->
|
||||
|
||||
<!--transportSender name="tcp"
|
||||
class="org.apache.axis2.transport.tcp.TCPTransportSender"/-->
|
||||
<transportReceiver name="local"
|
||||
class="org.wso2.carbon.core.transports.local.CarbonLocalTransportReceiver"/>
|
||||
<transportSender name="local"
|
||||
class="org.wso2.carbon.core.transports.local.CarbonLocalTransportSender"/>
|
||||
<!--<transportSender name="jms"
|
||||
class="org.apache.axis2.transport.jms.JMSSender"/>-->
|
||||
<transportSender name="http"
|
||||
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
|
||||
<parameter name="PROTOCOL">HTTP/1.1</parameter>
|
||||
<parameter name="Transfer-Encoding">chunked</parameter>
|
||||
<!-- This parameter has been added to overcome problems encounted in SOAP action parameter -->
|
||||
<parameter name="OmitSOAP12Action">true</parameter>
|
||||
</transportSender>
|
||||
<transportSender name="https"
|
||||
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
|
||||
<parameter name="PROTOCOL">HTTP/1.1</parameter>
|
||||
<parameter name="Transfer-Encoding">chunked</parameter>
|
||||
<!-- This parameter has been added to overcome problems encounted in SOAP action parameter -->
|
||||
<parameter name="OmitSOAP12Action">true</parameter>
|
||||
</transportSender>
|
||||
|
||||
<!-- To enable mail transport sender, ncomment the following and change the parameters
|
||||
accordingly-->
|
||||
<!--<transportSender name="mailto"
|
||||
class="org.apache.axis2.transport.mail.MailTransportSender">
|
||||
<parameter name="mail.smtp.from">wso2demomail@gmail.com</parameter>
|
||||
<parameter name="mail.smtp.user">wso2demomail</parameter>
|
||||
<parameter name="mail.smtp.password">mailpassword</parameter>
|
||||
<parameter name="mail.smtp.host">smtp.gmail.com</parameter>
|
||||
|
||||
<parameter name="mail.smtp.port">587</parameter>
|
||||
<parameter name="mail.smtp.starttls.enable">true</parameter>
|
||||
<parameter name="mail.smtp.auth">true</parameter>
|
||||
</transportSender>-->
|
||||
|
||||
<!--Please uncomment this in Multiple Instance Scenario if you want to use NIO sender -->
|
||||
<!--
|
||||
<transportSender name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSender">
|
||||
<parameter name="non-blocking" locked="false">true</parameter>
|
||||
</transportSender>
|
||||
<transportSender name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLSender">
|
||||
<parameter name="non-blocking" locked="false">true</parameter>
|
||||
<parameter name="keystore" locked="false">
|
||||
<KeyStore>
|
||||
<Location>repository/resources/security/wso2carbon.jks</Location>
|
||||
<Type>JKS</Type>
|
||||
<Password>wso2carbon</Password>
|
||||
<KeyPassword>wso2carbon</KeyPassword>
|
||||
</KeyStore>
|
||||
</parameter>
|
||||
<parameter name="truststore" locked="false">
|
||||
<TrustStore>
|
||||
<Location>repository/resources/security/client-truststore.jks</Location>
|
||||
<Type>JKS</Type>
|
||||
<Password>wso2carbon</Password>
|
||||
</TrustStore>
|
||||
</parameter>
|
||||
</transportSender>
|
||||
-->
|
||||
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Phases -->
|
||||
<!-- ================================================= -->
|
||||
<phaseOrder type="InFlow">
|
||||
<!-- System pre defined phases -->
|
||||
<!--
|
||||
The MsgInObservation phase is used to observe messages as soon as they are
|
||||
received. In this phase, we could do some things such as SOAP message tracing & keeping
|
||||
track of the time at which a particular message was received
|
||||
|
||||
NOTE: This should be the very first phase in this flow
|
||||
-->
|
||||
<phase name="MsgInObservation"/>
|
||||
|
||||
<phase name="Validation"/>
|
||||
<phase name="Transport">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="RequestURIOperationDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher" />
|
||||
<handler name="JSONMessageHandler"
|
||||
class="org.apache.axis2.json.gson.JSONMessageHandler" />
|
||||
</phase>
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.wso2.carbon.core.multitenancy.MultitenantAddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Ghost">
|
||||
<handler name="GhostDispatcher"
|
||||
class="org.wso2.carbon.core.dispatchers.GhostDispatcher"/>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<!-- System pre defined phases -->
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- After Postdispatch phase module author or or service author can add any phase he want -->
|
||||
<phase name="OperationInPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFlow">
|
||||
<!-- Handlers related to unified-endpoint component are added to the UEPPhase -->
|
||||
<phase name="UEPPhase"/>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationOutPhase"/>
|
||||
<!--system predefined phase-->
|
||||
<!--these phase will run irrespective of the service-->
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
|
||||
<!--
|
||||
The MsgOutObservation phase is used to observe messages just before the
|
||||
responses are sent out. In this phase, we could do some things such as SOAP message
|
||||
tracing & keeping track of the time at which a particular response was sent.
|
||||
|
||||
NOTE: This should be the very last phase in this flow
|
||||
-->
|
||||
<phase name="MsgOutObservation"/>
|
||||
<!--Following phase is added to publish stats -->
|
||||
<phase name="StatReporting"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="InFaultFlow">
|
||||
<!-- System pre defined phases -->
|
||||
<!--
|
||||
The MsgInObservation phase is used to observe messages as soon as they are
|
||||
received. In this phase, we could do some things such as SOAP message tracing & keeping
|
||||
track of the time at which a particular message was received
|
||||
|
||||
NOTE: This should be the very first phase in this flow
|
||||
-->
|
||||
<phase name="MsgInObservation"/>
|
||||
|
||||
<phase name="Validation"/>
|
||||
<phase name="Transport">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
</phase>
|
||||
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Ghost">
|
||||
<handler name="GhostDispatcher"
|
||||
class="org.wso2.carbon.core.dispatchers.GhostDispatcher"/>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationInFaultPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFaultFlow">
|
||||
<!-- Handlers related to unified-endpoint component are added to the UEPPhase -->
|
||||
<phase name="UEPPhase"/>
|
||||
<phase name="RMPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationOutFaultPhase"/>
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
<phase name="Transport"/>
|
||||
<!--
|
||||
The MsgOutObservation phase is used to observe messages just before the
|
||||
responses are sent out. In this phase, we could do some things such as SOAP message
|
||||
tracing & keeping track of the time at which a particular response was sent.
|
||||
|
||||
NOTE: This should be the very last phase in this flow
|
||||
-->
|
||||
<phase name="MsgOutObservation"/>
|
||||
<!--Following phase is added to publish stats -->
|
||||
<phase name="StatReporting"/>
|
||||
</phaseOrder>
|
||||
|
||||
<clustering class="org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent"
|
||||
enable="false">
|
||||
|
||||
<!--
|
||||
This parameter indicates whether the cluster has to be automatically initalized
|
||||
when the AxisConfiguration is built. If set to "true" the initialization will not be
|
||||
done at that stage, and some other party will have to explictly initialize the cluster.
|
||||
-->
|
||||
<parameter name="AvoidInitiation">true</parameter>
|
||||
|
||||
<!--
|
||||
The membership scheme used in this setup. The only values supported at the moment are
|
||||
"multicast" and "wka"
|
||||
|
||||
1. multicast - membership is automatically discovered using multicasting
|
||||
2. wka - Well-Known Address based multicasting. Membership is discovered with the help
|
||||
of one or more nodes running at a Well-Known Address. New members joining a
|
||||
cluster will first connect to a well-known node, register with the well-known node
|
||||
and get the membership list from it. When new members join, one of the well-known
|
||||
nodes will notify the others in the group. When a member leaves the cluster or
|
||||
is deemed to have left the cluster, it will be detected by the Group Membership
|
||||
Service (GMS) using a TCP ping mechanism.
|
||||
-->
|
||||
<parameter name="membershipScheme">multicast</parameter>
|
||||
<!--<parameter name="licenseKey">xxx</parameter>-->
|
||||
<!--<parameter name="mgtCenterURL">http://localhost:8081/mancenter/</parameter>-->
|
||||
|
||||
<!--
|
||||
The clustering domain/group. Nodes in the same group will belong to the same multicast
|
||||
domain. There will not be interference between nodes in different groups.
|
||||
-->
|
||||
<parameter name="domain">wso2.carbon.domain</parameter>
|
||||
|
||||
<!-- The multicast address to be used -->
|
||||
<!--<parameter name="mcastAddress">228.0.0.4</parameter>-->
|
||||
|
||||
<!-- The multicast port to be used -->
|
||||
<parameter name="mcastPort">45564</parameter>
|
||||
|
||||
<parameter name="mcastTTL">100</parameter>
|
||||
|
||||
<parameter name="mcastTimeout">60</parameter>
|
||||
|
||||
<!--
|
||||
The IP address of the network interface to which the multicasting has to be bound to.
|
||||
Multicasting would be done using this interface.
|
||||
-->
|
||||
<!--
|
||||
<parameter name="mcastBindAddress">127.0.0.1</parameter>
|
||||
-->
|
||||
<!-- The host name or IP address of this member -->
|
||||
|
||||
<parameter name="localMemberHost">127.0.0.1</parameter>
|
||||
|
||||
<!--
|
||||
The bind adress of this member. The difference between localMemberHost & localMemberBindAddress
|
||||
is that localMemberHost is the one that is advertised by this member, while localMemberBindAddress
|
||||
is the address to which this member is bound to.
|
||||
-->
|
||||
<!--
|
||||
<parameter name="localMemberBindAddress">127.0.0.1</parameter>
|
||||
-->
|
||||
|
||||
<!--
|
||||
The TCP port used by this member. This is the port through which other nodes will
|
||||
contact this member
|
||||
-->
|
||||
<parameter name="localMemberPort">4000</parameter>
|
||||
|
||||
<!--
|
||||
The bind port of this member. The difference between localMemberPort & localMemberBindPort
|
||||
is that localMemberPort is the one that is advertised by this member, while localMemberBindPort
|
||||
is the port to which this member is bound to.
|
||||
-->
|
||||
<!--
|
||||
<parameter name="localMemberBindPort">4001</parameter>
|
||||
-->
|
||||
|
||||
<!--
|
||||
Properties specific to this member
|
||||
-->
|
||||
<parameter name="properties">
|
||||
<property name="backendServerURL" value="https://${hostName}:${httpsPort}/services/"/>
|
||||
<property name="mgtConsoleURL" value="https://${hostName}:${httpsPort}/"/>
|
||||
<property name="subDomain" value="worker"/>
|
||||
</parameter>
|
||||
|
||||
<!--
|
||||
Uncomment the following section to load custom Hazelcast data serializers.
|
||||
-->
|
||||
<!--
|
||||
<parameter name="hazelcastSerializers">
|
||||
<serializer typeClass="java.util.TreeSet">org.wso2.carbon.hazelcast.serializer.TreeSetSerializer
|
||||
</serializer>
|
||||
<serializer typeClass="java.util.Map">org.wso2.carbon.hazelcast.serializer.MapSerializer</serializer>
|
||||
</parameter>
|
||||
-->
|
||||
|
||||
<!--
|
||||
The list of static or well-known members. These entries will only be valid if the
|
||||
"membershipScheme" above is set to "wka"
|
||||
-->
|
||||
<members>
|
||||
<member>
|
||||
<hostName>127.0.0.1</hostName>
|
||||
<port>4000</port>
|
||||
</member>
|
||||
</members>
|
||||
|
||||
<!--
|
||||
Enable the groupManagement entry if you need to run this node as a cluster manager.
|
||||
Multiple application domains with different GroupManagementAgent implementations
|
||||
can be defined in this section.
|
||||
-->
|
||||
<groupManagement enable="false">
|
||||
<applicationDomain name="wso2.as.domain"
|
||||
description="AS group"
|
||||
agent="org.wso2.carbon.core.clustering.hazelcast.HazelcastGroupManagementAgent"
|
||||
subDomain="worker"
|
||||
port="2222"/>
|
||||
</groupManagement>
|
||||
</clustering>
|
||||
</axisconfig>
|
||||
@ -0,0 +1,300 @@
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<axisconfig name="AxisJava2.0">
|
||||
<!-- ================================================= -->
|
||||
<!-- Parameters -->
|
||||
<!-- ================================================= -->
|
||||
<parameter name="hotdeployment">true</parameter>
|
||||
<parameter name="hotupdate">false</parameter>
|
||||
<parameter name="enableMTOM">false</parameter>
|
||||
|
||||
<!-- commons-http-client defaultMaxConnPerHost -->
|
||||
<parameter name="defaultMaxConnPerHost">500</parameter>
|
||||
<!-- commons-http-client maxTotalConnections -->
|
||||
<parameter name="maxTotalConnections">15000</parameter>
|
||||
|
||||
<!--If turned on with use the Accept header of the request to determine the contentType of the
|
||||
response-->
|
||||
<parameter name="httpContentNegotiation">false</parameter>
|
||||
|
||||
<!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
|
||||
<!--that behaviour.-->
|
||||
<parameter name="sendStacktraceDetailsWithFaults">true</parameter>
|
||||
|
||||
<!--If there aren't any information available to find out the fault reason, we set the message of the exception-->
|
||||
<!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
|
||||
<!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
|
||||
<!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
|
||||
<parameter name="DrillDownToRootCauseForFaultReason">false</parameter>
|
||||
|
||||
<!--This is the user name and password of admin console-->
|
||||
<parameter name="userName">admin</parameter>
|
||||
<parameter name="password">axis2</parameter>
|
||||
|
||||
<!--To override repository/services you need to uncomment following parameter and value SHOULD be absolute file path.-->
|
||||
<!--ServicesDirectory only works on the following cases-->
|
||||
<!---File based configurator and in that case the value should be a file URL (http:// not allowed)-->
|
||||
<!---When creating URL Based configurator with URL “file://” -->
|
||||
<!--- War based configurator with expanded case , -->
|
||||
|
||||
<!--All the other scenarios it will be ignored.-->
|
||||
<!--<parameter name="ServicesDirectory">service</parameter>-->
|
||||
<!--To override repository/modules you need to uncomment following parameter and value SHOULD be absolute file path-->
|
||||
<!--<parameter name="ModulesDirectory">modules</parameter>-->
|
||||
|
||||
<!--Following params will set the proper context paths for invocations. All the endpoints will have a commons context-->
|
||||
<!--root which can configured using the following contextRoot parameter-->
|
||||
<!--<parameter name="contextRoot">axis2</parameter>-->
|
||||
|
||||
<!--Our HTTP endpoints can handle both REST and SOAP. Following parameters can be used to distinguish those endpoints-->
|
||||
<!--<parameter name="servicePath">services</parameter>-->
|
||||
<!--<parameter name="restPath">rest</parameter>-->
|
||||
|
||||
<!-- Following parameter will completely disable REST handling in Axis2-->
|
||||
<parameter name="disableREST" locked="false">false</parameter>
|
||||
|
||||
<!--POJO deployer , this will alow users to drop .class file and make that into a service-->
|
||||
<deployer extension=".class" directory="pojo" class="org.apache.axis2.deployment.POJODeployer"/>
|
||||
|
||||
<!-- Following parameter will set the host name for the epr-->
|
||||
<!--<parameter name="hostname" locked="true">myhost.com</parameter>-->
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Receivers -->
|
||||
<!-- ================================================= -->
|
||||
<!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for -->
|
||||
<!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
|
||||
<!--any operation -->
|
||||
<!--Note : You can override this for particular service by adding the same element with your requirement-->
|
||||
<messageReceivers>
|
||||
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
|
||||
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
|
||||
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-only"
|
||||
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-out"
|
||||
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
|
||||
</messageReceivers>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Formatter -->
|
||||
<!-- ================================================= -->
|
||||
<!--Following content type to message formatter mapping can be used to implement support for different message -->
|
||||
<!--format serialization in Axis2. These message formats are expected to be resolved based on the content type. -->
|
||||
<messageFormatters>
|
||||
<messageFormatter contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
|
||||
<messageFormatter contentType="multipart/form-data"
|
||||
class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
|
||||
<messageFormatter contentType="application/xml"
|
||||
class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
|
||||
<messageFormatter contentType="text/xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
<messageFormatter contentType="application/soap+xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
<!--JSON Message Formatters-->
|
||||
<messageFormatter contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/>
|
||||
<messageFormatter contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishMessageFormatter"/>
|
||||
<messageFormatter contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/>
|
||||
</messageFormatters>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Builders -->
|
||||
<!-- ================================================= -->
|
||||
<!--Following content type to builder mapping can be used to implement support for different message -->
|
||||
<!--formats in Axis2. These message formats are expected to be resolved based on the content type. -->
|
||||
<messageBuilders>
|
||||
<messageBuilder contentType="application/xml"
|
||||
class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
|
||||
<messageBuilder contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
|
||||
<!--JSON Message Builders-->
|
||||
<messageBuilder contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/>
|
||||
<messageBuilder contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishOMBuilder"/>
|
||||
<messageBuilder contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/>
|
||||
<!--Left commented because it adds the depandancy of servlet-api to other modules.
|
||||
Please uncomment to Receive messages in multipart/form-data format-->
|
||||
<!--<messageBuilder contentType="multipart/form-data"-->
|
||||
<!--class="org.apache.axis2.builder.MultipartFormDataBuilder"/>-->
|
||||
</messageBuilders>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Target Resolvers -->
|
||||
<!-- ================================================= -->
|
||||
<!-- Uncomment the following and specify the class name for your TargetResolver to add -->
|
||||
<!-- a TargetResolver. TargetResolvers are used to process the To EPR for example to -->
|
||||
<!-- choose a server in a cluster -->
|
||||
<!--<targetResolvers>-->
|
||||
<!--<targetResolver class="" />-->
|
||||
<!--</targetResolvers>-->
|
||||
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Transport Ins -->
|
||||
<!-- ================================================= -->
|
||||
<transportReceiver name="http"
|
||||
class="org.apache.axis2.transport.http.SimpleHTTPServer">
|
||||
<parameter name="port">6071</parameter>
|
||||
<!--If you want to give your own host address for EPR generation-->
|
||||
<!--uncomment following parameter , and set as you required.-->
|
||||
<!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
|
||||
</transportReceiver>
|
||||
|
||||
<!--Uncomment if you want to have TCP transport support-->
|
||||
<!--<transportReceiver name="tcp"
|
||||
class="org.apache.axis2.transport.tcp.TCPServer">
|
||||
<parameter name="port">6061</parameter>-->
|
||||
<!--If you want to give your own host address for EPR generation-->
|
||||
<!--uncomment following parameter , and set as you required.-->
|
||||
<!--<parameter name="hostname">tcp://myApp.com/ws</parameter>-->
|
||||
<!--</transportReceiver>-->
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Transport Outs -->
|
||||
<!-- ================================================= -->
|
||||
|
||||
<!--<transportSender name="jms"-->
|
||||
<!--class="org.apache.axis2.transport.jms.JMSSender"/>-->
|
||||
<!--transportSender name="tcp"
|
||||
class="org.apache.axis2.transport.tcp.TCPTransportSender"/-->
|
||||
<transportSender name="local"
|
||||
class="org.apache.axis2.transport.local.LocalTransportSender"/>
|
||||
<transportSender name="http"
|
||||
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
|
||||
<parameter name="PROTOCOL">HTTP/1.1</parameter>
|
||||
<parameter name="Transfer-Encoding">chunked</parameter>
|
||||
<parameter name="SO_TIMEOUT">60000</parameter>
|
||||
<parameter name="CONNECTION_TIMEOUT">60000</parameter>
|
||||
</transportSender>
|
||||
<transportSender name="https"
|
||||
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
|
||||
<parameter name="PROTOCOL">HTTP/1.1</parameter>
|
||||
<parameter name="Transfer-Encoding">chunked</parameter>
|
||||
<parameter name="SO_TIMEOUT">60000</parameter>
|
||||
<parameter name="CONNECTION_TIMEOUT">60000</parameter>
|
||||
</transportSender>
|
||||
<!--<transportSender name="java"-->
|
||||
<!--class="org.apache.axis2.transport.java.JavaTransportSender"/>-->
|
||||
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- SOAP Role Configuration -->
|
||||
<!-- ================================================= -->
|
||||
<!-- Use the following pattern to configure this axis2
|
||||
instance to act in particular roles. Note that in
|
||||
the absence of any configuration, Axis2 will act
|
||||
only in the ultimate receiver role -->
|
||||
<!--
|
||||
<SOAPRoleConfiguration isUltimateReceiver="true">
|
||||
<role>http://my/custom/role</role>
|
||||
</SOAPRoleConfiguration>
|
||||
-->
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Phases -->
|
||||
<!-- ================================================= -->
|
||||
<phaseOrder type="InFlow">
|
||||
<!-- System pre-defined phases -->
|
||||
<phase name="Transport">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="RequestURIOperationDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<phase name="RMPhase"/>
|
||||
<!-- System pre defined phases -->
|
||||
<!-- After Postdispatch phase module author or or service author can add any phase he want -->
|
||||
<phase name="OperationInPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFlow">
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationOutPhase"/>
|
||||
<!--system predefined phase-->
|
||||
<!--these phase will run irrespective of the service-->
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="InFaultFlow">
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="RequestURIOperationDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<phase name="RMPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationInFaultPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFaultFlow">
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationOutFaultPhase"/>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
<phase name="Transport"/>
|
||||
</phaseOrder>
|
||||
</axisconfig>
|
||||
@ -0,0 +1,285 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!--
|
||||
~ Copyright WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<axisconfig name="AxisJava2.0">
|
||||
<!-- ================================================= -->
|
||||
<!-- Parameters -->
|
||||
<!-- ================================================= -->
|
||||
<parameter name="hotdeployment">true</parameter>
|
||||
<parameter name="hotupdate">true</parameter>
|
||||
<parameter name="enableMTOM">optional</parameter>
|
||||
|
||||
<!--If turned on with use the Accept header of the request to determine the contentType of the
|
||||
response-->
|
||||
<parameter name="httpContentNegotiation">true</parameter>
|
||||
|
||||
<!--If true, then artifacts(services, modules etc) are not loaded when a tenant is loaded.
|
||||
So service deployment, module deployment etc. will not happen. So the tenant loading time will
|
||||
be fast.-->
|
||||
<parameter name="DisableArtifactLoading">false</parameter>
|
||||
|
||||
<!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
|
||||
<!--that behaviour.-->
|
||||
<parameter name="sendStacktraceDetailsWithFaults">true</parameter>
|
||||
|
||||
<!--If there aren't any information available to find out the fault reason, we set the message of the exception-->
|
||||
<!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
|
||||
<!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
|
||||
<!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
|
||||
<parameter name="DrillDownToRootCauseForFaultReason">false</parameter>
|
||||
|
||||
<!-- Following parameter will completely disable REST handling in Axis2-->
|
||||
<parameter name="disableREST" locked="false">false</parameter>
|
||||
|
||||
<!--the directory in which .aar services are deployed inside axis2 repository-->
|
||||
<parameter name="ServicesDirectory">axis2services</parameter>
|
||||
|
||||
<!--POJO deployer , this will alow users to drop .class file and make that into a service-->
|
||||
<deployer extension=".class" directory="pojo" class="org.apache.axis2.deployment.POJODeployer"/>
|
||||
<deployer extension=".jar" directory="transports"
|
||||
class="org.apache.axis2.deployment.TransportDeployer"/>
|
||||
|
||||
<!-- Following parameter will set the host name for the epr-->
|
||||
<!--<parameter name="hostname" locked="true">myhost.com</parameter>-->
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Receivers -->
|
||||
<!-- ================================================= -->
|
||||
<!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for -->
|
||||
<!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
|
||||
<!--any operation -->
|
||||
<!--Note : You can override this for particular service by adding the same element with your requirement-->
|
||||
<messageReceivers>
|
||||
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
|
||||
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
|
||||
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-only"
|
||||
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-out"
|
||||
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-only"
|
||||
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/robust-in-only"
|
||||
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
|
||||
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
|
||||
</messageReceivers>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Formatter -->
|
||||
<!-- ================================================= -->
|
||||
<!--Following content type to message formatter mapping can be used to implement support for different message -->
|
||||
<!--format serialization in Axis2. These message formats are expected to be resolved based on the content type. -->
|
||||
<messageFormatters>
|
||||
<messageFormatter contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
|
||||
<messageFormatter contentType="multipart/form-data"
|
||||
class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
|
||||
<messageFormatter contentType="application/xml"
|
||||
class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
|
||||
<messageFormatter contentType="text/xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
<messageFormatter contentType="application/soap+xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
<!--JSON Message Formatters-->
|
||||
<!--messageFormatter contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/-->
|
||||
<messageFormatter contentType="application/json"
|
||||
class="org.apache.axis2.json.gson.JsonFormatter" />
|
||||
<messageFormatter contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishMessageFormatter"/>
|
||||
<!--messageFormatter contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/-->
|
||||
<messageFormatter contentType="text/javascript"
|
||||
class="org.apache.axis2.json.gson.JsonFormatter" />
|
||||
</messageFormatters>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Builders -->
|
||||
<!-- ================================================= -->
|
||||
<!--Following content type to builder mapping can be used to implement support for different message -->
|
||||
<!--formats in Axis2. These message formats are expected to be resolved based on the content type. -->
|
||||
<messageBuilders>
|
||||
<messageBuilder contentType="application/xml"
|
||||
class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
|
||||
<messageBuilder contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
|
||||
<!--JSON Message Builders-->
|
||||
<!--messageBuilder contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/-->
|
||||
<messageBuilder contentType="application/json"
|
||||
class="org.apache.axis2.json.gson.JsonBuilder" />
|
||||
<messageBuilder contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishOMBuilder"/>
|
||||
<!--messageBuilder contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/-->
|
||||
<messageBuilder contentType="text/javascript"
|
||||
class="org.apache.axis2.json.gson.JsonBuilder" />
|
||||
<!--Left commented because it adds the depandancy of servlet-api to other modules.
|
||||
Please uncomment to Receive messages in multipart/form-data format-->
|
||||
<!--<messageBuilder contentType="multipart/form-data"-->
|
||||
<!--class="org.apache.axis2.builder.MultipartFormDataBuilder"/>-->
|
||||
</messageBuilders>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Phases -->
|
||||
<!-- ================================================= -->
|
||||
<phaseOrder type="InFlow">
|
||||
<!-- System pre-defined phases -->
|
||||
<!--
|
||||
The MsgInObservation phase is used to observe messages as soon as they are
|
||||
received. In this phase, we could do some things such as SOAP message tracing & keeping
|
||||
track of the time at which a particular message was received
|
||||
|
||||
NOTE: This should be the very first phase in this flow
|
||||
-->
|
||||
<phase name="MsgInObservation"/>
|
||||
<phase name="Transport">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="RequestURIOperationDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher" />
|
||||
<handler name="JSONMessageHandler"
|
||||
class="org.apache.axis2.json.gson.JSONMessageHandler" />
|
||||
</phase>
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Ghost">
|
||||
<handler name="GhostDispatcher" class="org.wso2.carbon.core.dispatchers.GhostDispatcher"/>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<!-- System pre defined phases -->
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- After Postdispatch phase module author or or service author can add any phase he want -->
|
||||
<phase name="OperationInPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFlow">
|
||||
<phase name="UEPPhase"/>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationOutPhase"/>
|
||||
<!--system predefined phase-->
|
||||
<!--these phase will run irrespective of the service-->
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
<!--
|
||||
The MsgOutObservation phase is used to observe messages just before the
|
||||
responses are sent out. In this phase, we could do some things such as SOAP message
|
||||
tracing & keeping track of the time at which a particular response was sent.
|
||||
|
||||
NOTE: This should be the very last phase in this flow
|
||||
-->
|
||||
<phase name="MsgOutObservation"/>
|
||||
<!--Following phase is added to publish stats-->
|
||||
<phase name="StatReporting"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="InFaultFlow">
|
||||
<!--
|
||||
The MsgInObservation phase is used to observe messages as soon as they are
|
||||
received. In this phase, we could do some things such as SOAP message tracing & keeping
|
||||
track of the time at which a particular message was received
|
||||
|
||||
NOTE: This should be the very first phase in this flow
|
||||
-->
|
||||
<phase name="MsgInObservation"/>
|
||||
<phase name="Transport">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Ghost">
|
||||
<handler name="GhostDispatcher" class="org.wso2.carbon.core.dispatchers.GhostDispatcher"/>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="RequestURIOperationDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationInFaultPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFaultFlow">
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="UEPPhase"/>
|
||||
<phase name="OperationOutFaultPhase"/>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
<phase name="Transport"/>
|
||||
<!--
|
||||
The MsgOutObservation phase is used to observe messages just before the
|
||||
responses are sent out. In this phase, we could do some things such as SOAP message
|
||||
tracing & keeping track of the time at which a particular response was sent.
|
||||
|
||||
NOTE: This should be the very last phase in this flow
|
||||
-->
|
||||
<phase name="MsgOutObservation"/>
|
||||
<!--Following phase is added to publish stats-->
|
||||
<phase name="StatReporting"/>
|
||||
</phaseOrder>
|
||||
</axisconfig>
|
||||
@ -0,0 +1,656 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<!--
|
||||
This is the main server configuration file
|
||||
|
||||
${carbon.home} represents the carbon.home system property.
|
||||
Other system properties can be specified in a similar manner.
|
||||
-->
|
||||
<Server xmlns="http://wso2.org/projects/carbon/carbon.xml">
|
||||
|
||||
<!--
|
||||
Product Name
|
||||
-->
|
||||
<Name>${product.name}</Name>
|
||||
|
||||
<!--
|
||||
machine readable unique key to identify each product
|
||||
-->
|
||||
<ServerKey>${product.key}</ServerKey>
|
||||
|
||||
<!--
|
||||
Product Version
|
||||
-->
|
||||
<Version>${product.version}</Version>
|
||||
|
||||
<!--
|
||||
Host name or IP address of the machine hosting this server
|
||||
e.g. www.wso2.org, 192.168.1.10
|
||||
This is will become part of the End Point Reference of the
|
||||
services deployed on this server instance.
|
||||
-->
|
||||
<!--HostName>www.wso2.org</HostName-->
|
||||
|
||||
<!--
|
||||
Host name to be used for the Carbon management console
|
||||
-->
|
||||
<!--MgtHostName>mgt.wso2.org</MgtHostName-->
|
||||
|
||||
<!--
|
||||
The URL of the back end server. This is where the admin services are hosted and
|
||||
will be used by the clients in the front end server.
|
||||
This is required only for the Front-end server. This is used when seperating BE server from FE server
|
||||
-->
|
||||
<ServerURL>local:/${carbon.context}/services/</ServerURL>
|
||||
<!--
|
||||
<ServerURL>https://${carbon.local.ip}:${carbon.management.port}${carbon.context}/services/</ServerURL>
|
||||
-->
|
||||
<!--
|
||||
The URL of the index page. This is where the user will be redirected after signing in to the
|
||||
carbon server.
|
||||
-->
|
||||
<!-- IndexPageURL>/carbon/admin/index.jsp</IndexPageURL-->
|
||||
|
||||
<!--
|
||||
For cApp deployment, we have to identify the roles that can be acted by the current server.
|
||||
The following property is used for that purpose. Any number of roles can be defined here.
|
||||
Regular expressions can be used in the role.
|
||||
Ex : <Role>.*</Role> means this server can act any role
|
||||
-->
|
||||
<ServerRoles>
|
||||
<Role>${default.server.role}</Role>
|
||||
</ServerRoles>
|
||||
|
||||
<!-- uncommnet this line to subscribe to a bam instance automatically -->
|
||||
<!--<BamServerURL>https://bamhost:bamport/services/</BamServerURL>-->
|
||||
|
||||
<!--
|
||||
The fully qualified name of the server
|
||||
-->
|
||||
<Package>org.wso2.carbon</Package>
|
||||
|
||||
<!--
|
||||
Webapp context root of WSO2 Carbon management console.
|
||||
-->
|
||||
<WebContextRoot>/</WebContextRoot>
|
||||
|
||||
<!--
|
||||
Proxy context path is a useful parameter to add a proxy path when a Carbon server is fronted by reverse proxy. In addtion
|
||||
to the proxy host and proxy port this parameter allows you add a path component to external URLs. e.g.
|
||||
URL of the Carbon server -> https://10.100.1.1:9443/carbon
|
||||
URL of the reverse proxy -> https://prod.abc.com/appserver/carbon
|
||||
|
||||
appserver - proxy context path. This specially required whenever you are generating URLs to displace in
|
||||
Carbon UI components.
|
||||
-->
|
||||
<!--
|
||||
<MgtProxyContextPath></MgtProxyContextPath>
|
||||
<ProxyContextPath></ProxyContextPath>
|
||||
-->
|
||||
|
||||
<!-- In-order to get the registry http Port from the back-end when the default http transport is not the same-->
|
||||
<!--RegistryHttpPort>9763</RegistryHttpPort-->
|
||||
|
||||
<!--
|
||||
Number of items to be displayed on a management console page. This is used at the
|
||||
backend server for pagination of various items.
|
||||
-->
|
||||
<ItemsPerPage>15</ItemsPerPage>
|
||||
|
||||
<!-- The endpoint URL of the cloud instance management Web service -->
|
||||
<!--<InstanceMgtWSEndpoint>https://ec2.amazonaws.com/</InstanceMgtWSEndpoint>-->
|
||||
|
||||
<!--
|
||||
Ports used by this server
|
||||
-->
|
||||
<Ports>
|
||||
|
||||
<!-- Ports offset. This entry will set the value of the ports defined below to
|
||||
the define value + Offset.
|
||||
e.g. Offset=2 and HTTPS port=9443 will set the effective HTTPS port to 9445
|
||||
-->
|
||||
<Offset>0</Offset>
|
||||
|
||||
<!-- The JMX Ports -->
|
||||
<JMX>
|
||||
<!--The port RMI registry is exposed-->
|
||||
<RMIRegistryPort>9999</RMIRegistryPort>
|
||||
<!--The port RMI server should be exposed-->
|
||||
<RMIServerPort>11111</RMIServerPort>
|
||||
</JMX>
|
||||
|
||||
<!-- Embedded LDAP server specific ports -->
|
||||
<EmbeddedLDAP>
|
||||
<!-- Port which embedded LDAP server runs -->
|
||||
<LDAPServerPort>10389</LDAPServerPort>
|
||||
<!-- Port which KDC (Kerberos Key Distribution Center) server runs -->
|
||||
<KDCServerPort>8000</KDCServerPort>
|
||||
</EmbeddedLDAP>
|
||||
|
||||
<!--
|
||||
Override datasources JNDIproviderPort defined in bps.xml and datasources.properties files
|
||||
-->
|
||||
<!--<JNDIProviderPort>2199</JNDIProviderPort>-->
|
||||
<!--Override receive port of thrift based entitlement service.-->
|
||||
<ThriftEntitlementReceivePort>10500</ThriftEntitlementReceivePort>
|
||||
|
||||
</Ports>
|
||||
|
||||
<!--
|
||||
JNDI Configuration
|
||||
-->
|
||||
<JNDI>
|
||||
<!--
|
||||
The fully qualified name of the default initial context factory
|
||||
-->
|
||||
<DefaultInitialContextFactory>org.wso2.carbon.tomcat.jndi.CarbonJavaURLContextFactory</DefaultInitialContextFactory>
|
||||
<!--
|
||||
The restrictions that are done to various JNDI Contexts in a Multi-tenant environment
|
||||
-->
|
||||
<Restrictions>
|
||||
<!--
|
||||
Contexts that will be available only to the super-tenant
|
||||
-->
|
||||
<!-- <SuperTenantOnly>
|
||||
<UrlContexts>
|
||||
<UrlContext>
|
||||
<Scheme>foo</Scheme>
|
||||
</UrlContext>
|
||||
<UrlContext>
|
||||
<Scheme>bar</Scheme>
|
||||
</UrlContext>
|
||||
</UrlContexts>
|
||||
</SuperTenantOnly> -->
|
||||
<!--
|
||||
Contexts that are common to all tenants
|
||||
-->
|
||||
<AllTenants>
|
||||
<UrlContexts>
|
||||
<UrlContext>
|
||||
<Scheme>java</Scheme>
|
||||
</UrlContext>
|
||||
<!-- <UrlContext>
|
||||
<Scheme>foo</Scheme>
|
||||
</UrlContext> -->
|
||||
</UrlContexts>
|
||||
</AllTenants>
|
||||
<!--
|
||||
All other contexts not mentioned above will be available on a per-tenant basis
|
||||
(i.e. will not be shared among tenants)
|
||||
-->
|
||||
</Restrictions>
|
||||
</JNDI>
|
||||
|
||||
<!--
|
||||
Property to determine if the server is running an a cloud deployment environment.
|
||||
This property should only be used to determine deployment specific details that are
|
||||
applicable only in a cloud deployment, i.e when the server deployed *-as-a-service.
|
||||
-->
|
||||
<IsCloudDeployment>false</IsCloudDeployment>
|
||||
|
||||
<!--
|
||||
Property to determine whether usage data should be collected for metering purposes
|
||||
-->
|
||||
<EnableMetering>false</EnableMetering>
|
||||
|
||||
<!-- The Max time a thread should take for execution in seconds -->
|
||||
<MaxThreadExecutionTime>600</MaxThreadExecutionTime>
|
||||
|
||||
<!--
|
||||
A flag to enable or disable Ghost Deployer. By default this is set to false. That is
|
||||
because the Ghost Deployer works only with the HTTP/S transports. If you are using
|
||||
other transports, don't enable Ghost Deployer.
|
||||
-->
|
||||
<GhostDeployment>
|
||||
<Enabled>false</Enabled>
|
||||
</GhostDeployment>
|
||||
|
||||
|
||||
<!--
|
||||
Eager loading or lazy loading is a design pattern commonly used in computer programming which
|
||||
will initialize an object upon creation or load on-demand. In carbon, lazy loading is used to
|
||||
load tenant when a request is received only. Similarly Eager loading is used to enable load
|
||||
existing tenants after carbon server starts up. Using this feature, you will be able to include
|
||||
or exclude tenants which are to be loaded when server startup.
|
||||
|
||||
We can enable only one LoadingPolicy at a given time.
|
||||
|
||||
1. Tenant Lazy Loading
|
||||
This is the default behaviour and enabled by default. With this policy, tenants are not loaded at
|
||||
server startup, but loaded based on-demand (i.e when a request is received for a tenant).
|
||||
The default tenant idle time is 30 minutes.
|
||||
|
||||
2. Tenant Eager Loading
|
||||
This is by default not enabled. It can be be enabled by un-commenting the <EagerLoading> section.
|
||||
The eager loading configurations supported are as below. These configurations can be given as the
|
||||
value for <Include> element with eager loading.
|
||||
(i)Load all tenants when server startup - *
|
||||
(ii)Load all tenants except foo.com & bar.com - *,!foo.com,!bar.com
|
||||
(iii)Load only foo.com & bar.com to be included - foo.com,bar.com
|
||||
-->
|
||||
<Tenant>
|
||||
<LoadingPolicy>
|
||||
<LazyLoading>
|
||||
<IdleTime>30</IdleTime>
|
||||
</LazyLoading>
|
||||
<!-- <EagerLoading>
|
||||
<Include>*,!foo.com,!bar.com</Include>
|
||||
</EagerLoading>-->
|
||||
</LoadingPolicy>
|
||||
</Tenant>
|
||||
|
||||
<!--
|
||||
Caching related configurations
|
||||
-->
|
||||
<Cache>
|
||||
<!-- Default cache timeout in minutes -->
|
||||
<DefaultCacheTimeout>15</DefaultCacheTimeout>
|
||||
</Cache>
|
||||
|
||||
<!--
|
||||
Axis2 related configurations
|
||||
-->
|
||||
<Axis2Config>
|
||||
<!--
|
||||
Location of the Axis2 Services & Modules repository
|
||||
|
||||
This can be a directory in the local file system, or a URL.
|
||||
|
||||
e.g.
|
||||
1. /home/wso2wsas/repository/ - An absolute path
|
||||
2. repository - In this case, the path is relative to CARBON_HOME
|
||||
3. file:///home/wso2wsas/repository/
|
||||
4. http://wso2wsas/repository/
|
||||
-->
|
||||
<RepositoryLocation>${carbon.home}/repository/deployment/server/</RepositoryLocation>
|
||||
|
||||
<!--
|
||||
Deployment update interval in seconds. This is the interval between repository listener
|
||||
executions.
|
||||
-->
|
||||
<DeploymentUpdateInterval>15</DeploymentUpdateInterval>
|
||||
|
||||
<!--
|
||||
Location of the main Axis2 configuration descriptor file, a.k.a. axis2.xml file
|
||||
|
||||
This can be a file on the local file system, or a URL
|
||||
|
||||
e.g.
|
||||
1. /home/repository/axis2.xml - An absolute path
|
||||
2. conf/axis2.xml - In this case, the path is relative to CARBON_HOME
|
||||
3. file:///home/carbon/repository/axis2.xml
|
||||
4. http://repository/conf/axis2.xml
|
||||
-->
|
||||
<ConfigurationFile>${carbon.home}/repository/conf/axis2/axis2.xml</ConfigurationFile>
|
||||
|
||||
<!--
|
||||
ServiceGroupContextIdleTime, which will be set in ConfigurationContex
|
||||
for multiple clients which are going to access the same ServiceGroupContext
|
||||
Default Value is 30 Sec.
|
||||
-->
|
||||
<ServiceGroupContextIdleTime>30000</ServiceGroupContextIdleTime>
|
||||
|
||||
<!--
|
||||
This repository location is used to crete the client side configuration
|
||||
context used by the server when calling admin services.
|
||||
-->
|
||||
<ClientRepositoryLocation>${carbon.home}/repository/deployment/client/</ClientRepositoryLocation>
|
||||
<!-- This axis2 xml is used in createing the configuration context by the FE server
|
||||
calling to BE server -->
|
||||
<clientAxis2XmlLocation>${carbon.home}/repository/conf/axis2/axis2_client.xml</clientAxis2XmlLocation>
|
||||
<!-- If this parameter is set, the ?wsdl on an admin service will not give the admin service wsdl. -->
|
||||
<HideAdminServiceWSDLs>true</HideAdminServiceWSDLs>
|
||||
|
||||
<!--WARNING-Use With Care! Uncommenting bellow parameter would expose all AdminServices in HTTP transport.
|
||||
With HTTP transport your credentials and data routed in public channels are vulnerable for sniffing attacks.
|
||||
Use bellow parameter ONLY if your communication channels are confirmed to be secured by other means -->
|
||||
<!--HttpAdminServices>*</HttpAdminServices-->
|
||||
|
||||
</Axis2Config>
|
||||
|
||||
<!--
|
||||
The default user roles which will be created when the server
|
||||
is started up for the first time.
|
||||
-->
|
||||
<ServiceUserRoles>
|
||||
<Role>
|
||||
<Name>admin</Name>
|
||||
<Description>Default Administrator Role</Description>
|
||||
</Role>
|
||||
<Role>
|
||||
<Name>user</Name>
|
||||
<Description>Default User Role</Description>
|
||||
</Role>
|
||||
</ServiceUserRoles>
|
||||
|
||||
<!--
|
||||
Enable following config to allow Emails as usernames.
|
||||
-->
|
||||
<!--EnableEmailUserName>true</EnableEmailUserName-->
|
||||
|
||||
<!--
|
||||
Security configurations
|
||||
-->
|
||||
<Security>
|
||||
<!--
|
||||
KeyStore which will be used for encrypting/decrypting passwords
|
||||
and other sensitive information.
|
||||
-->
|
||||
<KeyStore>
|
||||
<!-- Keystore file location-->
|
||||
<Location>${carbon.home}/repository/resources/security/wso2carbon.jks</Location>
|
||||
<!-- Keystore type (JKS/PKCS12 etc.)-->
|
||||
<Type>JKS</Type>
|
||||
<!-- Keystore password-->
|
||||
<Password>wso2carbon</Password>
|
||||
<!-- Private Key alias-->
|
||||
<KeyAlias>wso2carbon</KeyAlias>
|
||||
<!-- Private Key password-->
|
||||
<KeyPassword>wso2carbon</KeyPassword>
|
||||
</KeyStore>
|
||||
|
||||
<!--
|
||||
System wide trust-store which is used to maintain the certificates of all
|
||||
the trusted parties.
|
||||
-->
|
||||
<TrustStore>
|
||||
<!-- trust-store file location -->
|
||||
<Location>${carbon.home}/repository/resources/security/client-truststore.jks</Location>
|
||||
<!-- trust-store type (JKS/PKCS12 etc.) -->
|
||||
<Type>JKS</Type>
|
||||
<!-- trust-store password -->
|
||||
<Password>wso2carbon</Password>
|
||||
</TrustStore>
|
||||
|
||||
<!--
|
||||
The Authenticator configuration to be used at the JVM level. We extend the
|
||||
java.net.Authenticator to make it possible to authenticate to given servers and
|
||||
proxies.
|
||||
-->
|
||||
<NetworkAuthenticatorConfig>
|
||||
<!--
|
||||
Below is a sample configuration for a single authenticator. Please note that
|
||||
all child elements are mandatory. Not having some child elements would lead to
|
||||
exceptions at runtime.
|
||||
-->
|
||||
<!-- <Credential> -->
|
||||
<!--
|
||||
the pattern that would match a subset of URLs for which this authenticator
|
||||
would be used
|
||||
-->
|
||||
<!-- <Pattern>regularExpression</Pattern> -->
|
||||
<!--
|
||||
the type of this authenticator. Allowed values are:
|
||||
1. server
|
||||
2. proxy
|
||||
-->
|
||||
<!-- <Type>proxy</Type> -->
|
||||
<!-- the username used to log in to server/proxy -->
|
||||
<!-- <Username>username</Username> -->
|
||||
<!-- the password used to log in to server/proxy -->
|
||||
<!-- <Password>password</Password> -->
|
||||
<!-- </Credential> -->
|
||||
</NetworkAuthenticatorConfig>
|
||||
|
||||
<!--
|
||||
The Tomcat realm to be used for hosted Web applications. Allowed values are;
|
||||
1. UserManager
|
||||
2. Memory
|
||||
|
||||
If this is set to 'UserManager', the realm will pick users & roles from the system's
|
||||
WSO2 User Manager. If it is set to 'memory', the realm will pick users & roles from
|
||||
CARBON_HOME/repository/conf/tomcat/tomcat-users.xml
|
||||
-->
|
||||
<TomcatRealm>UserManager</TomcatRealm>
|
||||
|
||||
<!--Option to disable storing of tokens issued by STS-->
|
||||
<DisableTokenStore>false</DisableTokenStore>
|
||||
|
||||
<!--
|
||||
Security token store class name. If this is not set, default class will be
|
||||
org.wso2.carbon.security.util.SecurityTokenStore
|
||||
-->
|
||||
<!--TokenStoreClassName>org.wso2.carbon.identity.sts.store.DBTokenStore</TokenStoreClassName-->
|
||||
</Security>
|
||||
|
||||
<!--
|
||||
The temporary work directory
|
||||
-->
|
||||
<WorkDirectory>${carbon.home}/tmp/work</WorkDirectory>
|
||||
|
||||
<!--
|
||||
House-keeping configuration
|
||||
-->
|
||||
<HouseKeeping>
|
||||
|
||||
<!--
|
||||
true - Start House-keeping thread on server startup
|
||||
false - Do not start House-keeping thread on server startup.
|
||||
The user will run it manually as and when he wishes.
|
||||
-->
|
||||
<AutoStart>true</AutoStart>
|
||||
|
||||
<!--
|
||||
The interval in *minutes*, between house-keeping runs
|
||||
-->
|
||||
<Interval>10</Interval>
|
||||
|
||||
<!--
|
||||
The maximum time in *minutes*, temp files are allowed to live
|
||||
in the system. Files/directories which were modified more than
|
||||
"MaxTempFileLifetime" minutes ago will be removed by the
|
||||
house-keeping task
|
||||
-->
|
||||
<MaxTempFileLifetime>30</MaxTempFileLifetime>
|
||||
</HouseKeeping>
|
||||
|
||||
<!--
|
||||
Configuration for handling different types of file upload & other file uploading related
|
||||
config parameters.
|
||||
To map all actions to a particular FileUploadExecutor, use
|
||||
<Action>*</Action>
|
||||
-->
|
||||
<FileUploadConfig>
|
||||
<!--
|
||||
The total file upload size limit in MB
|
||||
-->
|
||||
<TotalFileSizeLimit>100</TotalFileSizeLimit>
|
||||
|
||||
<Mapping>
|
||||
<Actions>
|
||||
<Action>keystore</Action>
|
||||
<Action>certificate</Action>
|
||||
<Action>*</Action>
|
||||
</Actions>
|
||||
<Class>org.wso2.carbon.ui.transports.fileupload.AnyFileUploadExecutor</Class>
|
||||
</Mapping>
|
||||
|
||||
<Mapping>
|
||||
<Actions>
|
||||
<Action>jarZip</Action>
|
||||
</Actions>
|
||||
<Class>org.wso2.carbon.ui.transports.fileupload.JarZipUploadExecutor</Class>
|
||||
</Mapping>
|
||||
<Mapping>
|
||||
<Actions>
|
||||
<Action>dbs</Action>
|
||||
</Actions>
|
||||
<Class>org.wso2.carbon.ui.transports.fileupload.DBSFileUploadExecutor</Class>
|
||||
</Mapping>
|
||||
<Mapping>
|
||||
<Actions>
|
||||
<Action>tools</Action>
|
||||
</Actions>
|
||||
<Class>org.wso2.carbon.ui.transports.fileupload.ToolsFileUploadExecutor</Class>
|
||||
</Mapping>
|
||||
<Mapping>
|
||||
<Actions>
|
||||
<Action>toolsAny</Action>
|
||||
</Actions>
|
||||
<Class>org.wso2.carbon.ui.transports.fileupload.ToolsAnyFileUploadExecutor</Class>
|
||||
</Mapping>
|
||||
</FileUploadConfig>
|
||||
|
||||
<!--
|
||||
Processors which process special HTTP GET requests such as ?wsdl, ?policy etc.
|
||||
|
||||
In order to plug in a processor to handle a special request, simply add an entry to this
|
||||
section.
|
||||
|
||||
The value of the Item element is the first parameter in the query string(e.g. ?wsdl)
|
||||
which needs special processing
|
||||
|
||||
The value of the Class element is a class which implements
|
||||
org.wso2.carbon.transport.HttpGetRequestProcessor
|
||||
-->
|
||||
<HttpGetRequestProcessors>
|
||||
<Processor>
|
||||
<Item>info</Item>
|
||||
<Class>org.wso2.carbon.core.transports.util.InfoProcessor</Class>
|
||||
</Processor>
|
||||
<Processor>
|
||||
<Item>wsdl</Item>
|
||||
<Class>org.wso2.carbon.core.transports.util.Wsdl11Processor</Class>
|
||||
</Processor>
|
||||
<Processor>
|
||||
<Item>wsdl2</Item>
|
||||
<Class>org.wso2.carbon.core.transports.util.Wsdl20Processor</Class>
|
||||
</Processor>
|
||||
<Processor>
|
||||
<Item>xsd</Item>
|
||||
<Class>org.wso2.carbon.core.transports.util.XsdProcessor</Class>
|
||||
</Processor>
|
||||
</HttpGetRequestProcessors>
|
||||
|
||||
<!-- Deployment Synchronizer Configuration. t Enabled value to true when running with "svn based" dep sync.
|
||||
In master nodes you need to set both AutoCommit and AutoCheckout to true
|
||||
and in worker nodes set only AutoCheckout to true.
|
||||
-->
|
||||
<DeploymentSynchronizer>
|
||||
<Enabled>false</Enabled>
|
||||
<AutoCommit>false</AutoCommit>
|
||||
<AutoCheckout>true</AutoCheckout>
|
||||
<RepositoryType>svn</RepositoryType>
|
||||
<SvnUrl>http://svnrepo.example.com/repos/</SvnUrl>
|
||||
<SvnUser>username</SvnUser>
|
||||
<SvnPassword>password</SvnPassword>
|
||||
<SvnUrlAppendTenantId>true</SvnUrlAppendTenantId>
|
||||
</DeploymentSynchronizer>
|
||||
|
||||
<!-- Deployment Synchronizer Configuration. Uncomment the following section when running with "registry based" dep sync.
|
||||
In master nodes you need to set both AutoCommit and AutoCheckout to true
|
||||
and in worker nodes set only AutoCheckout to true.
|
||||
-->
|
||||
<!--<DeploymentSynchronizer>
|
||||
<Enabled>true</Enabled>
|
||||
<AutoCommit>false</AutoCommit>
|
||||
<AutoCheckout>true</AutoCheckout>
|
||||
</DeploymentSynchronizer>-->
|
||||
|
||||
<!-- Mediation persistence configurations. Only valid if mediation features are available i.e. ESB -->
|
||||
<!--<MediationConfig>
|
||||
<LoadFromRegistry>false</LoadFromRegistry>
|
||||
<SaveToFile>false</SaveToFile>
|
||||
<Persistence>enabled</Persistence>
|
||||
<RegistryPersistence>enabled</RegistryPersistence>
|
||||
</MediationConfig>-->
|
||||
|
||||
<!--
|
||||
Server intializing code, specified as implementation classes of org.wso2.carbon.core.ServerInitializer.
|
||||
This code will be run when the Carbon server is initialized
|
||||
-->
|
||||
<ServerInitializers>
|
||||
<!--<Initializer></Initializer>-->
|
||||
</ServerInitializers>
|
||||
|
||||
<!--
|
||||
Indicates whether the Carbon Servlet is required by the system, and whether it should be
|
||||
registered
|
||||
-->
|
||||
<RequireCarbonServlet>${require.carbon.servlet}</RequireCarbonServlet>
|
||||
|
||||
<!--
|
||||
Carbon H2 OSGI Configuration
|
||||
By default non of the servers start.
|
||||
name="web" - Start the web server with the H2 Console
|
||||
name="webPort" - The port (default: 8082)
|
||||
name="webAllowOthers" - Allow other computers to connect
|
||||
name="webSSL" - Use encrypted (HTTPS) connections
|
||||
name="tcp" - Start the TCP server
|
||||
name="tcpPort" - The port (default: 9092)
|
||||
name="tcpAllowOthers" - Allow other computers to connect
|
||||
name="tcpSSL" - Use encrypted (SSL) connections
|
||||
name="pg" - Start the PG server
|
||||
name="pgPort" - The port (default: 5435)
|
||||
name="pgAllowOthers" - Allow other computers to connect
|
||||
name="trace" - Print additional trace information; for all servers
|
||||
name="baseDir" - The base directory for H2 databases; for all servers
|
||||
-->
|
||||
<!--H2DatabaseConfiguration>
|
||||
<property name="web" />
|
||||
<property name="webPort">8082</property>
|
||||
<property name="webAllowOthers" />
|
||||
<property name="webSSL" />
|
||||
<property name="tcp" />
|
||||
<property name="tcpPort">9092</property>
|
||||
<property name="tcpAllowOthers" />
|
||||
<property name="tcpSSL" />
|
||||
<property name="pg" />
|
||||
<property name="pgPort">5435</property>
|
||||
<property name="pgAllowOthers" />
|
||||
<property name="trace" />
|
||||
<property name="baseDir">${carbon.home}</property>
|
||||
</H2DatabaseConfiguration-->
|
||||
<!--Disabling statistics reporter by default-->
|
||||
<StatisticsReporterDisabled>true</StatisticsReporterDisabled>
|
||||
|
||||
<!-- Enable accessing Admin Console via HTTP -->
|
||||
<!-- EnableHTTPAdminConsole>true</EnableHTTPAdminConsole -->
|
||||
|
||||
<!--
|
||||
Default Feature Repository of WSO2 Carbon.
|
||||
-->
|
||||
<FeatureRepository>
|
||||
<RepositoryName>default repository</RepositoryName>
|
||||
<RepositoryURL>${p2.repo.url}</RepositoryURL>
|
||||
</FeatureRepository>
|
||||
|
||||
<!--
|
||||
Configure API Management
|
||||
-->
|
||||
<APIManagement>
|
||||
|
||||
<!--Uses the embedded API Manager by default. If you want to use an external
|
||||
API Manager instance to manage APIs, configure below externalAPIManager-->
|
||||
|
||||
<Enabled>true</Enabled>
|
||||
|
||||
<!--Uncomment and configure API Gateway and
|
||||
Publisher URLs to use external API Manager instance-->
|
||||
|
||||
<!--ExternalAPIManager>
|
||||
|
||||
<APIGatewayURL>http://localhost:8281</APIGatewayURL>
|
||||
<APIPublisherURL>http://localhost:8281/publisher</APIPublisherURL>
|
||||
|
||||
</ExternalAPIManager-->
|
||||
|
||||
<LoadAPIContextsInServerStartup>true</LoadAPIContextsInServerStartup>
|
||||
</APIManagement>
|
||||
</Server>
|
||||
@ -0,0 +1,68 @@
|
||||
<datasources-configuration xmlns:svns="http://org.wso2.securevault/configuration">
|
||||
|
||||
<providers>
|
||||
<provider>org.wso2.carbon.ndatasource.rdbms.RDBMSDataSourceReader</provider>
|
||||
</providers>
|
||||
|
||||
<datasources>
|
||||
|
||||
<datasource>
|
||||
<name>WSO2_CARBON_DB</name>
|
||||
<description>The datasource used for registry and user manager</description>
|
||||
<jndiConfig>
|
||||
<name>jdbc/WSO2CarbonDB</name>
|
||||
</jndiConfig>
|
||||
<definition type="RDBMS">
|
||||
<configuration>
|
||||
<url>jdbc:h2:repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000</url>
|
||||
<username>wso2carbon</username>
|
||||
<password>wso2carbon</password>
|
||||
<driverClassName>org.h2.Driver</driverClassName>
|
||||
<maxActive>50</maxActive>
|
||||
<maxWait>60000</maxWait>
|
||||
<testOnBorrow>true</testOnBorrow>
|
||||
<validationQuery>SELECT 1</validationQuery>
|
||||
<validationInterval>30000</validationInterval>
|
||||
<defaultAutoCommit>false</defaultAutoCommit>
|
||||
</configuration>
|
||||
</definition>
|
||||
</datasource>
|
||||
|
||||
<!-- For an explanation of the properties, see: http://people.apache.org/~fhanik/jdbc-pool/jdbc-pool.html -->
|
||||
<!--datasource>
|
||||
<name>SAMPLE_DATA_SOURCE</name>
|
||||
<jndiConfig>
|
||||
<name></name>
|
||||
<environment>
|
||||
<property name="java.naming.factory.initial"></property>
|
||||
<property name="java.naming.provider.url"></property>
|
||||
</environment>
|
||||
</jndiConfig>
|
||||
<definition type="RDBMS">
|
||||
<configuration>
|
||||
|
||||
<defaultAutoCommit></defaultAutoCommit>
|
||||
<defaultReadOnly></defaultReadOnly>
|
||||
<defaultTransactionIsolation>NONE|READ_COMMITTED|READ_UNCOMMITTED|REPEATABLE_READ|SERIALIZABLE</defaultTransactionIsolation>
|
||||
<defaultCatalog></defaultCatalog>
|
||||
<username></username>
|
||||
<password svns:secretAlias="WSO2.DB.Password"></password>
|
||||
<maxActive></maxActive>
|
||||
<maxIdle></maxIdle>
|
||||
<initialSize></initialSize>
|
||||
<maxWait></maxWait>
|
||||
|
||||
<dataSourceClassName>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</dataSourceClassName>
|
||||
<dataSourceProps>
|
||||
<property name="url">jdbc:mysql://localhost:3306/Test1</property>
|
||||
<property name="user">root</property>
|
||||
<property name="password">123</property>
|
||||
</dataSourceProps>
|
||||
|
||||
</configuration>
|
||||
</definition>
|
||||
</datasource-->
|
||||
|
||||
</datasources>
|
||||
|
||||
</datasources-configuration>
|
||||
@ -0,0 +1,12 @@
|
||||
This directory supports adding third-pary config files to specific bundles during runtime.
|
||||
|
||||
Explanation: Each OSGi bundle has its own classLoader. Some thirdpary libs read configs from classPath. This scenario fails in OSGi runtime, since OSGi runtime does not share a common classPath for individual bundles. Bundling config files during the bundle creation process itself will solve the issue. However it limits the ability to edit the configs during restarts.
|
||||
|
||||
Here we are providing a workaround for such scenarios. The given config file will get resolved to a fragment bundle and will get attached to the specified host bundle. The host bundle name(symbolic name) is resolved by looking at the directory structure. Hence host bundle name should be directory name of the config file directory.
|
||||
|
||||
|
||||
Example: The bundle with symbolic name, 'org.foo.bar' expects a config file named 'foobar.properties' from its classPath.
|
||||
|
||||
create a directory named 'org.foo.bar' inside 'repository/conf/etc/bundle-config' - (this directory) and place the foobar.properties file.
|
||||
|
||||
|
||||
@ -0,0 +1,3 @@
|
||||
#osgi.service.1 = org.wso2.carbon.client.configcontext.provider.Axis2ClientConfigContextProvider
|
||||
#osgi.service.2 = org.wso2.carbon.user.core.UserManager
|
||||
#osgi.service.3 = org.wso2.carbon.user.api.UserRealmService
|
||||
@ -0,0 +1,37 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!--configuration bit values should be given in Mega Bytes (1KB = 1024 bytes, 1MB = 1024 KB, 1GB = 1024 MB), CPU value in MHz-->
|
||||
<Configuration enabled="true">
|
||||
<!--Configuration Validators to validate system configs against recommended config settings-->
|
||||
<Validator class="org.wso2.carbon.core.bootup.validator.SystemValidator">
|
||||
<Parameter id="CPU">800</Parameter>
|
||||
<Parameter id="RAM">2047</Parameter>
|
||||
<Parameter id="swap">2047</Parameter>
|
||||
<Parameter id="freeDisk">1024</Parameter>
|
||||
<Parameter id="ulimit">4096</Parameter>
|
||||
<Parameter id="certFingerprint">02:FB:AA:5F:20:64:49:4A:27:29:55:71:83:F7:46:CD</Parameter>
|
||||
</Validator>
|
||||
<Validator class="org.wso2.carbon.core.bootup.validator.JVMValidator">
|
||||
<Parameter id="initHeapSize">256</Parameter>
|
||||
<Parameter id="maxHeapSize">512</Parameter>
|
||||
<Parameter id="maxPermGenSize">256</Parameter>
|
||||
</Validator>
|
||||
<Validator class="org.wso2.carbon.core.bootup.validator.RequiredSystemPropertiesValidator">
|
||||
<Parameter id="p1">carbon.home</Parameter>
|
||||
<Parameter id="p2">carbon.config.dir.path</Parameter>
|
||||
<Parameter id="p3">axis2.home</Parameter>
|
||||
</Validator>
|
||||
<Validator class="org.wso2.carbon.core.bootup.validator.SupportedOSValidator">
|
||||
<Parameter id="os1">Linux</Parameter>
|
||||
<Parameter id="os2">Unix</Parameter>
|
||||
<Parameter id="os3">Mac OS</Parameter>
|
||||
<Parameter id="os4">Windows Server 2003</Parameter>
|
||||
<Parameter id="os5">Windows XP</Parameter>
|
||||
<Parameter id="os6">Windows Vista</Parameter>
|
||||
<Parameter id="os7">Windows 7</Parameter>
|
||||
<Parameter id="os8">Mac OS X</Parameter>
|
||||
<Parameter id="os9">Windows Server 2008</Parameter>
|
||||
<Parameter id="os10">Windows Server 2008 R2</Parameter>
|
||||
<Parameter id="os11">AIX</Parameter>
|
||||
</Validator>
|
||||
</Configuration>
|
||||
|
||||
@ -0,0 +1,32 @@
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<!--
|
||||
This file is used to configuring the JMX server. You can disable the JMX RMI server from starting
|
||||
by setting the value of the StartRMIServer to false.
|
||||
-->
|
||||
<JMX xmlns="http://wso2.org/projects/carbon/jmx.xml">
|
||||
<StartRMIServer>true</StartRMIServer>
|
||||
|
||||
<!-- HostName, or Network interface to which this RMI server should be bound -->
|
||||
<HostName>localhost</HostName>
|
||||
|
||||
<!-- ${Ports.JMX.RMIRegistryPort} is defined in the Ports section of the carbon.xml-->
|
||||
<RMIRegistryPort>${Ports.JMX.RMIRegistryPort}</RMIRegistryPort>
|
||||
|
||||
<!-- ${Ports.JMX.RMIRegistryPort} is defined in the Ports section of the carbon.xml-->
|
||||
<RMIServerPort>${Ports.JMX.RMIServerPort}</RMIServerPort>
|
||||
</JMX>
|
||||
@ -0,0 +1,258 @@
|
||||
# Eclipse Runtime Configuration Overrides
|
||||
# These properties are loaded prior to starting the framework and can also be used to override System Properties
|
||||
# @null is a special value used to override and clear the framework's copy of a System Property prior to starting the framework
|
||||
# "*" can be used together with @null to clear System Properties that match a prefix name.
|
||||
|
||||
osgi.*=@null
|
||||
org.osgi.*=@null
|
||||
eclipse.*=@null
|
||||
|
||||
osgi.parentClassloader=app
|
||||
osgi.contextClassLoaderParent=app
|
||||
|
||||
# When osgi.clean is set to "true", any cached data used by the OSGi framework
|
||||
# will be wiped clean. This will clean the caches used to store bundle
|
||||
# dependency resolution and eclipse extension registry data. Using this
|
||||
# option will force OSGi framework to reinitialize these caches.
|
||||
# The following setting is put in place to get rid of the problems
|
||||
# faced when re-starting the system. Please note that, when this setting is
|
||||
# true, if you manually start a bundle, it would not be available when
|
||||
# you re-start the system. To avid this, copy the bundle jar to the plugins
|
||||
# folder, before you re-start the system.
|
||||
osgi.clean=true
|
||||
|
||||
# Uncomment the following line to turn on Eclipse Equinox debugging.
|
||||
# You may also edit the osgi-debug.options file and fine tune the debugging
|
||||
# options to suite your needs.
|
||||
#osgi.debug=./repository/conf/osgi-debug.options
|
||||
|
||||
# Following system property allows us to control the public JDK packages exported through the system bundle.
|
||||
org.osgi.framework.system.packages=javax.accessibility,\
|
||||
javax.activity,\
|
||||
javax.crypto,\
|
||||
javax.crypto.interfaces,\
|
||||
javax.crypto.spec,\
|
||||
javax.imageio,\
|
||||
javax.imageio.event,\
|
||||
javax.imageio.metadata,\
|
||||
javax.imageio.plugins.bmp,\
|
||||
javax.imageio.plugins.jpeg,\
|
||||
javax.imageio.spi,\
|
||||
javax.imageio.stream,\
|
||||
javax.jms,\
|
||||
javax.management,\
|
||||
javax.management.loading,\
|
||||
javax.management.modelmbean,\
|
||||
javax.management.monitor,\
|
||||
javax.management.openmbean,\
|
||||
javax.management.relation,\
|
||||
javax.management.remote,\
|
||||
javax.management.remote.rmi,\
|
||||
javax.management.timer,\
|
||||
javax.naming,\
|
||||
javax.naming.directory,\
|
||||
javax.naming.event,\
|
||||
javax.naming.ldap,\
|
||||
javax.naming.spi,\
|
||||
javax.net,\
|
||||
javax.net.ssl,\
|
||||
javax.print,\
|
||||
javax.print.attribute,\
|
||||
javax.print.attribute.standard,\
|
||||
javax.print.event,\
|
||||
javax.rmi,\
|
||||
javax.rmi.CORBA,\
|
||||
javax.rmi.ssl,\
|
||||
javax.script,\
|
||||
javax.security.auth,\
|
||||
javax.security.auth.callback,\
|
||||
javax.security.auth.kerberos,\
|
||||
javax.security.auth.login,\
|
||||
javax.security.auth.spi,\
|
||||
javax.security.auth.x500,\
|
||||
javax.security.cert,\
|
||||
javax.security.sasl,\
|
||||
javax.sound.midi,\
|
||||
javax.sound.midi.spi,\
|
||||
javax.sound.sampled,\
|
||||
javax.sound.sampled.spi,\
|
||||
javax.sql,\
|
||||
javax.sql.rowset,\
|
||||
javax.sql.rowset.serial,\
|
||||
javax.sql.rowset.spi,\
|
||||
javax.swing,\
|
||||
javax.swing.border,\
|
||||
javax.swing.colorchooser,\
|
||||
javax.swing.event,\
|
||||
javax.swing.filechooser,\
|
||||
javax.swing.plaf,\
|
||||
javax.swing.plaf.basic,\
|
||||
javax.swing.plaf.metal,\
|
||||
javax.swing.plaf.multi,\
|
||||
javax.swing.plaf.synth,\
|
||||
javax.swing.table,\
|
||||
javax.swing.text,\
|
||||
javax.swing.text.html,\
|
||||
javax.swing.text.html.parser,\
|
||||
javax.swing.text.rtf,\
|
||||
javax.swing.tree,\
|
||||
javax.swing.undo,\
|
||||
javax.transaction,\
|
||||
javax.transaction.xa,\
|
||||
javax.xml.namespace,\
|
||||
javax.xml.parsers,\
|
||||
javax.xml.stream,\
|
||||
javax.xml.stream.events,\
|
||||
javax.xml.stream.util,\
|
||||
javax.xml.transform,\
|
||||
javax.xml.transform.stream,\
|
||||
javax.xml.transform.dom,\
|
||||
javax.xml.transform.sax,\
|
||||
javax.xml,\
|
||||
javax.xml.validation,\
|
||||
javax.xml.datatype,\
|
||||
javax.xml.xpath,\
|
||||
javax.activation,\
|
||||
com.sun.activation.registries,\
|
||||
com.sun.activation.viewers,\
|
||||
org.ietf.jgss,\
|
||||
org.omg.CORBA,\
|
||||
org.omg.CORBA_2_3,\
|
||||
org.omg.CORBA_2_3.portable,\
|
||||
org.omg.CORBA.DynAnyPackage,\
|
||||
org.omg.CORBA.ORBPackage,\
|
||||
org.omg.CORBA.portable,\
|
||||
org.omg.CORBA.TypeCodePackage,\
|
||||
org.omg.CosNaming,\
|
||||
org.omg.CosNaming.NamingContextExtPackage,\
|
||||
org.omg.CosNaming.NamingContextPackage,\
|
||||
org.omg.Dynamic,\
|
||||
org.omg.DynamicAny,\
|
||||
org.omg.DynamicAny.DynAnyFactoryPackage,\
|
||||
org.omg.DynamicAny.DynAnyPackage,\
|
||||
org.omg.IOP,\
|
||||
org.omg.IOP.CodecFactoryPackage,\
|
||||
org.omg.IOP.CodecPackage,\
|
||||
org.omg.Messaging,\
|
||||
org.omg.PortableInterceptor,\
|
||||
org.omg.PortableInterceptor.ORBInitInfoPackage,\
|
||||
org.omg.PortableServer,\
|
||||
org.omg.PortableServer.CurrentPackage,\
|
||||
org.omg.PortableServer.POAManagerPackage,\
|
||||
org.omg.PortableServer.POAPackage,\
|
||||
org.omg.PortableServer.portable,\
|
||||
org.omg.PortableServer.ServantLocatorPackage,\
|
||||
org.omg.SendingContext,\
|
||||
org.omg.stub.java.rmi,\
|
||||
org.w3c.dom,\
|
||||
org.w3c.dom.bootstrap,\
|
||||
org.w3c.dom.css,\
|
||||
org.w3c.dom.events,\
|
||||
org.w3c.dom.html,\
|
||||
org.w3c.dom.ls,\
|
||||
org.w3c.dom.ranges,\
|
||||
org.w3c.dom.stylesheets,\
|
||||
org.w3c.dom.traversal,\
|
||||
org.w3c.dom.views ,\
|
||||
org.xml.sax,\
|
||||
org.xml.sax.ext,\
|
||||
org.xml.sax.helpers,\
|
||||
org.apache.xerces.xpointer,\
|
||||
org.apache.xerces.xni.grammars,\
|
||||
org.apache.xerces.impl.xs.util,\
|
||||
org.apache.xerces.jaxp.validation,\
|
||||
org.apache.xerces.impl.dtd.models,\
|
||||
org.apache.xerces.impl.xpath,\
|
||||
org.apache.xerces.dom3.as,\
|
||||
org.apache.xerces.impl.dv.xs,\
|
||||
org.apache.xerces.util,\
|
||||
org.apache.xerces.impl.xs.identity,\
|
||||
org.apache.xerces.impl.xs.opti,\
|
||||
org.apache.xerces.jaxp,\
|
||||
org.apache.xerces.impl.dv,\
|
||||
org.apache.xerces.xs.datatypes,\
|
||||
org.apache.xerces.dom.events,\
|
||||
org.apache.xerces.impl.msg,\
|
||||
org.apache.xerces.xni,\
|
||||
org.apache.xerces.impl.xs,\
|
||||
org.apache.xerces.impl,\
|
||||
org.apache.xerces.impl.io,\
|
||||
org.apache.xerces.xinclude,\
|
||||
org.apache.xerces.jaxp.datatype,\
|
||||
org.apache.xerces.parsers,\
|
||||
org.apache.xerces.impl.dv.util,\
|
||||
org.apache.xerces.xni.parser,\
|
||||
org.apache.xerces.impl.xs.traversers,\
|
||||
org.apache.xerces.impl.dv.dtd,\
|
||||
org.apache.xerces.xs,\
|
||||
org.apache.xerces.impl.dtd,\
|
||||
org.apache.xerces.impl.validation,\
|
||||
org.apache.xerces.impl.xs.models,\
|
||||
org.apache.xerces.impl.xpath.regex,\
|
||||
org.apache.xml.serialize,\
|
||||
org.apache.xerces.dom,\
|
||||
org.apache.xalan,\
|
||||
org.apache.xalan.xslt,\
|
||||
org.apache.xalan.templates,\
|
||||
org.apache.xalan.xsltc,\
|
||||
org.apache.xalan.xsltc.cmdline,\
|
||||
org.apache.xalan.xsltc.cmdline.getopt,\
|
||||
org.apache.xalan.xsltc.trax,\
|
||||
org.apache.xalan.xsltc.dom,\
|
||||
org.apache.xalan.xsltc.runtime,\
|
||||
org.apache.xalan.xsltc.runtime.output,\
|
||||
org.apache.xalan.xsltc.util,\
|
||||
org.apache.xalan.xsltc.compiler,\
|
||||
org.apache.xalan.xsltc.compiler.util,\
|
||||
org.apache.xalan.serialize,\
|
||||
org.apache.xalan.client,\
|
||||
org.apache.xalan.res,\
|
||||
org.apache.xalan.transformer,\
|
||||
org.apache.xalan.extensions,\
|
||||
org.apache.xalan.lib,\
|
||||
org.apache.xalan.lib.sql,\
|
||||
org.apache.xalan.processor,\
|
||||
org.apache.xalan.trace,\
|
||||
org.apache.xml.dtm,\
|
||||
org.apache.xml.dtm.ref,\
|
||||
org.apache.xml.dtm.ref.sax2dtm,\
|
||||
org.apache.xml.dtm.ref.dom2dtm,\
|
||||
org.apache.xml.utils,\
|
||||
org.apache.xml.utils.res,\
|
||||
org.apache.xml.res,\
|
||||
org.apache.xml.serializer,\
|
||||
org.apache.xml.serializer.utils,\
|
||||
org.apache.xpath,\
|
||||
org.apache.xpath.domapi,\
|
||||
org.apache.xpath.objects,\
|
||||
org.apache.xpath.patterns,\
|
||||
org.apache.xpath.jaxp,\
|
||||
org.apache.xpath.res,\
|
||||
org.apache.xpath.operations,\
|
||||
org.apache.xpath.functions,\
|
||||
org.apache.xpath.axes,\
|
||||
org.apache.xpath.compiler,\
|
||||
org.apache.xml.resolver,\
|
||||
org.apache.xml.resolver.tools,\
|
||||
org.apache.xml.resolver.helpers,\
|
||||
org.apache.xml.resolver.readers,\
|
||||
org.apache.xml.resolver.etc,\
|
||||
org.apache.xml.resolver.apps,\
|
||||
javax.xml.ws,\
|
||||
javax.xml.ws.handler,\
|
||||
javax.xml.ws.handler.soap,\
|
||||
javax.xml.ws.http,\
|
||||
javax.xml.ws.soap,\
|
||||
javax.xml.ws.spi,\
|
||||
javax.xml.ws.spi.http,\
|
||||
javax.xml.ws.wsaddressing,\
|
||||
javax.xml.bind,\
|
||||
javax.xml.bind.annotation,\
|
||||
javax.xml.bind.annotation.adapters,\
|
||||
javax.annotation,\
|
||||
javax.jws,\
|
||||
javax.jws.soap,\
|
||||
com.sun.xml.internal.messaging.saaj.soap.ver1_1,\
|
||||
com.sun.xml.internal.messaging.saaj.soap,\
|
||||
com.sun.tools.internal.ws.spi,\
|
||||
org.wso2.carbon.bootstrap
|
||||
@ -0,0 +1,65 @@
|
||||
############################################################
|
||||
# Default Logging Configuration File
|
||||
#
|
||||
# You can use a different file by specifying a filename
|
||||
# with the java.util.logging.config.file system property.
|
||||
# For example java -Djava.util.logging.config.file=myfile
|
||||
############################################################
|
||||
|
||||
############################################################
|
||||
# Global properties
|
||||
# NOTE: this configuration file use to get the handler list,
|
||||
# Properties(except level property) define for each handler
|
||||
# may be not available because LogRecords handover to log4j
|
||||
# appenders in runtime.
|
||||
############################################################
|
||||
|
||||
# "handlers" specifies a comma separated list of log Handler
|
||||
# classes. These handlers will be installed during VM startup.
|
||||
# Note that these classes must be on the system classpath.
|
||||
# By default we only configure a ConsoleHandler, which will only
|
||||
# show messages at the INFO and above levels.
|
||||
#handlers= java.util.logging.ConsoleHandler
|
||||
|
||||
# To also add the FileHandler, use the following line instead.
|
||||
#handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler
|
||||
# Add org.wso2.carbon.bootstrap.logging.handlers.LogEventHandler to handlers if you need to push java logs to LOGEVENT appender
|
||||
|
||||
handlers= org.wso2.carbon.bootstrap.logging.handlers.LoggingConsoleHandler, org.wso2.carbon.bootstrap.logging.handlers.LoggingFileHandler
|
||||
|
||||
# Default global logging level.
|
||||
# This specifies which kinds of events are logged across
|
||||
# all loggers. For any given facility this global level
|
||||
# can be overriden by a facility specific level
|
||||
# Note that the ConsoleHandler also has a separate level
|
||||
# setting to limit messages printed to the console.
|
||||
.level= INFO
|
||||
|
||||
############################################################
|
||||
# Handler specific properties.
|
||||
# Describes specific configuration info for Handlers.
|
||||
#
|
||||
|
||||
############################################################
|
||||
# This FileHandler pushed LogRecords to a log4j FileAppander in runtime
|
||||
org.wso2.carbon.bootstrap.logging.handlers.LoggingFileHandler.level = INFO
|
||||
#org.wso2.carbon.bootstrap.logging.handlers.LoggingFileHandler.formatter = java.util.logging.SimpleFormatter
|
||||
|
||||
# This ConsoleHandler pushed LogRecords to q log4j ConsoleAppander in runtime
|
||||
org.wso2.carbon.bootstrap.logging.handlers.LoggingConsoleHandler.level = INFO
|
||||
#org.wso2.carbon.bootstrap.logging.handlers.LoggingConsoleHandler.formatter = java.util.logging.SimpleFormatter
|
||||
|
||||
|
||||
############################################################
|
||||
# Facility specific properties.
|
||||
# Provides extra control for each logger.
|
||||
############################################################
|
||||
|
||||
# For example, set the com.xyz.foo logger to only log SEVERE
|
||||
# messages:
|
||||
#com.xyz.foo.level = SEVERE
|
||||
org.apache.coyote.level = SEVERE
|
||||
org.apache.catalina.level = SEVERE
|
||||
com.hazelcast.level = SEVERE
|
||||
|
||||
|
||||
@ -0,0 +1,27 @@
|
||||
#
|
||||
# Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
#
|
||||
# Licensed 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.
|
||||
#
|
||||
|
||||
# This file is to define the human readable media type for a mime type.
|
||||
# Eg:-
|
||||
# text/plain txt text
|
||||
application/wsdl+xml WSDL
|
||||
application/x-xsd+xml Schema
|
||||
application/policy+xml Policy
|
||||
application/vnd.wso2-service+xml Service
|
||||
application/vnd.wso2-hyperlink Hyperlink
|
||||
application/vnd.wso2.endpoint Endpoint
|
||||
application/vnd.wso2-api+xml API
|
||||
application/vnd.wso2-uri+xml URI
|
||||
@ -0,0 +1,734 @@
|
||||
#
|
||||
# Copyright 2005-2009 WSO2, Inc. (http://wso2.com)
|
||||
#
|
||||
# Licensed 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.
|
||||
#
|
||||
|
||||
# Media type for wsdl files. This is not defined in the original mime.types file.
|
||||
chemical/x-alchemy alc
|
||||
application/andrew-inset ez
|
||||
application/wsdl+xml wsdl
|
||||
application/vnd.sun.wadl+xml wadl
|
||||
application/activemessage
|
||||
application/applefile
|
||||
application/atomicmail
|
||||
application/batch-SMTP
|
||||
application/beep+xml
|
||||
application/cals-1840
|
||||
application/commonground
|
||||
application/cu-seeme cu
|
||||
application/cybercash
|
||||
application/dca-rft
|
||||
application/dec-dx
|
||||
application/docbook+xml
|
||||
application/dsptype tsp
|
||||
application/dvcs
|
||||
application/edi-consent
|
||||
application/edi-x12
|
||||
application/edifact
|
||||
application/eshop
|
||||
application/font-tdpfr
|
||||
application/futuresplash spl
|
||||
application/ghostview
|
||||
application/hta hta
|
||||
application/http
|
||||
application/hyperstudio
|
||||
application/iges
|
||||
application/index
|
||||
application/index.cmd
|
||||
application/index.obj
|
||||
application/index.response
|
||||
application/index.vnd
|
||||
application/iotp
|
||||
application/ipp
|
||||
application/isup
|
||||
application/java-archive jar
|
||||
application/java-serialized-object ser
|
||||
application/java-vm class
|
||||
application/mac-binhex40 hqx
|
||||
application/mac-compactpro cpt
|
||||
application/macwriteii
|
||||
application/marc
|
||||
application/mathematica nb
|
||||
application/mathematica-old
|
||||
application/msaccess mdb
|
||||
application/msword doc dot
|
||||
application/news-message-id
|
||||
application/news-transmission
|
||||
application/ocsp-request
|
||||
application/ocsp-response
|
||||
application/octet-stream bin
|
||||
application/oda oda
|
||||
application/ogg ogg
|
||||
application/parityfec
|
||||
application/pdf pdf
|
||||
application/pgp-encrypted
|
||||
application/pgp-keys key
|
||||
application/pgp-signature pgp
|
||||
application/pics-rules prf
|
||||
application/pkcs10
|
||||
application/pkcs7-mime
|
||||
application/pkcs7-signature
|
||||
application/pkix-cert
|
||||
application/pkix-crl
|
||||
application/pkixcmp
|
||||
application/policy+xml
|
||||
application/postscript ps ai eps
|
||||
application/prs.alvestrand.titrax-sheet
|
||||
application/prs.cww
|
||||
application/prs.nprend
|
||||
application/qsig
|
||||
application/rar rar
|
||||
application/rdf+xml rdf
|
||||
application/remote-printing
|
||||
application/riscos
|
||||
application/rss+xml rss
|
||||
application/rtf
|
||||
application/sdp
|
||||
application/set-payment
|
||||
application/set-payment-initiation
|
||||
application/set-registration
|
||||
application/set-registration-initiation
|
||||
application/sgml
|
||||
application/sgml-open-catalog
|
||||
application/sieve
|
||||
application/slate
|
||||
application/smil smi smil
|
||||
application/timestamp-query
|
||||
application/timestamp-reply
|
||||
application/vemmi
|
||||
application/whoispp-query
|
||||
application/whoispp-response
|
||||
application/wita
|
||||
application/wordperfect wpd
|
||||
application/wordperfect5.1 wp5
|
||||
application/x400-bp
|
||||
application/xhtml+xml xhtml xht
|
||||
application/xml xml xsl xslt jrxml
|
||||
application/xml-dtd
|
||||
application/xml-external-parsed-entity
|
||||
application/zip zip
|
||||
application/vnd.3M.Post-it-Notes
|
||||
application/vnd.accpac.simply.aso
|
||||
application/vnd.accpac.simply.imp
|
||||
application/vnd.acucobol
|
||||
application/vnd.aether.imp
|
||||
application/vnd.anser-web-certificate-issue-initiation
|
||||
application/vnd.anser-web-funds-transfer-initiation
|
||||
application/vnd.audiograph
|
||||
application/vnd.bmi
|
||||
application/vnd.businessobjects
|
||||
application/vnd.canon-cpdl
|
||||
application/vnd.canon-lips
|
||||
application/vnd.cinderella cdy
|
||||
application/vnd.claymore
|
||||
application/vnd.commerce-battelle
|
||||
application/vnd.commonspace
|
||||
application/vnd.comsocaller
|
||||
application/vnd.contact.cmsg
|
||||
application/vnd.cosmocaller
|
||||
application/vnd.ctc-posml
|
||||
application/vnd.cups-postscript
|
||||
application/vnd.cups-raster
|
||||
application/vnd.cups-raw
|
||||
application/vnd.cybank
|
||||
application/vnd.dna
|
||||
application/vnd.dpgraph
|
||||
application/vnd.dxr
|
||||
application/vnd.ecdis-update
|
||||
application/vnd.ecowin.chart
|
||||
application/vnd.ecowin.filerequest
|
||||
application/vnd.ecowin.fileupdate
|
||||
application/vnd.ecowin.series
|
||||
application/vnd.ecowin.seriesrequest
|
||||
application/vnd.ecowin.seriesupdate
|
||||
application/vnd.enliven
|
||||
application/vnd.epson.esf
|
||||
application/vnd.epson.msf
|
||||
application/vnd.epson.quickanime
|
||||
application/vnd.epson.salt
|
||||
application/vnd.epson.ssf
|
||||
application/vnd.ericsson.quickcall
|
||||
application/vnd.eudora.data
|
||||
application/vnd.fdf
|
||||
application/vnd.ffsns
|
||||
application/vnd.flographit
|
||||
application/vnd.framemaker
|
||||
application/vnd.fsc.weblaunch
|
||||
application/vnd.fujitsu.oasys
|
||||
application/vnd.fujitsu.oasys2
|
||||
application/vnd.fujitsu.oasys3
|
||||
application/vnd.fujitsu.oasysgp
|
||||
application/vnd.fujitsu.oasysprs
|
||||
application/vnd.fujixerox.ddd
|
||||
application/vnd.fujixerox.docuworks
|
||||
application/vnd.fujixerox.docuworks.binder
|
||||
application/vnd.fut-misnet
|
||||
application/vnd.grafeq
|
||||
application/vnd.groove-account
|
||||
application/vnd.groove-identity-message
|
||||
application/vnd.groove-injector
|
||||
application/vnd.groove-tool-message
|
||||
application/vnd.groove-tool-template
|
||||
application/vnd.groove-vcard
|
||||
application/vnd.hhe.lesson-player
|
||||
application/vnd.hp-HPGL
|
||||
application/vnd.hp-PCL
|
||||
application/vnd.hp-PCLXL
|
||||
application/vnd.hp-hpid
|
||||
application/vnd.hp-hps
|
||||
application/vnd.httphone
|
||||
application/vnd.hzn-3d-crossword
|
||||
application/vnd.ibm.MiniPay
|
||||
application/vnd.ibm.afplinedata
|
||||
application/vnd.ibm.modcap
|
||||
application/vnd.informix-visionary
|
||||
application/vnd.intercon.formnet
|
||||
application/vnd.intertrust.digibox
|
||||
application/vnd.intertrust.nncp
|
||||
application/vnd.intu.qbo
|
||||
application/vnd.intu.qfx
|
||||
application/vnd.irepository.package+xml
|
||||
application/vnd.is-xpr
|
||||
application/vnd.japannet-directory-service
|
||||
application/vnd.japannet-jpnstore-wakeup
|
||||
application/vnd.japannet-payment-wakeup
|
||||
application/vnd.japannet-registration
|
||||
application/vnd.japannet-registration-wakeup
|
||||
application/vnd.japannet-setstore-wakeup
|
||||
application/vnd.japannet-verification
|
||||
application/vnd.japannet-verification-wakeup
|
||||
application/vnd.koan
|
||||
application/vnd.lotus-1-2-3
|
||||
application/vnd.lotus-approach
|
||||
application/vnd.lotus-freelance
|
||||
application/vnd.lotus-notes
|
||||
application/vnd.lotus-organizer
|
||||
application/vnd.lotus-screencam
|
||||
application/vnd.lotus-wordpro
|
||||
application/vnd.mcd
|
||||
application/vnd.mediastation.cdkey
|
||||
application/vnd.meridian-slingshot
|
||||
application/vnd.mif
|
||||
application/vnd.minisoft-hp3000-save
|
||||
application/vnd.mitsubishi.misty-guard.trustweb
|
||||
application/vnd.mobius.daf
|
||||
application/vnd.mobius.dis
|
||||
application/vnd.mobius.msl
|
||||
application/vnd.mobius.plc
|
||||
application/vnd.mobius.txf
|
||||
application/vnd.motorola.flexsuite
|
||||
application/vnd.motorola.flexsuite.adsi
|
||||
application/vnd.motorola.flexsuite.fis
|
||||
application/vnd.motorola.flexsuite.gotap
|
||||
application/vnd.motorola.flexsuite.kmr
|
||||
application/vnd.motorola.flexsuite.ttc
|
||||
application/vnd.motorola.flexsuite.wem
|
||||
application/vnd.mozilla.xul+xml xul
|
||||
application/vnd.ms-artgalry
|
||||
application/vnd.ms-asf
|
||||
application/vnd.ms-excel xls xlb xlt
|
||||
application/vnd.ms-lrm
|
||||
application/vnd.ms-pki.seccat cat
|
||||
application/vnd.ms-pki.stl stl
|
||||
application/vnd.ms-powerpoint ppt pps
|
||||
application/vnd.ms-project
|
||||
application/vnd.ms-tnef
|
||||
application/vnd.ms-works
|
||||
application/vnd.mseq
|
||||
application/vnd.msign
|
||||
application/vnd.music-niff
|
||||
application/vnd.musician
|
||||
application/vnd.netfpx
|
||||
application/vnd.noblenet-directory
|
||||
application/vnd.noblenet-sealer
|
||||
application/vnd.noblenet-web
|
||||
application/vnd.novadigm.EDM
|
||||
application/vnd.novadigm.EDX
|
||||
application/vnd.novadigm.EXT
|
||||
application/vnd.oasis.opendocument.chart odc
|
||||
application/vnd.oasis.opendocument.database odb
|
||||
application/vnd.oasis.opendocument.formula odf
|
||||
application/vnd.oasis.opendocument.graphics odg
|
||||
application/vnd.oasis.opendocument.graphics-template otg
|
||||
application/vnd.oasis.opendocument.image odi
|
||||
application/vnd.oasis.opendocument.presentation odp
|
||||
application/vnd.oasis.opendocument.presentation-template otp
|
||||
application/vnd.oasis.opendocument.spreadsheet ods
|
||||
application/vnd.oasis.opendocument.spreadsheet-template ots
|
||||
application/vnd.oasis.opendocument.text odt
|
||||
application/vnd.oasis.opendocument.text-master odm
|
||||
application/vnd.oasis.opendocument.text-template ott
|
||||
application/vnd.oasis.opendocument.text-web oth
|
||||
application/vnd.osa.netdeploy
|
||||
application/vnd.palm
|
||||
application/vnd.pg.format
|
||||
application/vnd.pg.osasli
|
||||
application/vnd.powerbuilder6
|
||||
application/vnd.powerbuilder6-s
|
||||
application/vnd.powerbuilder7
|
||||
application/vnd.powerbuilder7-s
|
||||
application/vnd.powerbuilder75
|
||||
application/vnd.powerbuilder75-s
|
||||
application/vnd.previewsystems.box
|
||||
application/vnd.publishare-delta-tree
|
||||
application/vnd.pvi.ptid1
|
||||
application/vnd.pwg-xhtml-print+xml
|
||||
application/vnd.rapid
|
||||
application/vnd.rim.cod cod
|
||||
application/vnd.s3sms
|
||||
application/vnd.seemail
|
||||
application/vnd.shana.informed.formdata
|
||||
application/vnd.shana.informed.formtemplate
|
||||
application/vnd.shana.informed.interchange
|
||||
application/vnd.shana.informed.package
|
||||
application/vnd.smaf mmf
|
||||
application/vnd.sss-cod
|
||||
application/vnd.sss-dtf
|
||||
application/vnd.sss-ntf
|
||||
application/vnd.stardivision.calc sdc
|
||||
application/vnd.stardivision.draw sda
|
||||
application/vnd.stardivision.impress sdd sdp
|
||||
application/vnd.stardivision.math smf
|
||||
application/vnd.stardivision.writer sdw vor
|
||||
application/vnd.stardivision.writer-global sgl
|
||||
application/vnd.street-stream
|
||||
application/vnd.sun.xml.calc sxc
|
||||
application/vnd.sun.xml.calc.template stc
|
||||
application/vnd.sun.xml.draw sxd
|
||||
application/vnd.sun.xml.draw.template std
|
||||
application/vnd.sun.xml.impress sxi
|
||||
application/vnd.sun.xml.impress.template sti
|
||||
application/vnd.sun.xml.math sxm
|
||||
application/vnd.sun.xml.writer sxw
|
||||
application/vnd.sun.xml.writer.global sxg
|
||||
application/vnd.sun.xml.writer.template stw
|
||||
application/vnd.svd
|
||||
application/vnd.swiftview-ics
|
||||
application/vnd.symbian.install sis
|
||||
application/vnd.triscape.mxs
|
||||
application/vnd.trueapp
|
||||
application/vnd.truedoc
|
||||
application/vnd.tve-trigger
|
||||
application/vnd.ufdl
|
||||
application/vnd.uplanet.alert
|
||||
application/vnd.uplanet.alert-wbxml
|
||||
application/vnd.uplanet.bearer-choice
|
||||
application/vnd.uplanet.bearer-choice-wbxml
|
||||
application/vnd.uplanet.cacheop
|
||||
application/vnd.uplanet.cacheop-wbxml
|
||||
application/vnd.uplanet.channel
|
||||
application/vnd.uplanet.channel-wbxml
|
||||
application/vnd.uplanet.list
|
||||
application/vnd.uplanet.list-wbxml
|
||||
application/vnd.uplanet.listcmd
|
||||
application/vnd.uplanet.listcmd-wbxml
|
||||
application/vnd.uplanet.signal
|
||||
application/vnd.vcx
|
||||
application/vnd.vectorworks
|
||||
application/vnd.vidsoft.vidconference
|
||||
application/vnd.visio vsd
|
||||
application/vnd.vividence.scriptfile
|
||||
application/vnd.wap.sic
|
||||
application/vnd.wap.slc
|
||||
application/vnd.wap.wbxml wbxml
|
||||
application/vnd.wap.wmlc wmlc
|
||||
application/vnd.wap.wmlscriptc wmlsc
|
||||
application/vnd.webturbo
|
||||
application/vnd.wrq-hp3000-labelled
|
||||
application/vnd.wso2.bpel+xml bpel
|
||||
application/vnd.wso2.bpmn+xml bpmn
|
||||
application/vnd.wso2.endpoint
|
||||
application/vnd.wso2.governance-archive gar
|
||||
application/vnd.wso2-hyperlink
|
||||
application/vnd.wso2.registry-ext-type+xml rxt
|
||||
application/vnd.wso2-service+xml
|
||||
application/vnd.wso2.xpdl+xml xpdl
|
||||
application/vnd.wt.stf
|
||||
application/vnd.xara
|
||||
application/vnd.xfdl
|
||||
application/vnd.yellowriver-custom-menu
|
||||
application/x-123 wk
|
||||
application/x-abiword abw
|
||||
application/x-apple-diskimage dmg
|
||||
application/x-bcpio bcpio
|
||||
application/x-bittorrent torrent
|
||||
application/x-cdf cdf
|
||||
application/x-cdlink vcd
|
||||
application/x-chess-pgn pgn
|
||||
application/x-core
|
||||
application/x-cpio cpio
|
||||
application/x-csh csh
|
||||
application/x-debian-package deb udeb
|
||||
application/x-director dcr dir dxr
|
||||
application/x-dms dms
|
||||
application/x-doom wad
|
||||
application/x-dvi dvi
|
||||
application/x-executable
|
||||
application/x-flac flac
|
||||
application/x-font pfa pfb gsf pcf pcf.Z
|
||||
application/x-freemind mm
|
||||
application/x-futuresplash spl
|
||||
application/x-gnumeric gnumeric
|
||||
application/x-go-sgf sgf
|
||||
application/x-graphing-calculator gcf
|
||||
application/x-gtar gtar tgz taz
|
||||
application/x-hdf hdf
|
||||
application/x-httpd-php phtml pht php
|
||||
application/x-httpd-php-source phps
|
||||
application/x-httpd-php3 php3
|
||||
application/x-httpd-php3-preprocessed php3p
|
||||
application/x-httpd-php4 php4
|
||||
application/x-httpd-eruby rhtml
|
||||
application/x-ica ica
|
||||
application/x-internet-signup ins isp
|
||||
application/x-iphone iii
|
||||
application/x-iso9660-image iso
|
||||
application/x-java-applet
|
||||
application/x-java-bean
|
||||
application/x-java-jnlp-file jnlp
|
||||
application/x-javascript js
|
||||
application/x-jmol jmz
|
||||
application/x-kchart chrt
|
||||
application/x-kdelnk
|
||||
application/x-killustrator kil
|
||||
application/x-koan skp skd skt skm
|
||||
application/x-kpresenter kpr kpt
|
||||
application/x-kspread ksp
|
||||
application/x-kword kwd kwt
|
||||
application/x-latex latex
|
||||
application/x-lha lha
|
||||
application/x-lzh lzh
|
||||
application/x-lzx lzx
|
||||
application/x-maker frm maker frame fm fb book fbdoc
|
||||
application/x-mif mif
|
||||
application/x-ms-wmd wmd
|
||||
application/x-ms-wmz wmz
|
||||
application/x-msdos-program com exe bat dll
|
||||
application/x-msi msi
|
||||
application/x-netcdf nc
|
||||
application/x-ns-proxy-autoconfig pac
|
||||
application/x-nwc nwc
|
||||
application/x-object o
|
||||
application/x-oz-application oza
|
||||
application/x-pkcs7-certreqresp p7r
|
||||
application/x-pkcs7-crl crl
|
||||
application/x-python-code pyc pyo
|
||||
application/x-quicktimeplayer qtl
|
||||
application/x-redhat-package-manager rpm
|
||||
application/x-rx
|
||||
application/x-sh sh
|
||||
application/x-shar shar
|
||||
application/x-shellscript
|
||||
application/x-shockwave-flash swf swfl
|
||||
application/x-stuffit sit
|
||||
application/x-sv4cpio sv4cpio
|
||||
application/x-sv4crc sv4crc
|
||||
application/x-tar tar
|
||||
application/x-tcl tcl
|
||||
application/x-tex-gf gf
|
||||
application/x-tex-pk pk
|
||||
application/x-texinfo texinfo texi
|
||||
application/x-trash ~ % bak old sik
|
||||
application/x-troff t tr roff
|
||||
application/x-troff-man man
|
||||
application/x-troff-me me
|
||||
application/x-troff-ms ms
|
||||
application/x-ustar ustar
|
||||
application/x-videolan
|
||||
application/x-wais-source src
|
||||
application/x-wingz wz
|
||||
application/x-x509-ca-cert crt
|
||||
application/x-xcf xcf
|
||||
application/x-xfig fig
|
||||
application/x-xpinstall xpi
|
||||
application/x-xsd+xml xsd
|
||||
|
||||
audio/32kadpcm
|
||||
audio/basic au snd
|
||||
audio/g.722.1
|
||||
audio/l16
|
||||
audio/midi mid midi kar
|
||||
audio/mp4a-latm
|
||||
audio/mpa-robust
|
||||
audio/mpeg mpga mpega mp2 mp3 m4a
|
||||
audio/mpegurl m3u
|
||||
audio/parityfec
|
||||
audio/prs.sid sid
|
||||
audio/telephone-event
|
||||
audio/tone
|
||||
audio/vnd.cisco.nse
|
||||
audio/vnd.cns.anp1
|
||||
audio/vnd.cns.inf1
|
||||
audio/vnd.digital-winds
|
||||
audio/vnd.everad.plj
|
||||
audio/vnd.lucent.voice
|
||||
audio/vnd.nortel.vbk
|
||||
audio/vnd.nuera.ecelp4800
|
||||
audio/vnd.nuera.ecelp7470
|
||||
audio/vnd.nuera.ecelp9600
|
||||
audio/vnd.octel.sbc
|
||||
audio/vnd.qcelp
|
||||
audio/vnd.rhetorex.32kadpcm
|
||||
audio/vnd.vmx.cvsd
|
||||
audio/x-aiff aif aiff aifc
|
||||
audio/x-gsm gsm
|
||||
audio/x-mpegurl m3u
|
||||
audio/x-ms-wma wma
|
||||
audio/x-ms-wax wax
|
||||
audio/x-pn-realaudio-plugin
|
||||
audio/x-pn-realaudio ra rm ram
|
||||
audio/x-realaudio ra
|
||||
audio/x-scpls pls
|
||||
audio/x-sd2 sd2
|
||||
audio/x-wav wav
|
||||
|
||||
chemical/x-alchemy alc
|
||||
chemical/x-cache cac cache
|
||||
chemical/x-cache-csf csf
|
||||
chemical/x-cactvs-binary cbin cascii ctab
|
||||
chemical/x-cdx cdx
|
||||
chemical/x-cerius cer
|
||||
chemical/x-chem3d c3d
|
||||
chemical/x-chemdraw chm
|
||||
chemical/x-cif cif
|
||||
chemical/x-cmdf cmdf
|
||||
chemical/x-cml cml
|
||||
chemical/x-compass cpa
|
||||
chemical/x-crossfire bsd
|
||||
chemical/x-csml csml csm
|
||||
chemical/x-ctx ctx
|
||||
chemical/x-cxf cxf cef
|
||||
#chemical/x-daylight-smiles smi
|
||||
chemical/x-embl-dl-nucleotide emb embl
|
||||
chemical/x-galactic-spc spc
|
||||
chemical/x-gamess-input inp gam gamin
|
||||
chemical/x-gaussian-checkpoint fch fchk
|
||||
chemical/x-gaussian-cube cub
|
||||
chemical/x-gaussian-input gau gjc gjf
|
||||
chemical/x-gaussian-log gal
|
||||
chemical/x-gcg8-sequence gcg
|
||||
chemical/x-genbank gen
|
||||
chemical/x-hin hin
|
||||
chemical/x-isostar istr ist
|
||||
chemical/x-jcamp-dx jdx dx
|
||||
chemical/x-kinemage kin
|
||||
chemical/x-macmolecule mcm
|
||||
chemical/x-macromodel-input mmd mmod
|
||||
chemical/x-mdl-molfile mol
|
||||
chemical/x-mdl-rdfile rd
|
||||
chemical/x-mdl-rxnfile rxn
|
||||
chemical/x-mdl-sdfile sd sdf
|
||||
chemical/x-mdl-tgf tgf
|
||||
#chemical/x-mif mif
|
||||
chemical/x-mmcif mcif
|
||||
chemical/x-mol2 mol2
|
||||
chemical/x-molconn-Z b
|
||||
chemical/x-mopac-graph gpt
|
||||
chemical/x-mopac-input mop mopcrt mpc dat zmt
|
||||
chemical/x-mopac-out moo
|
||||
chemical/x-mopac-vib mvb
|
||||
chemical/x-ncbi-asn1 asn
|
||||
chemical/x-ncbi-asn1-ascii prt ent
|
||||
chemical/x-ncbi-asn1-binary val aso
|
||||
chemical/x-ncbi-asn1-spec asn
|
||||
chemical/x-pdb pdb ent
|
||||
chemical/x-rosdal ros
|
||||
chemical/x-swissprot sw
|
||||
chemical/x-vamas-iso14976 vms
|
||||
chemical/x-vmd vmd
|
||||
chemical/x-xtel xtel
|
||||
chemical/x-xyz xyz
|
||||
|
||||
image/cgm
|
||||
image/g3fax
|
||||
image/gif gif
|
||||
image/ief ief
|
||||
image/jpeg jpeg jpg jpe
|
||||
image/naplps
|
||||
image/pcx pcx
|
||||
image/png png
|
||||
image/prs.btif
|
||||
image/prs.pti
|
||||
image/svg+xml svg svgz
|
||||
image/tiff tiff tif
|
||||
image/vnd.cns.inf2
|
||||
image/vnd.djvu djvu djv
|
||||
image/vnd.dwg
|
||||
image/vnd.dxf
|
||||
image/vnd.fastbidsheet
|
||||
image/vnd.fpx
|
||||
image/vnd.fst
|
||||
image/vnd.fujixerox.edmics-mmr
|
||||
image/vnd.fujixerox.edmics-rlc
|
||||
image/vnd.mix
|
||||
image/vnd.net-fpx
|
||||
image/vnd.svf
|
||||
image/vnd.wap.wbmp wbmp
|
||||
image/vnd.xiff
|
||||
image/x-cmu-raster ras
|
||||
image/x-coreldraw cdr
|
||||
image/x-coreldrawpattern pat
|
||||
image/x-coreldrawtemplate cdt
|
||||
image/x-corelphotopaint cpt
|
||||
image/x-icon ico
|
||||
image/x-jg art
|
||||
image/x-jng jng
|
||||
image/x-ms-bmp bmp
|
||||
image/x-photoshop psd
|
||||
image/x-portable-anymap pnm
|
||||
image/x-portable-bitmap pbm
|
||||
image/x-portable-graymap pgm
|
||||
image/x-portable-pixmap ppm
|
||||
image/x-rgb rgb
|
||||
image/x-xbitmap xbm
|
||||
image/x-xpixmap xpm
|
||||
image/x-xwindowdump xwd
|
||||
|
||||
inode/chardevice
|
||||
inode/blockdevice
|
||||
inode/directory-locked
|
||||
inode/directory
|
||||
inode/fifo
|
||||
inode/socket
|
||||
|
||||
message/delivery-status
|
||||
message/disposition-notification
|
||||
message/external-body
|
||||
message/http
|
||||
message/s-http
|
||||
message/news
|
||||
message/partial
|
||||
message/rfc822
|
||||
|
||||
model/iges igs iges
|
||||
model/mesh msh mesh silo
|
||||
model/vnd.dwf
|
||||
model/vnd.flatland.3dml
|
||||
model/vnd.gdl
|
||||
model/vnd.gs-gdl
|
||||
model/vnd.gtw
|
||||
model/vnd.mts
|
||||
model/vnd.vtu
|
||||
model/vrml wrl vrml
|
||||
|
||||
multipart/alternative
|
||||
multipart/appledouble
|
||||
multipart/byteranges
|
||||
multipart/digest
|
||||
multipart/encrypted
|
||||
multipart/form-data
|
||||
multipart/header-set
|
||||
multipart/mixed
|
||||
multipart/parallel
|
||||
multipart/related
|
||||
multipart/report
|
||||
multipart/signed
|
||||
multipart/voice-message
|
||||
|
||||
text/calendar ics icz
|
||||
text/comma-separated-values csv
|
||||
text/css css
|
||||
text/directory
|
||||
text/english
|
||||
text/enriched
|
||||
text/h323 323
|
||||
text/html html htm shtml
|
||||
text/iuls uls
|
||||
text/mathml mml
|
||||
text/parityfec
|
||||
text/plain asc txt text diff pot sql
|
||||
text/prs.lines.tag
|
||||
text/rfc822-headers
|
||||
text/richtext rtx
|
||||
text/rtf rtf
|
||||
text/scriptlet sct wsc
|
||||
text/t140
|
||||
text/texmacs tm ts
|
||||
text/tab-separated-values tsv
|
||||
text/uri-list
|
||||
text/vnd.abc
|
||||
text/vnd.curl
|
||||
text/vnd.DMClientScript
|
||||
text/vnd.flatland.3dml
|
||||
text/vnd.fly
|
||||
text/vnd.fmi.flexstor
|
||||
text/vnd.in3d.3dml
|
||||
text/vnd.in3d.spot
|
||||
text/vnd.IPTC.NewsML
|
||||
text/vnd.IPTC.NITF
|
||||
text/vnd.latex-z
|
||||
text/vnd.motorola.reflex
|
||||
text/vnd.ms-mediapackage
|
||||
text/vnd.sun.j2me.app-descriptor jad
|
||||
text/vnd.wap.si
|
||||
text/vnd.wap.sl
|
||||
text/vnd.wap.wml wml
|
||||
text/vnd.wap.wmlscript wmls
|
||||
text/x-bibtex bib
|
||||
text/x-boo boo
|
||||
text/x-c++hdr h++ hpp hxx hh
|
||||
text/x-c++src c++ cpp cxx cc
|
||||
text/x-chdr h
|
||||
text/x-component htc
|
||||
text/x-crontab
|
||||
text/x-csh csh
|
||||
text/x-csrc c
|
||||
text/x-dsrc d
|
||||
text/x-haskell hs
|
||||
text/x-java java
|
||||
text/x-literate-haskell lhs
|
||||
text/x-makefile
|
||||
text/x-moc moc
|
||||
text/x-pascal p pas
|
||||
text/x-pcs-gcd gcd
|
||||
text/x-perl pl pm
|
||||
text/x-python py
|
||||
text/x-server-parsed-html
|
||||
text/x-setext etx
|
||||
text/x-sh sh
|
||||
text/x-tcl tcl tk
|
||||
text/x-tex tex ltx sty cls
|
||||
text/x-vcalendar vcs
|
||||
text/x-vcard vcf
|
||||
|
||||
video/dl dl
|
||||
video/dv dif dv
|
||||
video/fli fli
|
||||
video/gl gl
|
||||
video/mpeg mpeg mpg mpe
|
||||
video/mp4 mp4
|
||||
video/quicktime qt mov
|
||||
video/mp4v-es
|
||||
video/parityfec
|
||||
video/pointer
|
||||
video/vnd.fvt
|
||||
video/vnd.motorola.video
|
||||
video/vnd.motorola.videop
|
||||
video/vnd.mpegurl mxu
|
||||
video/vnd.mts
|
||||
video/vnd.nokia.interleaved-multimedia
|
||||
video/vnd.vivo
|
||||
video/x-la-asf lsf lsx
|
||||
video/x-mng mng
|
||||
video/x-ms-asf asf asx
|
||||
video/x-ms-wm wm
|
||||
video/x-ms-wmv wmv
|
||||
video/x-ms-wmx wmx
|
||||
video/x-ms-wvx wvx
|
||||
video/x-msvideo avi
|
||||
video/x-sgi-movie movie
|
||||
|
||||
x-conference/x-cooltalk ice
|
||||
|
||||
x-world/x-vrml vrm vrml wrl
|
||||
@ -0,0 +1,95 @@
|
||||
#### Debugging options for org.eclipse.osgi
|
||||
|
||||
# Turn on general debugging for org.eclipse.osgi
|
||||
org.eclipse.osgi/debug=true
|
||||
# Prints out class loading debug information
|
||||
org.eclipse.osgi/debug/loader=false
|
||||
# Prints out event (FrameworkEvent/BundleEvent/ServiceEvent) and listener debug information
|
||||
org.eclipse.osgi/debug/events=false
|
||||
# Prints out OSGi service debug information (registration/getting/ungetting etc.)
|
||||
org.eclipse.osgi/debug/services=false
|
||||
# Prints out bundle manifest parsing debug information
|
||||
org.eclipse.osgi/debug/manifest=false
|
||||
# Prints out LDAP filter debug information
|
||||
org.eclipse.osgi/debug/filter=false
|
||||
# Prints out security (PermissionAdmin service) debug information
|
||||
org.eclipse.osgi/debug/security=false
|
||||
# Prints out start level service debug information
|
||||
org.eclipse.osgi/debug/startlevel=true
|
||||
# Prints out package admin service debug information
|
||||
org.eclipse.osgi/debug/packageadmin=false
|
||||
# Prints out timing information for bundle activation
|
||||
org.eclipse.osgi/debug/bundleTime=false
|
||||
# Debug the loading of message bundles
|
||||
org.eclipse.osgi/debug/messageBundles=false
|
||||
|
||||
# Eclipse adaptor options
|
||||
org.eclipse.osgi/eclipseadaptor/debug = false
|
||||
org.eclipse.osgi/eclipseadaptor/debug/location = false
|
||||
org.eclipse.osgi/eclipseadaptor/debug/platformadmin=false
|
||||
org.eclipse.osgi/eclipseadaptor/debug/platformadmin/resolver=false
|
||||
org.eclipse.osgi/eclipseadaptor/converter/debug = false
|
||||
|
||||
### OSGi resolver options
|
||||
# Turns on debugging for the resolver
|
||||
org.eclipse.osgi/resolver/debug = false
|
||||
# Prints out wiring information after the resolver has completed the resolve process
|
||||
org.eclipse.osgi/resolver/wiring = false
|
||||
# Prints out Import-Package information
|
||||
org.eclipse.osgi/resolver/imports = false
|
||||
# Prints out Require-Bundle information
|
||||
org.eclipse.osgi/resolver/requires = false
|
||||
# Prints out package grouping information form the "uses" clause
|
||||
org.eclipse.osgi/resolver/grouping = false
|
||||
# Prints out cycle information
|
||||
org.eclipse.osgi/resolver/cycles = false
|
||||
# Prints out Eclipse-GenericRequire information
|
||||
org.eclipse.osgi/resolver/generics = false
|
||||
|
||||
#### Profile settings
|
||||
org.eclipse.osgi/profile/startup = false
|
||||
org.eclipse.osgi/profile/benchmark = false
|
||||
org.eclipse.osgi/profile/debug = true
|
||||
|
||||
# Override the default implemenation
|
||||
org.eclipse.osgi/profile/impl = org.eclipse.osgi.internal.profile.DefaultProfileLogger
|
||||
|
||||
# Append all profile messages to the filename specified
|
||||
org.eclipse.osgi/defaultprofile/logfilename =
|
||||
|
||||
# Output all profile log messages synchronously to the jvm console.
|
||||
# By default, all log messages are cached until the log buffer is
|
||||
# requested.
|
||||
org.eclipse.osgi/defaultprofile/logsynchronously = false
|
||||
|
||||
# Specify the size of the default profile implementation log buffer.
|
||||
org.eclipse.osgi/defaultprofile/buffersize = 256
|
||||
|
||||
#### Monitoring settings
|
||||
# monitor class loading
|
||||
org.eclipse.osgi/monitor/classes=false
|
||||
|
||||
# monitor bundle activation
|
||||
org.eclipse.osgi/monitor/activation=false
|
||||
|
||||
# monitor resource bundle (*.properties) loading
|
||||
org.eclipse.osgi/monitor/resources=false
|
||||
|
||||
|
||||
#### Trace settings
|
||||
# trace class loading - snapshot the execution stack when a class is loaded
|
||||
org.eclipse.osgi/trace/classLoading=false
|
||||
|
||||
# trace location - file in which execution traces are written
|
||||
org.eclipse.osgi/trace/filename=runtime.traces
|
||||
|
||||
# trace filters - Java properties file defining which classes should
|
||||
# be traced (if trace/classLoading is true)
|
||||
# File format:
|
||||
# plugins=<comma separated list of plugins whose classes to trace>
|
||||
# packages=<comma separated list of package prefixes of classes to trace>
|
||||
# Note that there may be many 'plugins' and 'packages' lines in one file.
|
||||
org.eclipse.osgi/trace/filters=trace.properties
|
||||
|
||||
# trace bundle activation - snapshot the execution stack when a bundle is activated
|
||||
org.eclipse.osgi/trace/activation=false
|
||||
@ -0,0 +1,165 @@
|
||||
#
|
||||
# Copyright 2009 WSO2, Inc. (http://wso2.com)
|
||||
#
|
||||
# Licensed 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.
|
||||
#
|
||||
|
||||
#
|
||||
# This is the log4j configuration file used by WSO2 Carbon
|
||||
#
|
||||
# IMPORTANT : Please do not remove or change the names of any
|
||||
# of the Appenders defined here. The layout pattern & log file
|
||||
# can be changed using the WSO2 Carbon Management Console, and those
|
||||
# settings will override the settings in this file.
|
||||
#
|
||||
|
||||
log4j.rootLogger=INFO, CARBON_CONSOLE, CARBON_LOGFILE, CARBON_MEMORY, CARBON_SYS_LOG
|
||||
|
||||
log4j.logger.AUDIT_LOG=INFO, AUDIT_LOGFILE
|
||||
log4j.logger.org.apache.axis2.wsdl.codegen.writer.PrettyPrinter=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.axis2.clustering=INFO, CARBON_CONSOLE, CARBON_LOGFILE
|
||||
log4j.logger.org.apache=INFO, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.catalina=WARN
|
||||
log4j.logger.org.apache.tomcat=WARN
|
||||
log4j.logger.org.wso2.carbon.apacheds=WARN
|
||||
log4j.logger.org.apache.directory.server.ldap=ERROR
|
||||
log4j.logger.org.apache.directory.server.core.event=WARN
|
||||
log4j.logger.com.atomikos=INFO,ATOMIKOS
|
||||
log4j.logger.org.quartz=WARN
|
||||
log4j.logger.org.apache.jackrabbit.webdav=WARN
|
||||
log4j.logger.org.apache.juddi=ERROR
|
||||
log4j.logger.org.apache.commons.digester.Digester=WARN
|
||||
log4j.logger.org.apache.jasper.compiler.TldLocationsCache=WARN
|
||||
log4j.logger.org.apache.qpid=WARN
|
||||
log4j.logger.org.apache.qpid.server.Main=INFO
|
||||
log4j.logger.qpid.message=WARN
|
||||
log4j.logger.qpid.message.broker.listening=INFO
|
||||
log4j.logger.org.apache.tiles=WARN
|
||||
log4j.logger.org.apache.commons.httpclient=ERROR
|
||||
log4j.logger.org.apache.coyote=WARN
|
||||
log4j.logger.org.apache.solr=ERROR
|
||||
log4j.logger.me.prettyprint.cassandra.hector.TimingLogger=ERROR
|
||||
log4j.logger.org.wso2=INFO
|
||||
log4j.logger.org.apache.axis2.enterprise=FATAL, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.opensaml.xml=WARN, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.shared.ldap=WARN, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.server.ldap.handlers=WARN, CARBON_LOGFILE, CARBON_MEMORY
|
||||
#Following are to remove false error messages from startup (IS)
|
||||
log4j.logger.org.apache.directory.shared.ldap.entry.DefaultServerAttribute=FATAL, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.server.core.DefaultDirectoryService=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.shared.ldap.ldif.LdifReader=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.server.ldap.LdapProtocolHandler=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.server.core=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.server.ldap.LdapSession=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
#Hive Related Log configurations
|
||||
log4j.logger.DataNucleus=ERROR
|
||||
log4j.logger.Datastore=ERROR
|
||||
log4j.logger.Datastore.Schema=ERROR
|
||||
log4j.logger.JPOX.Datastore=ERROR
|
||||
log4j.logger.JPOX.Plugin=ERROR
|
||||
log4j.logger.JPOX.MetaData=ERROR
|
||||
log4j.logger.JPOX.Query=ERROR
|
||||
log4j.logger.JPOX.General=ERROR
|
||||
log4j.logger.JPOX.Enhancer=ERROR
|
||||
log4j.logger.org.apache.hadoop.hive=WARN
|
||||
log4j.logger.hive=WARN
|
||||
log4j.logger.ExecMapper=WARN
|
||||
log4j.logger.ExecReducer=WARN
|
||||
log4j.logger.net.sf.ehcache.config.ConfigurationFactory=ERROR
|
||||
|
||||
log4j.logger.trace.messages=TRACE,CARBON_TRACE_LOGFILE
|
||||
|
||||
log4j.additivity.org.apache.axis2.clustering=false
|
||||
log4j.additivity.com.atomikos=false
|
||||
log4j.additivity.org.apache=false
|
||||
|
||||
# CARBON_CONSOLE is set to be a ConsoleAppender using a PatternLayout.
|
||||
log4j.appender.CARBON_CONSOLE=org.wso2.carbon.utils.logging.appenders.CarbonConsoleAppender
|
||||
log4j.appender.CARBON_CONSOLE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
|
||||
# ConversionPattern will be overridden by the configuration setting in the DB
|
||||
log4j.appender.CARBON_CONSOLE.layout.ConversionPattern=[%d] %P%5p {%c} - %x %m%n
|
||||
log4j.appender.CARBON_CONSOLE.layout.TenantPattern=%U%@%D[%T]
|
||||
log4j.appender.CARBON_CONSOLE.threshold=DEBUG
|
||||
|
||||
# CARBON_MEMORY is set to be a MemoryAppender using a PatternLayout.
|
||||
log4j.appender.CARBON_MEMORY=org.wso2.carbon.utils.logging.appenders.MemoryAppender
|
||||
log4j.appender.CARBON_MEMORY.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.CARBON_MEMORY.bufferSize=200
|
||||
# ConversionPattern will be overridden by the configuration setting in the DB
|
||||
#log4j.appender.CARBON_MEMORY.layout.ConversionPattern=[%d] %5p - %x %m {%c}%n
|
||||
log4j.appender.CARBON_MEMORY.layout.ConversionPattern=[%d] %5p {%c} - %x %m %n
|
||||
log4j.appender.CARBON_MEMORY.threshold=DEBUG
|
||||
|
||||
|
||||
# CARBON_LOGFILE is set to be a DailyRollingFileAppender using a PatternLayout.
|
||||
log4j.appender.CARBON_LOGFILE=org.wso2.carbon.utils.logging.appenders.CarbonDailyRollingFileAppender
|
||||
# Log file will be overridden by the configuration setting in the DB
|
||||
# This path should be relative to WSO2 Carbon Home
|
||||
log4j.appender.CARBON_LOGFILE.File=${carbon.home}/repository/logs/${instance.log}/wso2carbon${instance.log}.log
|
||||
log4j.appender.CARBON_LOGFILE.Append=true
|
||||
log4j.appender.CARBON_LOGFILE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
|
||||
# ConversionPattern will be overridden by the configuration setting in the DB
|
||||
log4j.appender.CARBON_LOGFILE.layout.ConversionPattern=TID: [%T] [%S] [%d] %P%5p {%c} - %x %m %n
|
||||
log4j.appender.CARBON_LOGFILE.layout.TenantPattern=%U%@%D [%T] [%S]
|
||||
log4j.appender.CARBON_LOGFILE.threshold=DEBUG
|
||||
|
||||
log4j.appender.CARBON_SYS_LOG = org.apache.log4j.net.SyslogAppender
|
||||
log4j.appender.CARBON_SYS_LOG.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.CARBON_SYS_LOG.layout.ConversionPattern=[%d] %5p {%c} - %x %m %n
|
||||
log4j.appender.CARBON_SYS_LOG.SyslogHost=localhost
|
||||
log4j.appender.CARBON_SYS_LOG.Facility=USER
|
||||
log4j.appender.CARBON_SYS_LOG.threshold=DEBUG
|
||||
|
||||
# LOGEVENT is set to be a LogEventAppender using a PatternLayout to send logs to LOGEVENT
|
||||
log4j.appender.LOGEVENT=org.wso2.carbon.logging.service.appender.LogEventAppender
|
||||
log4j.appender.LOGEVENT.url=tcp://10.100.3.103:7611
|
||||
log4j.appender.LOGEVENT.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
|
||||
log4j.appender.LOGEVENT.columnList=%T,%S,%A,%d,%c,%p,%m,%H,%I,%Stacktrace
|
||||
log4j.appender.LOGEVENT.userName=admin
|
||||
log4j.appender.LOGEVENT.password=admin
|
||||
#log4j.appender.LOGEVENT.password=secretAlias:Log4j.Appender.LOGEVENT.Password
|
||||
|
||||
# Appender config to CARBON_TRACE_LOGFILE
|
||||
log4j.appender.CARBON_TRACE_LOGFILE=org.apache.log4j.DailyRollingFileAppender
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.File=${carbon.home}/repository/logs/${instance.log}/wso2carbon-trace-messages${instance.log}.log
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.Append=true
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.layout.ConversionPattern=[%d] %P%5p {%c} - %x %m %n
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.layout.TenantPattern=%U%@%D [%T] [%S]
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.threshold=TRACE
|
||||
log4j.additivity.trace.messages=false
|
||||
|
||||
# Appender config to AUDIT_LOGFILE
|
||||
log4j.appender.AUDIT_LOGFILE=org.apache.log4j.DailyRollingFileAppender
|
||||
log4j.appender.AUDIT_LOGFILE.File=${carbon.home}/repository/logs/audit.log
|
||||
log4j.appender.AUDIT_LOGFILE.Append=true
|
||||
log4j.appender.AUDIT_LOGFILE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
|
||||
log4j.appender.AUDIT_LOGFILE.layout.ConversionPattern=[%d] %P%5p {%c}- %x %m %n
|
||||
log4j.appender.AUDIT_LOGFILE.layout.TenantPattern=%U%@%D [%T] [%S]
|
||||
log4j.appender.AUDIT_LOGFILE.threshold=INFO
|
||||
log4j.additivity.AUDIT_LOG=false
|
||||
|
||||
# Appender config to send Atomikos transaction logs to new log file tm.out.
|
||||
log4j.appender.ATOMIKOS = org.apache.log4j.RollingFileAppender
|
||||
log4j.appender.ATOMIKOS.File = repository/logs/tm.out
|
||||
log4j.appender.ATOMIKOS.Append = true
|
||||
log4j.appender.ATOMIKOS.layout = org.apache.log4j.PatternLayout
|
||||
log4j.appender.ATOMIKOS.layout.ConversionPattern=%p %t %c - %m%n
|
||||
|
||||
# This file is used to override the default logger settings, and is used to remove unwanted logs from Shindig appearing on the console.
|
||||
|
||||
# Specification of Handler used by Console Logger
|
||||
handlers=java.util.logging.ConsoleHandler
|
||||
|
||||
# Replacing default INFO level with SEVERE
|
||||
java.util.logging.ConsoleHandler.level=SEVERE
|
||||
@ -0,0 +1,100 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
<wso2registry>
|
||||
|
||||
<!--
|
||||
For details on configuring different config & governance registries see;
|
||||
http://wso2.org/library/tutorials/2010/04/sharing-registry-space-across-multiple-product-instances
|
||||
-->
|
||||
|
||||
<currentDBConfig>wso2registry</currentDBConfig>
|
||||
<readOnly>false</readOnly>
|
||||
<enableCache>true</enableCache>
|
||||
<registryRoot>/</registryRoot>
|
||||
|
||||
<dbConfig name="wso2registry">
|
||||
<dataSource>jdbc/WSO2CarbonDB</dataSource>
|
||||
</dbConfig>
|
||||
|
||||
<!--<handler class="org.wso2.carbon.registry.extensions.handlers.SynapseRepositoryHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/vnd.apache.synapse</property>
|
||||
</filter>
|
||||
</handler>
|
||||
|
||||
<handler class="org.wso2.carbon.registry.extensions.handlers.SynapseRepositoryHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/vnd.apache.esb</property>
|
||||
</filter>
|
||||
</handler>
|
||||
|
||||
<handler class="org.wso2.carbon.registry.extensions.handlers.Axis2RepositoryHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/vnd.apache.axis2</property>
|
||||
</filter>
|
||||
</handler>
|
||||
|
||||
<handler class="org.wso2.carbon.registry.extensions.handlers.Axis2RepositoryHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/vnd.apache.wsas</property>
|
||||
</filter>
|
||||
</handler>
|
||||
|
||||
<handler class="org.wso2.carbon.registry.extensions.handlers.WSDLMediaTypeHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/wsdl+xml</property>
|
||||
</filter>
|
||||
</handler>
|
||||
|
||||
<handler class="org.wso2.carbon.registry.extensions.handlers.XSDMediaTypeHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/x-xsd+xml</property>
|
||||
</filter>
|
||||
</handler> -->
|
||||
|
||||
<!--remoteInstance url="https://localhost:9443/registry">
|
||||
<id>instanceid</id>
|
||||
<username>username</username>
|
||||
<password>password</password>
|
||||
</remoteInstance-->
|
||||
|
||||
<!--remoteInstance url="https://localhost:9443/registry">
|
||||
<id>instanceid</id>
|
||||
<dbConfig>wso2registry</dbConfig>
|
||||
<readOnly>false</readOnly>
|
||||
<enableCache>true</enableCache>
|
||||
<registryRoot>/</registryRoot>
|
||||
</remoteInstance-->
|
||||
|
||||
<!--mount path="/_system/config" overwrite="true|false|virtual">
|
||||
<instanceId>instanceid</instanceId>
|
||||
<targetPath>/_system/nodes</targetPath>
|
||||
</mount-->
|
||||
|
||||
|
||||
<versionResourcesOnChange>false</versionResourcesOnChange>
|
||||
|
||||
<!-- NOTE: You can edit the options under "StaticConfiguration" only before the
|
||||
startup. -->
|
||||
<staticConfiguration>
|
||||
<versioningProperties>true</versioningProperties>
|
||||
<versioningComments>true</versioningComments>
|
||||
<versioningTags>true</versioningTags>
|
||||
<versioningRatings>true</versioningRatings>
|
||||
</staticConfiguration>
|
||||
</wso2registry>
|
||||
@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<!--
|
||||
This is the configuration file for Carbon authenticators. All the authenticator related configurations
|
||||
should go here.
|
||||
-->
|
||||
<Authenticators xmlns="http://wso2.org/projects/carbon/authenticators.xml">
|
||||
|
||||
<!-- Authenticator Configurations for TokenUIAuthenticator -->
|
||||
<Authenticator name="TokenUIAuthenticator" disabled="true">
|
||||
<Priority>5</Priority>
|
||||
</Authenticator>
|
||||
|
||||
<!-- Authenticator Configurations for SAML2SSOAuthenticator -->
|
||||
<Authenticator name="SAML2SSOAuthenticator" disabled="true">
|
||||
<Priority>10</Priority>
|
||||
<Config>
|
||||
<Parameter name="LoginPage">/carbon/admin/login.jsp</Parameter>
|
||||
<Parameter name="ServiceProviderID">carbonServer</Parameter>
|
||||
<Parameter name="IdentityProviderSSOServiceURL">https://localhost:9443/samlsso</Parameter>
|
||||
<Parameter name="NameIDPolicyFormat">urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</Parameter>
|
||||
|
||||
<!-- <Parameter name="IdPCertAlias">wso2carbon</Parameter> -->
|
||||
<!-- <Parameter name="ResponseSignatureValidationEnabled">false</Parameter> -->
|
||||
<!-- <Parameter name="LoginAttributeName"></Parameter> -->
|
||||
<!-- <Parameter name="RoleClaimAttribute"></Parameter> -->
|
||||
<!-- <Parameter name="AttributeValueSeparator">,</Parameter> -->
|
||||
|
||||
<!-- <Parameter name="JITUserProvisioning">true</Parameter> -->
|
||||
<!-- <Parameter name="ProvisioningDefaultUserstore">PRIMARY</Parameter> -->
|
||||
<!-- <Parameter name="ProvisioningDefaultRole">admin</Parameter> -->
|
||||
<!-- <Parameter name="IsSuperAdminRoleRequired">true</Parameter> -->
|
||||
</Config>
|
||||
|
||||
<!-- If this authenticator should skip any URI from authentication, specify it under "SkipAuthentication"
|
||||
<SkipAuthentication>
|
||||
<UrlContains></UrlContains>
|
||||
</SkipAuthentication> -->
|
||||
|
||||
<!-- If this authenticator should skip any URI from session validation, specify it under "SkipAuthentication
|
||||
<SkipSessionValidation>
|
||||
<UrlContains></UrlContains>
|
||||
</SkipSessionValidation> -->
|
||||
</Authenticator>
|
||||
|
||||
<!-- Authenticator Configurations for MutualSSLAuthenticator -->
|
||||
<!--Authenticator name="MutualSSLAuthenticator" disabled="false">
|
||||
<Priority>5</Priority>
|
||||
<Config>
|
||||
<Parameter name="UsernameHeader">UserName</Parameter>
|
||||
<Parameter name="WhiteListEnabled">false</Parameter>
|
||||
<Parameter name="WhiteList"/>
|
||||
</Config>
|
||||
</Authenticator-->
|
||||
|
||||
</Authenticators>
|
||||
|
||||
@ -0,0 +1,31 @@
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<!-- The contents of this file will be loaded for each web application -->
|
||||
<Context privileged="true" allowLinking="true">
|
||||
|
||||
<!-- Default set of monitored resources -->
|
||||
<WatchedResource>WEB-INF/web.xml</WatchedResource>
|
||||
|
||||
<!-- comment this out to enable session persistence across Tomcat restarts -->
|
||||
<Manager pathname="" />
|
||||
|
||||
<JarScanner className="org.wso2.carbon.tomcat.ext.scan.CarbonTomcatJarScanner" scanClassPath="true" scanAllFiles="false" scanAllDirectories="false"/>
|
||||
|
||||
<!-- Following are default values. But we specifically add them in kernel, becuase they get overridden in WSO2 AS -->
|
||||
<Loader className="org.apache.catalina.loader.WebappLoader" loaderClass="org.apache.catalina.loader.WebappClassLoader" />
|
||||
|
||||
</Context>
|
||||
@ -0,0 +1,61 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
~ Copyright (c) 2005-2010, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
~
|
||||
~ WSO2 Inc. 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.
|
||||
-->
|
||||
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
|
||||
"http://java.sun.com/dtd/web-app_2_3.dtd">
|
||||
<web-app id="WebApp">
|
||||
|
||||
<servlet id="bridge">
|
||||
<servlet-name>bridgeservlet</servlet-name>
|
||||
<display-name>Carbon Bridge Servlet</display-name>
|
||||
<description>Carbon Bridge Servlet</description>
|
||||
<servlet-class>org.wso2.carbon.tomcat.ext.servlet.DelegationServlet</servlet-class>
|
||||
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>bridgeservlet</servlet-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!--
|
||||
This is required if your application bundles expose JSPs.
|
||||
-->
|
||||
<servlet-mapping>
|
||||
<servlet-name>bridgeservlet</servlet-name>
|
||||
<url-pattern>*.jsp</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!--This is for performing the character encoding in the JSPs. -->
|
||||
<filter>
|
||||
<filter-name>CharsetFilter</filter-name>
|
||||
<filter-class>org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter</filter-class>
|
||||
<init-param>
|
||||
<param-name>requestEncoding</param-name>
|
||||
<param-value>UTF-8</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>CharsetFilter</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<session-config>
|
||||
<session-timeout>15</session-timeout>
|
||||
</session-config>
|
||||
</web-app>
|
||||
@ -0,0 +1,97 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<Server port="8005" shutdown="SHUTDOWN">
|
||||
|
||||
<Service className="org.wso2.carbon.tomcat.ext.service.ExtendedStandardService" name="Catalina">
|
||||
|
||||
<!--
|
||||
optional attributes:
|
||||
|
||||
proxyPort="80"
|
||||
-->
|
||||
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
|
||||
port="9763"
|
||||
redirectPort="9443"
|
||||
bindOnInit="false"
|
||||
maxHttpHeaderSize="8192"
|
||||
acceptorThreadCount="2"
|
||||
maxThreads="250"
|
||||
minSpareThreads="50"
|
||||
disableUploadTimeout="false"
|
||||
connectionUploadTimeout="120000"
|
||||
maxKeepAliveRequests="200"
|
||||
acceptCount="200"
|
||||
server="WSO2 Carbon Server"
|
||||
compression="on"
|
||||
compressionMinSize="2048"
|
||||
noCompressionUserAgents="gozilla, traviata"
|
||||
compressableMimeType="text/html,text/javascript,application/x-javascript,application/javascript,application/xml,text/css,application/xslt+xml,text/xsl,image/gif,image/jpg,image/jpeg"
|
||||
URIEncoding="UTF-8"/>
|
||||
|
||||
<!--
|
||||
optional attributes:
|
||||
|
||||
proxyPort="443"
|
||||
-->
|
||||
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
|
||||
port="9443"
|
||||
bindOnInit="false"
|
||||
sslProtocol="TLS"
|
||||
maxHttpHeaderSize="8192"
|
||||
acceptorThreadCount="2"
|
||||
maxThreads="250"
|
||||
minSpareThreads="50"
|
||||
disableUploadTimeout="false"
|
||||
enableLookups="false"
|
||||
connectionUploadTimeout="120000"
|
||||
maxKeepAliveRequests="200"
|
||||
acceptCount="200"
|
||||
server="WSO2 Carbon Server"
|
||||
clientAuth="false"
|
||||
compression="on"
|
||||
scheme="https"
|
||||
secure="true"
|
||||
SSLEnabled="true"
|
||||
compressionMinSize="2048"
|
||||
noCompressionUserAgents="gozilla, traviata"
|
||||
compressableMimeType="text/html,text/javascript,application/x-javascript,application/javascript,application/xml,text/css,application/xslt+xml,text/xsl,image/gif,image/jpg,image/jpeg"
|
||||
keystoreFile="${carbon.home}/repository/resources/security/wso2carbon.jks"
|
||||
keystorePass="wso2carbon"
|
||||
URIEncoding="UTF-8"/>
|
||||
|
||||
|
||||
|
||||
<Engine name="Catalina" defaultHost="localhost">
|
||||
|
||||
<!--Realm className="org.apache.catalina.realm.MemoryRealm" pathname="${carbon.home}/repository/conf/tomcat/tomcat-users.xml"/-->
|
||||
|
||||
<Realm className="org.wso2.carbon.tomcat.ext.realms.CarbonTomcatRealm"/>
|
||||
|
||||
<Host name="localhost" unpackWARs="true" deployOnStartup="false" autoDeploy="false" appBase="${carbon.home}/repository/deployment/server/webapps/">
|
||||
<Valve className="org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve"/>
|
||||
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="${carbon.home}/repository/logs"
|
||||
prefix="http_access_" suffix=".log"
|
||||
pattern="combined" />
|
||||
<Valve className="org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve" threshold="600"/>
|
||||
<Valve className="org.wso2.carbon.tomcat.ext.valves.CompositeValve"/>
|
||||
</Host>
|
||||
</Engine>
|
||||
</Service>
|
||||
</Server>
|
||||
|
||||
@ -0,0 +1,16 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<!--
|
||||
This is the standard tomcat-users.xml file which can be used for definig users & roles. This
|
||||
is applicable to webapps only, and will be used only if the Security/TomcatRealm entry in the
|
||||
carbon.xml is set to Memory
|
||||
-->
|
||||
<tomcat-users>
|
||||
<role rolename="manager"/>
|
||||
<role rolename="tomcat"/>
|
||||
<role rolename="role1"/>
|
||||
<role rolename="admin"/>
|
||||
<user username="both" password="tomcat" roles="tomcat,role1"/>
|
||||
<user username="tomcat" password="tomcat" roles="tomcat"/>
|
||||
<user username="admin" password="admin" roles="tomcat,manager,admin"/>
|
||||
<user username="role1" password="tomcat" roles="role1"/>
|
||||
</tomcat-users>
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,379 @@
|
||||
<!--
|
||||
~ Copyright WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<UserManager>
|
||||
<Realm>
|
||||
<Configuration>
|
||||
<AddAdmin>true</AddAdmin>
|
||||
<AdminRole>admin</AdminRole>
|
||||
<AdminUser>
|
||||
<UserName>admin</UserName>
|
||||
<Password>admin</Password>
|
||||
</AdminUser>
|
||||
<EveryOneRoleName>everyone</EveryOneRoleName> <!-- By default users in this role sees the registry root -->
|
||||
<Property name="dataSource">jdbc/WSO2CarbonDB</Property>
|
||||
</Configuration>
|
||||
<!-- Following is the default user store manager. This user store manager is based on embedded-apacheds LDAP. It reads/writes users and roles into the default apacheds LDAP user store. Descriptions about each of the following properties can be found in user management documentation of the respective product. In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>
|
||||
Note: Do not comment within UserStoreManager tags. Cause, specific tag names are used as tokens when building configurations for products. -->
|
||||
<!--UserStoreManager class="org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
|
||||
<Property name="ConnectionURL">ldap://localhost:${Ports.EmbeddedLDAP.LDAPServerPort}</Property>
|
||||
<Property name="ConnectionName">uid=admin,ou=system</Property>
|
||||
<Property name="ConnectionPassword">admin</Property>
|
||||
<Property name="LDAPConnectionTimeout">5000</Property>
|
||||
<Property name="Disabled">false</Property>
|
||||
<Property name="PasswordHashMethod">SHA</Property>
|
||||
<Property name="UserNameListFilter">(objectClass=person)</Property>
|
||||
<Property name="UserEntryObjectClass">wso2Person</Property>
|
||||
<Property name="UserSearchBase">ou=Users,dc=wso2,dc=org</Property>
|
||||
<Property name="UserNameSearchFilter">(&(objectClass=person)(uid=?))</Property>
|
||||
<Property name="UserNameAttribute">uid</Property>
|
||||
<Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegExViolationErrorMsg">Password length should be between 5 to 30 characters</Property>
|
||||
<Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="WriteGroups">true</Property>
|
||||
<Property name="EmptyRolesAllowed">true</Property>
|
||||
<Property name="GroupSearchBase">ou=Groups,dc=wso2,dc=org</Property>
|
||||
<Property name="GroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="GroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="GroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="GroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property>
|
||||
<Property name="SharedGroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="SharedGroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="SharedGroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="SharedTenantNameListFilter">(objectClass=organizationalUnit)</Property>
|
||||
<Property name="SharedTenantNameAttribute">ou</Property>
|
||||
<Property name="SharedTenantObjectClass">organizationalUnit</Property>
|
||||
<Property name="MembershipAttribute">member</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="UserDNPattern">uid={0},ou=Users,dc=wso2,dc=org</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="SCIMEnabled">false</Property>
|
||||
<Property name="ConnectionPoolingEnabled">false</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</UserStoreManager-->
|
||||
|
||||
<!-- Following is the configuration for internal JDBC user store. This user store manager is based on JDBC. In case if application needs to manage passwords externally set property <Property name="PasswordsExternallyManaged">true</Property>. In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>. Furthermore properties, IsEmailUserName and DomainCalculation are readonly properties.
|
||||
Note: Do not comment within UserStoreManager tags. Cause, specific tag names are used as tokens when building configurations for products. -->
|
||||
<UserStoreManager class="org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.JDBCTenantManager</Property>
|
||||
<Property name="ReadOnly">false</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="IsEmailUserName">false</Property>
|
||||
<Property name="DomainCalculation">default</Property>
|
||||
<Property name="PasswordDigest">SHA-256</Property>
|
||||
<Property name="StoreSaltedPassword">true</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="WriteGroups">true</Property>
|
||||
<Property name="UserNameUniqueAcrossTenants">false</Property>
|
||||
<Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegExViolationErrorMsg">Password length should be between 5 to 30 characters</Property>
|
||||
<Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaRegEx">^[^~!#$;%^*+={}\\|\\\\<>,\'\"]{3,30}$</Property>
|
||||
<Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="SharedGroupEnabled">false</Property>
|
||||
<Property name="SCIMEnabled">false</Property>
|
||||
<Property name="CaseSensitiveUsername">true</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</UserStoreManager>
|
||||
|
||||
<!-- If product is using an external LDAP as the user store in READ ONLY mode, use following user manager.
|
||||
In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>
|
||||
-->
|
||||
<!--UserStoreManager class="org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
|
||||
<Property name="ReadOnly">true</Property>
|
||||
<Property name="Disabled">false</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="ConnectionURL">ldap://localhost:10389</Property>
|
||||
<Property name="ConnectionName">uid=admin,ou=system</Property>
|
||||
<Property name="ConnectionPassword">admin</Property>
|
||||
<Property name="LDAPConnectionTimeout">5000</Property>
|
||||
<Property name="PasswordHashMethod">PLAIN_TEXT</Property>
|
||||
<Property name="UserSearchBase">ou=system</Property>
|
||||
<Property name="UserNameListFilter">(objectClass=person)</Property>
|
||||
<Property name="UserNameSearchFilter">(&(objectClass=person)(uid=?))</Property>
|
||||
<Property name="UserNameAttribute">uid</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="GroupSearchBase">ou=system</Property>
|
||||
<Property name="GroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="GroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="GroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property>
|
||||
<Property name="SharedGroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="SharedTenantNameListFilter">(objectClass=organizationalUnit)</Property>
|
||||
<Property name="SharedTenantNameAttribute">ou</Property>
|
||||
<Property name="SharedTenantObjectClass">organizationalUnit</Property>
|
||||
<Property name="MembershipAttribute">member</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="ReplaceEscapeCharactersAtUserLogin">true</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="SCIMEnabled">false</Property>
|
||||
<Property name="ConnectionPoolingEnabled">false</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</UserStoreManager-->
|
||||
|
||||
<!-- Active directory configuration is as follows.
|
||||
In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>
|
||||
There are few special properties for "Active Directory".
|
||||
They are :
|
||||
1.Referral - (comment out this property if this feature is not reuired) This enables LDAP referral support.
|
||||
2.BackLinksEnabled - (Do not comment, set to true or false) In some cases LDAP works with BackLinksEnabled. In which role is stored
|
||||
at user level. Depending on this value we need to change the Search Base within code.
|
||||
3.isADLDSRole - (Do not comment) Set to true if connecting to an AD LDS instance else set to false.
|
||||
-->
|
||||
<!--UserStoreManager class="org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
|
||||
<Property name="defaultRealmName">WSO2.ORG</Property>
|
||||
<Property name="Disabled">false</Property>
|
||||
<Property name="kdcEnabled">false</Property>
|
||||
<Property name="ConnectionURL">ldaps://10.100.1.100:636</Property>
|
||||
<Property name="ConnectionName">CN=admin,CN=Users,DC=WSO2,DC=Com</Property>
|
||||
<Property name="ConnectionPassword">A1b2c3d4</Property>
|
||||
<Property name="LDAPConnectionTimeout">5000</Property>
|
||||
<Property name="PasswordHashMethod">PLAIN_TEXT</Property>
|
||||
<Property name="UserSearchBase">CN=Users,DC=WSO2,DC=Com</Property>
|
||||
<Property name="UserEntryObjectClass">user</Property>
|
||||
<Property name="UserNameAttribute">cn</Property>
|
||||
<Property name="MemberOfAttribute">memberOf</Property>
|
||||
<Property name="Referral">follow</Property>
|
||||
<Property name="isADLDSRole">false</Property>
|
||||
<Property name="userAccountControl">512</Property>
|
||||
<Property name="UserNameListFilter">(objectClass=user)</Property>
|
||||
<Property name="UserNameSearchFilter">(&(objectClass=user)(cn=?))</Property>
|
||||
<Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegExViolationErrorMsg">Password length should be between 5 to 30 characters</Property>
|
||||
<Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="WriteGroups">true</Property>
|
||||
<Property name="EmptyRolesAllowed">true</Property>
|
||||
<Property name="GroupSearchBase">CN=Users,DC=WSO2,DC=Com</Property>
|
||||
<Property name="GroupEntryObjectClass">group</Property>
|
||||
<Property name="GroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property>
|
||||
<Property name="SharedGroupEntryObjectClass">groups</Property>
|
||||
<Property name="SharedTenantNameListFilter">(object=organizationalUnit)</Property>
|
||||
<Property name="SharedTenantNameAttribute">ou</Property>
|
||||
<Property name="SharedTenantObjectClass">organizationalUnit</Property>
|
||||
<Property name="MembershipAttribute">member</Property>
|
||||
<Property name="GroupNameListFilter">(objectcategory=group)</Property>
|
||||
<Property name="GroupNameSearchFilter">(&(objectClass=group)(cn=?))</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="Referral">follow</Property>
|
||||
<Property name="BackLinksEnabled">true</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="SCIMEnabled">false</Property>
|
||||
<Property name="ConnectionPoolingEnabled">false</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</UserStoreManager-->
|
||||
|
||||
<!-- If product is using an external LDAP as the user store in read/write mode, use following user manager
|
||||
In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>
|
||||
-->
|
||||
<!--UserStoreManager class="org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
|
||||
<Property name="ConnectionURL">ldap://localhost:10389</Property>
|
||||
<Property name="Disabled">false</Property>
|
||||
<Property name="ConnectionName">uid=admin,ou=system</Property>
|
||||
<Property name="ConnectionPassword">secret</Property>
|
||||
<Property name="LDAPConnectionTimeout">5000</Property>
|
||||
<Property name="PasswordHashMethod">PLAIN_TEXT</Property>
|
||||
<Property name="UserNameListFilter">(objectClass=person)</Property>
|
||||
<Property name="UserEntryObjectClass">inetOrgPerson</Property>
|
||||
<Property name="UserSearchBase">ou=system</Property>
|
||||
<Property name="UserNameSearchFilter">(&(objectClass=person)(uid=?))</Property>
|
||||
<Property name="UserNameAttribute">uid</Property>
|
||||
<Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegExViolationErrorMsg">Password length should be between 5 to 30 characters</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="WriteGroups">true</Property>
|
||||
<Property name="EmptyRolesAllowed">false</Property>
|
||||
<Property name="GroupSearchBase">ou=system</Property>
|
||||
<Property name="GroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="GroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="GroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="GroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property>
|
||||
<Property name="SharedGroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="SharedGroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="SharedGroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="SharedTenantNameListFilter">(objectClass=organizationalUnit)</Property>
|
||||
<Property name="SharedTenantNameAttribute">ou</Property>
|
||||
<Property name="SharedTenantObjectClass">organizationalUnit</Property>
|
||||
<Property name="MembershipAttribute">member</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="ReplaceEscapeCharactersAtUserLogin">true</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="SCIMEnabled">false</Property>
|
||||
<Property name="ConnectionPoolingEnabled">false</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</UserStoreManager-->
|
||||
|
||||
<!-- Following user manager is used by Identity Server (IS) as its default user manager.
|
||||
IS will do token replacement when building the product. Therefore do not change the syntax.
|
||||
If "kdcEnabled" parameter is true, IS will allow service principle management. Thus "ServicePasswordJavaRegEx", "ServiceNameJavaRegEx"
|
||||
properties control the service name format and service password formats.
|
||||
In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>
|
||||
-->
|
||||
<!--ISUserStoreManager class="org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
|
||||
<Property name="defaultRealmName">WSO2.ORG</Property>
|
||||
<Property name="kdcEnabled">false</Property>
|
||||
<Property name="Disabled">false</Property>
|
||||
<Property name="ConnectionURL">ldap://localhost:${Ports.EmbeddedLDAP.LDAPServerPort}</Property>
|
||||
<Property name="ConnectionName">uid=admin,ou=system</Property>
|
||||
<Property name="ConnectionPassword">admin</Property>
|
||||
<Property name="LDAPConnectionTimeout">5000</Property>
|
||||
<Property name="PasswordHashMethod">SHA</Property>
|
||||
<Property name="UserNameListFilter">(objectClass=person)</Property>
|
||||
<Property name="UserEntryObjectClass">identityPerson</Property>
|
||||
<Property name="UserSearchBase">ou=Users,dc=wso2,dc=org</Property>
|
||||
<Property name="UserNameSearchFilter">(&(objectClass=person)(uid=?))</Property>
|
||||
<Property name="UserNameAttribute">uid</Property>
|
||||
<Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="ServicePasswordJavaRegEx">^[\\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegExViolationErrorMsg">Password length should be between 5 to 30 characters</Property>
|
||||
<Property name="ServiceNameJavaRegEx">^[\\S]{2,30}/[\\S]{2,30}$</Property>
|
||||
<Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="WriteGroups">true</Property>
|
||||
<Property name="EmptyRolesAllowed">true</Property>
|
||||
<Property name="GroupSearchBase">ou=Groups,dc=wso2,dc=org</Property>
|
||||
<Property name="GroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="GroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="GroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="GroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property>
|
||||
<Property name="SharedGroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="SharedGroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="SharedGroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="SharedTenantNameListFilter">(objectClass=organizationalUnit)</Property>
|
||||
<Property name="SharedTenantNameAttribute">ou</Property>
|
||||
<Property name="SharedTenantObjectClass">organizationalUnit</Property>
|
||||
<Property name="MembershipAttribute">member</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="UserDNPattern">uid={0},ou=Users,dc=wso2,dc=org</Property>
|
||||
<Property name="RoleDNPattern">cn={0},ou=Groups,dc=wso2,dc=org</Property>
|
||||
<Property name="SCIMEnabled">true</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="ConnectionPoolingEnabled">false</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</ISUserStoreManager-->
|
||||
|
||||
<!-- Following configuration is for the CassandraUserStoreManager. The CassandraUserStoreManager is capable of using a Cassandra
|
||||
database as a user store. This user manager supports multiple credentials for authentication. Credential types can be defined
|
||||
and configured in the following configuration. The CassandraUserStoreManager does not ships with the any of the WSO2 Carbon
|
||||
Servers by default, therefor Cassandra user manager component needs to be installed to the Carbon Server befor using.
|
||||
|
||||
And if this CassandraUserStoreManager is used as the primary user store with multi tenants, it should also implement a
|
||||
compatible TenantManager and set property <Property name="TenantManager">FULL_QUALIFIED_TENANT_MANAGER_CLASS_NAME</Property>.
|
||||
-->
|
||||
<!--UserStoreManager class="org.wso2.carbon.user.cassandra.CassandraUserStoreManager">
|
||||
<Property name="Keyspace">User_KS3</Property>
|
||||
<Property name="Host">localhost</Property>
|
||||
<Property name="Port">9160</Property>
|
||||
<Property name="PasswordDigest">SHA-256</Property>
|
||||
<Property name="StoreSaltedPassword">true</Property>
|
||||
<Property name="AuthenticateWithAnyCredential">true</Property>
|
||||
<Property name="DomainName">multipleCredentialUserStoreDomain</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
<MultipleCredentials>
|
||||
<Credential type="Default">org.wso2.carbon.user.cassandra.credentialtypes.EmailCredential</Credential>
|
||||
<Credential type="Email">org.wso2.carbon.user.cassandra.credentialtypes.EmailCredential</Credential>
|
||||
<Credential type="PhoneNumber">org.wso2.carbon.user.cassandra.credentialtypes.PhoneNumberCredential</Credential>
|
||||
<Credential type="Device">org.wso2.carbon.user.cassandra.credentialtypes.DeviceCredential</Credential>
|
||||
<Credential type="External">org.wso2.carbon.user.cassandra.credentialtypes.ExternalProviderCredential</Credential>
|
||||
</MultipleCredentials>
|
||||
</UserStoreManager-->
|
||||
|
||||
<AuthorizationManager
|
||||
class="org.wso2.carbon.user.core.authorization.JDBCAuthorizationManager">
|
||||
<Property name="AdminRoleManagementPermissions">/permission</Property>
|
||||
<Property name="AuthorizationCacheEnabled">true</Property>
|
||||
<Property name="GetAllRolesOfUserEnabled">true</Property>
|
||||
</AuthorizationManager>
|
||||
</Realm>
|
||||
</UserManager>
|
||||
|
||||
<!--*******Description of some of the configuration properties used in user-mgt.xml*********************************
|
||||
|
||||
DomainName - This property must be used by all secondary user store managers in multiple user store configuration.
|
||||
DomainName is a unique identifier given to the user store. Users must provide both the domain name and
|
||||
username at log-in as "DomainName\Username"
|
||||
|
||||
UserRolesCacheEnabled - This is to indicate whether to cache role list of a user. By default it is set to true.
|
||||
You may need to disable it if user-roles are changed by external means and need to reflect
|
||||
those changes in the carbon product immediately.
|
||||
|
||||
ReplaceEscapeCharactersAtUserLogin - This is to configure whether escape characters in user name needs to be replaced at user login.
|
||||
Currently the identified escape characters that needs to be replaced are '\' & '\\'
|
||||
|
||||
UserDNPattern - This property will be used when authenticating users. During authentication we do a bind. But if the user is login with
|
||||
email address or some other property we need to first lookup LDAP and retreive DN for the user. This involves an additional step.
|
||||
If UserDNPattern is specified the DN will be contructed using the pattern specified in this property. Performance of this is much better than looking
|
||||
up DN and binding user.
|
||||
|
||||
RoleDNPattern - This property will be used when checking whether user has been assigned to a given role. Rather than searching the role in search base, by
|
||||
using this property direct search can be done.
|
||||
|
||||
PasswordHashMethod - This says how the password should be stored. Allowed values are as follows,
|
||||
SHA - Uses SHA digest method
|
||||
MD5 - Uses MD 5 digest method
|
||||
PLAIN_TEXT - Plain text passwords
|
||||
In addition to above this supports all digest methods supported by http://docs.oracle.com/javase/6/docs/api/java/security/MessageDigest.html.
|
||||
|
||||
DisplayNameAttribute - this is to have a dedicated LDAP attribute to display an entity(User/Role) in UI, in addition to the UserNameAttribute which is used for IS-UserStore interactions.
|
||||
-->
|
||||
@ -50,18 +50,6 @@ CREATE TABLE IF NOT EXISTS DM_PROFILE_OPERATION (
|
||||
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DM_DEVICE_OPERATION_MAPPING (
|
||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||
DEVICE_ID INTEGER NOT NULL,
|
||||
OPERATION_ID INTEGER NOT NULL,
|
||||
STATUS VARCHAR(50) NULL,
|
||||
PRIMARY KEY (ID),
|
||||
CONSTRAINT fk_dm_device_operation_mapping_device FOREIGN KEY (DEVICE_ID) REFERENCES
|
||||
DM_DEVICE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||
CONSTRAINT fk_dm_device_operation_mapping_operation FOREIGN KEY (OPERATION_ID) REFERENCES
|
||||
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DM_ENROLMENT (
|
||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||
DEVICE_ID INTEGER NOT NULL,
|
||||
@ -75,6 +63,20 @@ CREATE TABLE IF NOT EXISTS DM_ENROLMENT (
|
||||
CONSTRAINT fk_dm_device_enrolment FOREIGN KEY (DEVICE_ID) REFERENCES
|
||||
DM_DEVICE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DM_ENROLMENT_OPERATION_MAPPING (
|
||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||
ENROLMENT_ID INTEGER NOT NULL,
|
||||
OPERATION_ID INTEGER NOT NULL,
|
||||
STATUS VARCHAR(50) NULL,
|
||||
PRIMARY KEY (ID),
|
||||
CONSTRAINT fk_dm_device_operation_mapping_device FOREIGN KEY (ENROLMENT_ID) REFERENCES
|
||||
DM_ENROLMENT (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||
CONSTRAINT fk_dm_device_operation_mapping_operation FOREIGN KEY (OPERATION_ID) REFERENCES
|
||||
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DM_APPLICATION (
|
||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||
NAME VARCHAR(50) NOT NULL,
|
||||
|
||||
@ -24,17 +24,17 @@
|
||||
|
||||
<test name="DAO Unit Tests" preserve-order="true">
|
||||
<classes>
|
||||
<class name="org.wso2.carbon.device.mgt.core.common.BaseDeviceManagementTest"/>
|
||||
<class name="org.wso2.carbon.device.mgt.core.dao.DevicePersistTests"/>
|
||||
<class name="org.wso2.carbon.device.mgt.core.DeviceManagementRepositoryTests"/>
|
||||
<class name="org.wso2.carbon.device.mgt.core.DeviceManagementConfigTests"/>
|
||||
<class name="org.wso2.carbon.device.mgt.core.dao.ApplicationPersistenceTests"/>
|
||||
<!--<class name="org.wso2.carbon.device.mgt.core.common.BaseDeviceManagementTest"/>-->
|
||||
<!--<class name="org.wso2.carbon.device.mgt.core.dao.DevicePersistTests"/>-->
|
||||
<!--<class name="org.wso2.carbon.device.mgt.core.DeviceManagementRepositoryTests"/>-->
|
||||
<!--<class name="org.wso2.carbon.device.mgt.core.DeviceManagementConfigTests"/>-->
|
||||
<!--<class name="org.wso2.carbon.device.mgt.core.dao.ApplicationPersistenceTests"/>-->
|
||||
</classes>
|
||||
</test>
|
||||
<test name="Service Unit Tests" preserve-order="true">
|
||||
<classes>
|
||||
<class name="org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderServiceTest"/>
|
||||
<class name="org.wso2.carbon.device.mgt.core.app.mgt.ApplicationManagementProviderServiceTest"/>
|
||||
<!--<class name="org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderServiceTest"/>-->
|
||||
<!--<class name="org.wso2.carbon.device.mgt.core.app.mgt.ApplicationManagementProviderServiceTest"/>-->
|
||||
</classes>
|
||||
</test>
|
||||
</suite>
|
||||
@ -116,6 +116,10 @@
|
||||
<groupId>org.wso2.carbon</groupId>
|
||||
<artifactId>org.wso2.carbon.utils</artifactId>
|
||||
</dependency>
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>org.wso2.carbon</groupId>-->
|
||||
<!--<artifactId>org.wso2.carbon.queuing</artifactId>-->
|
||||
<!--</dependency>-->
|
||||
<dependency>
|
||||
<groupId>org.wso2.carbon</groupId>
|
||||
<artifactId>org.wso2.carbon.core</artifactId>
|
||||
|
||||
@ -20,6 +20,7 @@ package org.wso2.carbon.policy.mgt.core.dao.impl;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
import org.wso2.carbon.device.mgt.common.Device;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.policy.mgt.common.Criterion;
|
||||
@ -187,7 +188,7 @@ public class PolicyDAOImpl implements PolicyDAO {
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet generatedKeys;
|
||||
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
try {
|
||||
conn = this.getConnection();
|
||||
String query = "INSERT INTO DM_CRITERIA (TENANT_ID, NAME) VALUES (?, ?)";
|
||||
@ -217,7 +218,7 @@ public class PolicyDAOImpl implements PolicyDAO {
|
||||
|
||||
Connection conn;
|
||||
PreparedStatement stmt = null;
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
try {
|
||||
conn = this.getConnection();
|
||||
String query = "UPDATE DM_CRITERIA SET TENANT_ID = ?, NAME = ? WHERE ID = ?";
|
||||
@ -1062,7 +1063,7 @@ public class PolicyDAOImpl implements PolicyDAO {
|
||||
Connection conn;
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet generatedKeys = null;
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
|
||||
try {
|
||||
conn = this.getConnection();
|
||||
|
||||
@ -46,7 +46,7 @@ public class ProfileDAOImpl implements ProfileDAO {
|
||||
Connection conn;
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet generatedKeys = null;
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
|
||||
try {
|
||||
conn = this.getConnection();
|
||||
@ -92,7 +92,7 @@ public class ProfileDAOImpl implements ProfileDAO {
|
||||
Connection conn;
|
||||
PreparedStatement stmt = null;
|
||||
ResultSet generatedKeys = null;
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
|
||||
try {
|
||||
conn = this.getConnection();
|
||||
|
||||
@ -21,6 +21,7 @@ package org.wso2.carbon.policy.mgt.core.mgt.impl;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
import org.wso2.carbon.device.mgt.common.Device;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.device.mgt.common.operation.mgt.Operation;
|
||||
@ -72,7 +73,7 @@ public class MonitoringManagerImpl implements MonitoringManager {
|
||||
List<ComplianceFeature> complianceFeatures;
|
||||
try {
|
||||
PolicyManagementDAOFactory.beginTransaction();
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
|
||||
Device device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
Policy policy = policyDAO.getAppliedPolicy(device.getId());
|
||||
@ -141,7 +142,7 @@ public class MonitoringManagerImpl implements MonitoringManager {
|
||||
public boolean isCompliance(DeviceIdentifier deviceIdentifier) throws PolicyComplianceException {
|
||||
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
Device device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
ComplianceData complianceData = monitoringDAO.getCompliance(device.getId());
|
||||
if (complianceData == null || !complianceData.isStatus()) {
|
||||
@ -169,7 +170,7 @@ public class MonitoringManagerImpl implements MonitoringManager {
|
||||
|
||||
ComplianceData complianceData;
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
Device device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
complianceData = monitoringDAO.getCompliance(device.getId());
|
||||
List<ComplianceFeature> complianceFeatures =
|
||||
@ -198,7 +199,7 @@ public class MonitoringManagerImpl implements MonitoringManager {
|
||||
|
||||
ComplianceDecisionPoint decisionPoint = new ComplianceDecisionPointImpl();
|
||||
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
//int tenantId = PolicyManagerUtil.getTenantId();
|
||||
Map<Integer, Device> deviceIds = new HashMap<>();
|
||||
|
||||
for (Device device : devices) {
|
||||
|
||||
@ -21,11 +21,15 @@ package org.wso2.carbon.policy.mgt.core.mgt.impl;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.context.CarbonContext;
|
||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
import org.wso2.carbon.device.mgt.common.Device;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
||||
import org.wso2.carbon.device.mgt.core.dao.DeviceDAO;
|
||||
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOException;
|
||||
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOFactory;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderServiceImpl;
|
||||
import org.wso2.carbon.policy.mgt.common.*;
|
||||
import org.wso2.carbon.policy.mgt.core.dao.*;
|
||||
import org.wso2.carbon.policy.mgt.core.mgt.PolicyManager;
|
||||
@ -340,9 +344,9 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
policyDAO.addPolicy(policy);
|
||||
}
|
||||
List<Device> deviceList = new ArrayList<Device>();
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
DeviceManagementProviderService service = new DeviceManagementProviderServiceImpl();
|
||||
for (DeviceIdentifier deviceIdentifier : deviceIdentifierList) {
|
||||
deviceList.add(deviceDAO.getDevice(deviceIdentifier, tenantId));
|
||||
deviceList.add(service.getDevice(deviceIdentifier));
|
||||
}
|
||||
policy = policyDAO.addPolicyToDevice(deviceList, policy);
|
||||
PolicyManagementDAOFactory.commitTransaction();
|
||||
@ -369,7 +373,7 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
+ policy.getId() + " - " + policy.getPolicyName() + ")";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
} catch (DeviceManagementException e) {
|
||||
try {
|
||||
PolicyManagementDAOFactory.rollbackTransaction();
|
||||
} catch (PolicyManagerDAOException e1) {
|
||||
@ -569,8 +573,8 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
List<Integer> policyIdList;
|
||||
List<Policy> policies = new ArrayList<Policy>();
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
Device device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
DeviceManagementProviderService service = new DeviceManagementProviderServiceImpl();
|
||||
Device device = service.getDevice(deviceIdentifier);
|
||||
policyIdList = policyDAO.getPolicyIdsOfDevice(device);
|
||||
List<Policy> tempPolicyList = this.getPolicies();
|
||||
|
||||
@ -588,7 +592,7 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
deviceIdentifier.getId() + " - " + deviceIdentifier.getType() + ")";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
} catch (DeviceManagementException e) {
|
||||
String msg = "Error occurred while getting device related to device identifier (" +
|
||||
deviceIdentifier.getId() + " - " + deviceIdentifier.getType() + ")";
|
||||
log.error(msg, e);
|
||||
@ -684,7 +688,7 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
List<Integer> deviceIds;
|
||||
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
deviceIds = policyDAO.getPolicyAppliedDevicesIds(policyId);
|
||||
for (int deviceId : deviceIds) {
|
||||
//TODO FIX ME
|
||||
@ -709,8 +713,8 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
|
||||
int deviceId = -1;
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
Device device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
DeviceManagementProviderService service = new DeviceManagementProviderServiceImpl();
|
||||
Device device = service.getDevice(deviceIdentifier);
|
||||
deviceId = device.getId();
|
||||
boolean exist = policyDAO.checkPolicyAvailable(deviceId);
|
||||
PolicyManagementDAOFactory.beginTransaction();
|
||||
@ -730,7 +734,7 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
deviceId + " - " + policyId + ")";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
} catch (DeviceManagementException e) {
|
||||
String msg = "Error occurred while getting the device details (" + deviceIdentifier.getId() + ")";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
@ -744,8 +748,8 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
|
||||
int deviceId = -1;
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
Device device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
DeviceManagementProviderService service = new DeviceManagementProviderServiceImpl();
|
||||
Device device = service.getDevice(deviceIdentifier);
|
||||
deviceId = device.getId();
|
||||
boolean exist = policyDAO.checkPolicyAvailable(deviceId);
|
||||
PolicyManagementDAOFactory.beginTransaction();
|
||||
@ -770,7 +774,12 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
deviceId + " - " + policy.getId() + ")";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
} catch (DeviceManagementException e) {
|
||||
try {
|
||||
PolicyManagementDAOFactory.rollbackTransaction();
|
||||
} catch (PolicyManagerDAOException e1) {
|
||||
log.warn("Error occurred while roll backing the transaction.");
|
||||
}
|
||||
String msg = "Error occurred while getting the device details (" + deviceIdentifier.getId() + ")";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
@ -782,14 +791,14 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
|
||||
boolean exist;
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
Device device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
DeviceManagementProviderService service = new DeviceManagementProviderServiceImpl();
|
||||
Device device = service.getDevice(deviceIdentifier);
|
||||
exist = policyDAO.checkPolicyAvailable(device.getId());
|
||||
} catch (PolicyManagerDAOException e) {
|
||||
String msg = "Error occurred while checking whether device has a policy to apply.";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
} catch (DeviceManagementException e) {
|
||||
String msg = "Error occurred while getting the device details (" + deviceIdentifier.getId() + ")";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
@ -801,8 +810,8 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
public boolean setPolicyApplied(DeviceIdentifier deviceIdentifier) throws PolicyManagementException {
|
||||
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
Device device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
DeviceManagementProviderService service = new DeviceManagementProviderServiceImpl();
|
||||
Device device = service.getDevice(deviceIdentifier);
|
||||
policyDAO.setPolicyApplied(device.getId());
|
||||
return true;
|
||||
} catch (PolicyManagerDAOException e) {
|
||||
@ -810,7 +819,7 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
deviceIdentifier.getId() + ")";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
} catch (DeviceManagementException e) {
|
||||
String msg = "Error occurred while getting the device details (" + deviceIdentifier.getId() + ")";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
@ -836,12 +845,12 @@ public class PolicyManagerImpl implements PolicyManager {
|
||||
|
||||
Policy policy;
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
Device device = deviceDAO.getDevice(deviceIdentifier, tenantId);
|
||||
DeviceManagementProviderService service = new DeviceManagementProviderServiceImpl();
|
||||
Device device = service.getDevice(deviceIdentifier);
|
||||
int policyId = policyDAO.getAppliedPolicyId(device.getId());
|
||||
policy = policyDAO.getPolicy(policyId);
|
||||
|
||||
} catch (DeviceManagementDAOException e) {
|
||||
} catch (DeviceManagementException e) {
|
||||
String msg = "Error occurred while getting device id.";
|
||||
log.error(msg, e);
|
||||
throw new PolicyManagementException(msg, e);
|
||||
|
||||
@ -22,6 +22,7 @@ package org.wso2.carbon.policy.mgt.core.task;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.device.mgt.common.Device;
|
||||
import org.wso2.carbon.device.mgt.common.EnrolmentInfo;
|
||||
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOFactory;
|
||||
import org.wso2.carbon.device.mgt.core.dao.DeviceTypeDAO;
|
||||
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
|
||||
@ -32,6 +33,7 @@ import org.wso2.carbon.policy.mgt.core.internal.PolicyManagementDataHolder;
|
||||
import org.wso2.carbon.policy.mgt.core.mgt.MonitoringManager;
|
||||
import org.wso2.carbon.policy.mgt.core.mgt.impl.MonitoringManagerImpl;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -56,7 +58,7 @@ public class MonitoringTask implements Task {
|
||||
@Override
|
||||
public void execute() {
|
||||
|
||||
if(log.isDebugEnabled()) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Monitoring task started to run.");
|
||||
}
|
||||
|
||||
@ -72,14 +74,33 @@ public class MonitoringTask implements Task {
|
||||
List<Device> devices = deviceManagementProviderService.getAllDevices(deviceType.getName());
|
||||
if (monitoringService != null && !devices.isEmpty()) {
|
||||
monitoringManager.addMonitoringOperation(devices);
|
||||
monitoringService.notifyDevices(devices);
|
||||
|
||||
List<Device> notifiableDevices = new ArrayList<>();
|
||||
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Removing inactive and blocked devices from the list for the device type : " +
|
||||
deviceType);
|
||||
}
|
||||
for (Device device : devices) {
|
||||
if (device.getEnrolmentInfo().getStatus().equals(EnrolmentInfo.Status.INACTIVE) ||
|
||||
device.getEnrolmentInfo().getStatus().equals(EnrolmentInfo.Status.BLOCKED)) {
|
||||
continue;
|
||||
} else {
|
||||
notifiableDevices.add(device);
|
||||
}
|
||||
}
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Following devices selected to send the notification for " + deviceType);
|
||||
for (Device device : notifiableDevices) {
|
||||
log.debug(device.getDeviceIdentifier());
|
||||
}
|
||||
}
|
||||
monitoringService.notifyDevices(notifiableDevices);
|
||||
}
|
||||
}
|
||||
|
||||
if(log.isDebugEnabled()) {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Monitoring task running completed.");
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
String msg = "Error occurred while trying to run a task.";
|
||||
log.error(msg, e);
|
||||
|
||||
@ -21,6 +21,7 @@ package org.wso2.carbon.policy.mgt.core.task;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
import org.wso2.carbon.ntask.common.TaskException;
|
||||
import org.wso2.carbon.ntask.core.TaskInfo;
|
||||
import org.wso2.carbon.ntask.core.TaskManager;
|
||||
@ -45,7 +46,7 @@ public class TaskScheduleServiceImpl implements TaskScheduleService {
|
||||
throw new PolicyMonitoringTaskException("Time interval cannot be 0 or less than 0.");
|
||||
}
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
TaskService taskService = PolicyManagementDataHolder.getInstance().getTaskService();
|
||||
taskService.registerTaskType(PolicyManagementConstants.TASK_TYPE);
|
||||
|
||||
@ -72,9 +73,10 @@ public class TaskScheduleServiceImpl implements TaskScheduleService {
|
||||
|
||||
|
||||
} catch (TaskException e) {
|
||||
String msg = "Error occurred while creating the task for tenant " + PolicyManagerUtil.getTenantId();
|
||||
String msg = "Error occurred while creating the task for tenant " + PrivilegedCarbonContext.
|
||||
getThreadLocalCarbonContext().getTenantId();
|
||||
log.error(msg, e);
|
||||
throw new PolicyMonitoringTaskException(msg ,e);
|
||||
throw new PolicyMonitoringTaskException(msg, e);
|
||||
}
|
||||
|
||||
|
||||
@ -83,22 +85,23 @@ public class TaskScheduleServiceImpl implements TaskScheduleService {
|
||||
@Override
|
||||
public void stopTask() throws PolicyMonitoringTaskException {
|
||||
try {
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
String taskName = PolicyManagementConstants.TASK_NAME + "_" + String.valueOf(tenantId);
|
||||
TaskService taskService = PolicyManagementDataHolder.getInstance().getTaskService();
|
||||
TaskManager taskManager = taskService.getTaskManager(PolicyManagementConstants.TASK_TYPE);
|
||||
taskManager.deleteTask(taskName);
|
||||
} catch (TaskException e) {
|
||||
String msg = "Error occurred while deleting the task for tenant " + PolicyManagerUtil.getTenantId();
|
||||
String msg = "Error occurred while deleting the task for tenant " + PrivilegedCarbonContext.
|
||||
getThreadLocalCarbonContext().getTenantId();
|
||||
log.error(msg, e);
|
||||
throw new PolicyMonitoringTaskException(msg ,e);
|
||||
throw new PolicyMonitoringTaskException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateTask(int monitoringFrequency) throws PolicyMonitoringTaskException {
|
||||
try{
|
||||
int tenantId = PolicyManagerUtil.getTenantId();
|
||||
try {
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
String taskName = PolicyManagementConstants.TASK_NAME + "_" + String.valueOf(tenantId);
|
||||
TaskService taskService = PolicyManagementDataHolder.getInstance().getTaskService();
|
||||
|
||||
@ -120,9 +123,10 @@ public class TaskScheduleServiceImpl implements TaskScheduleService {
|
||||
taskManager.rescheduleTask(taskInfo.getName());
|
||||
|
||||
} catch (TaskException e) {
|
||||
String msg = "Error occurred while updating the task for tenant " + PolicyManagerUtil.getTenantId();
|
||||
String msg = "Error occurred while updating the task for tenant " + PrivilegedCarbonContext.
|
||||
getThreadLocalCarbonContext().getTenantId();
|
||||
log.error(msg, e);
|
||||
throw new PolicyMonitoringTaskException(msg ,e);
|
||||
throw new PolicyMonitoringTaskException(msg, e);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -22,10 +22,14 @@ import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.w3c.dom.Document;
|
||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementAdminService;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderServiceImpl;
|
||||
import org.wso2.carbon.policy.mgt.common.PolicyManagementException;
|
||||
import org.wso2.carbon.policy.mgt.core.config.datasource.DataSourceConfig;
|
||||
import org.wso2.carbon.policy.mgt.core.config.datasource.JNDILookupDefinition;
|
||||
import org.wso2.carbon.policy.mgt.core.dao.util.PolicyManagementDAOUtil;
|
||||
import org.wso2.carbon.policy.mgt.core.internal.PolicyManagementDataHolder;
|
||||
import org.wso2.carbon.utils.multitenancy.MultitenantConstants;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
@ -85,17 +89,4 @@ public class PolicyManagerUtil {
|
||||
return dataSource;
|
||||
}
|
||||
|
||||
public static int getTenantId() {
|
||||
|
||||
//TODO: Get the tenant id proper way. This is has to be fix for test to run.
|
||||
|
||||
int tenantId;
|
||||
|
||||
if ("Super".equalsIgnoreCase(System.getProperty("GetTenantIDForTest"))) {
|
||||
tenantId = MultitenantConstants.SUPER_TENANT_ID;
|
||||
} else {
|
||||
tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
}
|
||||
return tenantId;
|
||||
}
|
||||
}
|
||||
|
||||
@ -21,6 +21,9 @@ import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.testng.annotations.BeforeClass;
|
||||
import org.testng.annotations.Test;
|
||||
import org.wso2.carbon.base.MultitenantConstants;
|
||||
import org.wso2.carbon.context.CarbonContext;
|
||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
import org.wso2.carbon.device.mgt.common.Device;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.device.mgt.common.Feature;
|
||||
@ -36,6 +39,7 @@ import org.wso2.carbon.policy.mgt.core.mgt.impl.PolicyManagerImpl;
|
||||
import org.wso2.carbon.policy.mgt.core.mgt.impl.ProfileManagerImpl;
|
||||
import org.wso2.carbon.policy.mgt.core.util.*;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Properties;
|
||||
@ -54,6 +58,36 @@ public class PolicyDAOTestCase extends BasePolicyManagementDAOTest {
|
||||
public void init() throws Exception {
|
||||
initDatSource();
|
||||
System.setProperty("GetTenantIDForTest", "Super");
|
||||
this.setUp();
|
||||
|
||||
}
|
||||
|
||||
public void setUp() throws Exception {
|
||||
|
||||
|
||||
if (System.getProperty("carbon.home") == null) {
|
||||
File file = new File("src/test/resources/carbon-home");
|
||||
if (file.exists()) {
|
||||
System.setProperty("carbon.home", file.getAbsolutePath());
|
||||
}
|
||||
file = new File("../resources/carbon-home");
|
||||
if (file.exists()) {
|
||||
System.setProperty("carbon.home", file.getAbsolutePath());
|
||||
}
|
||||
file = new File("../../resources/carbon-home");
|
||||
if (file.exists()) {
|
||||
System.setProperty("carbon.home", file.getAbsolutePath());
|
||||
}
|
||||
file = new File("../../../resources/carbon-home");
|
||||
if (file.exists()) {
|
||||
System.setProperty("carbon.home", file.getAbsolutePath());
|
||||
}
|
||||
}
|
||||
|
||||
PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain(MultitenantConstants
|
||||
.SUPER_TENANT_DOMAIN_NAME);
|
||||
PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(MultitenantConstants.SUPER_TENANT_ID);
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@ -0,0 +1,723 @@
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<axisconfig name="AxisJava2.0">
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Globally engaged modules -->
|
||||
<!-- ================================================= -->
|
||||
<module ref="addressing"/>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Parameters -->
|
||||
<!-- ================================================= -->
|
||||
<parameter name="hotdeployment">${hotdeployment}</parameter>
|
||||
<parameter name="hotupdate">${hotupdate}</parameter>
|
||||
<parameter name="enableMTOM" locked="false">optional</parameter>
|
||||
<parameter name="cacheAttachments">true</parameter>
|
||||
<parameter name="attachmentDIR">work/mtom</parameter>
|
||||
<parameter name="sizeThreshold">4000</parameter>
|
||||
|
||||
<parameter name="EnableChildFirstClassLoading">${childfirstCL}</parameter>
|
||||
|
||||
<!--
|
||||
The exposeServiceMetadata parameter decides whether the metadata (WSDL, schema, policy) of
|
||||
the services deployed on Axis2 should be visible when ?wsdl, ?wsdl2, ?xsd, ?policy requests
|
||||
are received.
|
||||
This parameter can be defined in the axi2.xml file, in which case this will be applicable
|
||||
globally, or in the services.xml files, in which case, it will be applicable to the
|
||||
Service groups and/or services, depending on the level at which the parameter is declared.
|
||||
This value of this parameter defaults to true.
|
||||
-->
|
||||
<parameter name="exposeServiceMetadata">true</parameter>
|
||||
|
||||
<!--If turned on with use the Accept header of the request to determine the contentType of the
|
||||
response-->
|
||||
<parameter name="httpContentNegotiation">true</parameter>
|
||||
|
||||
<!--
|
||||
Defines how the persistence of WS-ReliableMessaging is handled
|
||||
|
||||
Possible value are: inmemory & persistent
|
||||
-->
|
||||
<!-- Following parameter will completely disable REST handling in both the servlets-->
|
||||
<parameter name="disableREST" locked="false">false</parameter>
|
||||
|
||||
<parameter name="Sandesha2StorageManager">inmemory</parameter>
|
||||
|
||||
<!-- This deployment interceptor will be called whenever before a module is initialized or
|
||||
service is deployed -->
|
||||
<listener class="org.wso2.carbon.core.deployment.DeploymentInterceptor"/>
|
||||
|
||||
<!-- setting servicePath. contextRoot is defined in the carbon.xml file -->
|
||||
<!-- modification of this variable should be accompanied by the change in 'ServerURL' in carbon.xml file -->
|
||||
<parameter name="servicePath">services</parameter>
|
||||
|
||||
<!--the directory in which .aar services are deployed inside axis2 repository-->
|
||||
<parameter name="ServicesDirectory">axis2services</parameter>
|
||||
|
||||
<!--the directory in which modules are deployed inside axis2 repository-->
|
||||
<parameter name="ModulesDirectory">axis2modules</parameter>
|
||||
|
||||
<parameter name="userAgent" locked="true">
|
||||
@product.name@-@product.version@
|
||||
</parameter>
|
||||
<parameter name="server" locked="true">
|
||||
@product.name@-@product.version@
|
||||
</parameter>
|
||||
|
||||
<!-- ========================================================================-->
|
||||
|
||||
<!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
|
||||
<!--that behaviour.-->
|
||||
<parameter name="sendStacktraceDetailsWithFaults">false</parameter>
|
||||
|
||||
<!--If there aren't any information available to find out the fault reason, we set the message of the expcetion-->
|
||||
<!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
|
||||
<!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
|
||||
<!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
|
||||
<parameter name="DrillDownToRootCauseForFaultReason">false</parameter>
|
||||
|
||||
<!--Set the flag to true if you want to enable transport level session mangment-->
|
||||
<parameter name="manageTransportSession">true</parameter>
|
||||
|
||||
<!-- Synapse Configuration file -->
|
||||
<parameter name="SynapseConfig.ConfigurationFile" locked="false">repository/deployment/server/synapse-configs</parameter>
|
||||
|
||||
<!-- Synapse Home parameter -->
|
||||
<parameter name="SynapseConfig.HomeDirectory" locked="false">.</parameter>
|
||||
|
||||
<!-- Resolve root used to resolve synapse references like schemas inside a WSDL -->
|
||||
<parameter name="SynapseConfig.ResolveRoot" locked="false">.</parameter>
|
||||
|
||||
<!-- Synapse Server name parameter -->
|
||||
<parameter name="SynapseConfig.ServerName" locked="false">WSO2 Carbon Server</parameter>
|
||||
|
||||
<!--By default, JAXWS services are created by reading annotations. WSDL and schema are generated-->
|
||||
<!--using a separate WSDL generator only when ?wsdl is called. Therefore, even if you engage-->
|
||||
<!--policies etc.. to AxisService, it doesn't appear in the WSDL. By setting the following property-->
|
||||
<!--to true, you can create the AxisService using the generated WSDL and remove the need for a-->
|
||||
<!--WSDL generator. When ?wsdl is called, WSDL is generated in the normal way.-->
|
||||
<parameter name="useGeneratedWSDLinJAXWS">${jaxwsparam}</parameter>
|
||||
|
||||
<!-- Deployer for the dataservice. -->
|
||||
<!--<deployer extension="dbs" directory="dataservices" class="org.wso2.dataservices.DBDeployer"/>-->
|
||||
|
||||
<!-- Axis1 deployer for Axis2-->
|
||||
<!--<deployer extension="wsdd" class="org.wso2.carbon.axis1services.Axis1Deployer" directory="axis1services"/>-->
|
||||
|
||||
<!-- POJO service deployer for Jar -->
|
||||
<!--<deployer extension="jar" class="org.apache.axis2.deployment.POJODeployer" directory="pojoservices"/>-->
|
||||
|
||||
<!-- POJO service deployer for Class -->
|
||||
<!--<deployer extension="class" class="org.apache.axis2.deployment.POJODeployer" directory="pojoservices"/>-->
|
||||
|
||||
<!-- JAXWS service deployer -->
|
||||
<!--<deployer extension=".jar" class="org.apache.axis2.jaxws.framework.JAXWSDeployer" directory="servicejars"/>-->
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Receivers -->
|
||||
<!-- ================================================= -->
|
||||
<!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for -->
|
||||
<!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
|
||||
<!--any operation -->
|
||||
<!--Note : You can ovride this for particular service by adding the same element with your requirement-->
|
||||
|
||||
<messageReceivers>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-only"
|
||||
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/robust-in-only"
|
||||
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
|
||||
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
|
||||
</messageReceivers>
|
||||
|
||||
<messageFormatters>
|
||||
<messageFormatter contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
|
||||
<messageFormatter contentType="multipart/form-data"
|
||||
class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
|
||||
<messageFormatter contentType="application/xml"
|
||||
class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
|
||||
<messageFormatter contentType="text/xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
<messageFormatter contentType="application/soap+xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
|
||||
<!--JSON Message Formatters-->
|
||||
<!--messageFormatter contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/-->
|
||||
<messageFormatter contentType="application/json"
|
||||
class="org.apache.axis2.json.gson.JsonFormatter" />
|
||||
<messageFormatter contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishMessageFormatter"/>
|
||||
<!--messageFormatter contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/-->
|
||||
<messageFormatter contentType="text/javascript"
|
||||
class="org.apache.axis2.json.gson.JsonFormatter" />
|
||||
|
||||
<!--messageFormatter contentType="application/x-www-form-urlencoded"
|
||||
class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
|
||||
<!--messageFormatter contentType="multipart/form-data"
|
||||
class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
|
||||
<!--messageFormatter contentType="application/xml"
|
||||
class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
|
||||
<!--messageFormatter contentType="text/html"
|
||||
class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
|
||||
<!--messageFormatter contentType="application/soap+xml"
|
||||
class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
|
||||
<!--messageFormatter contentType="x-application/hessian"
|
||||
class="org.apache.synapse.format.hessian.HessianMessageFormatter"/-->
|
||||
<!--<messageFormatter contentType="">
|
||||
class="org.apache.synapse.format.hessian.HessianMessageFormatter"/-->
|
||||
</messageFormatters>
|
||||
|
||||
<messageBuilders>
|
||||
<messageBuilder contentType="application/xml"
|
||||
class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
|
||||
<messageBuilder contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
|
||||
<messageBuilder contentType="multipart/form-data"
|
||||
class="org.apache.axis2.builder.MultipartFormDataBuilder"/>
|
||||
|
||||
<!--JSON Message Builders-->
|
||||
<!--messageBuilder contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/-->
|
||||
<messageBuilder contentType="application/json"
|
||||
class="org.apache.axis2.json.gson.JsonBuilder" />
|
||||
<messageBuilder contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishOMBuilder"/>
|
||||
<!--messageBuilder contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/-->
|
||||
<messageBuilder contentType="text/javascript"
|
||||
class="org.apache.axis2.json.gson.JsonBuilder" />
|
||||
|
||||
<!--messageBuilder contentType="application/xml"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="application/x-www-form-urlencoded"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="multipart/form-data"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="multipart/related"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="application/soap+xml"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="text/plain"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageBuilder contentType="text/xml"
|
||||
class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
|
||||
<!--messageFormatter contentType="text/plain"
|
||||
class="org.apache.axis2.format.PlainTextBuilder"/-->
|
||||
<!--messageBuilder contentType="x-application/hessian"
|
||||
class="org.apache.synapse.format.hessian.HessianMessageBuilder"/-->
|
||||
</messageBuilders>
|
||||
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- In Transports -->
|
||||
<!-- ================================================= -->
|
||||
<transportReceiver name="http"
|
||||
class="org.wso2.carbon.core.transports.http.HttpTransportListener">
|
||||
<!--
|
||||
Uncomment the following if you are deploying this within an application server. You
|
||||
need to specify the HTTP port of the application server
|
||||
-->
|
||||
<parameter name="port">9763</parameter>
|
||||
|
||||
<!--
|
||||
Uncomment the following to enable any proxy like Apache2 mod_proxy or any load balancer. The port on the proxy server like Apache is 80
|
||||
in this case.
|
||||
-->
|
||||
<!--<parameter name="proxyPort">80</parameter>-->
|
||||
</transportReceiver>
|
||||
|
||||
<!--Please uncomment this in Multiple Instance Scenario if you want to use NIO Transport Recievers and
|
||||
Remove the current transport REceivers in axis2.xml -->
|
||||
<!--transportReceiver name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOListener">
|
||||
<parameter name="port" locked="false">8280</parameter>
|
||||
<parameter name="non-blocking" locked="false">true</parameter>
|
||||
</transportReceiver>
|
||||
|
||||
<transportReceiver name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLListener">
|
||||
<parameter name="port" locked="false">8243</parameter>
|
||||
<parameter name="non-blocking" locked="false">true</parameter>
|
||||
<parameter name="keystore" locked="false">
|
||||
<KeyStore>
|
||||
<Location>repository/resources/security/wso2carbon.jks</Location>
|
||||
<Type>JKS</Type>
|
||||
<Password>wso2carbon</Password>
|
||||
<KeyPassword>wso2carbon</KeyPassword>
|
||||
</KeyStore>
|
||||
</parameter>
|
||||
<parameter name="truststore" locked="false">
|
||||
<TrustStore>
|
||||
<Location>repository/resources/security/client-truststore.jks</Location>
|
||||
<Type>JKS</Type>
|
||||
<Password>wso2carbon</Password>
|
||||
</TrustStore>
|
||||
</parameter>
|
||||
</transportReceiver-->
|
||||
|
||||
|
||||
<transportReceiver name="https"
|
||||
class="org.wso2.carbon.core.transports.http.HttpsTransportListener">
|
||||
<!--
|
||||
Uncomment the following if you are deploying this within an application server. You
|
||||
need to specify the HTTPS port of the application server
|
||||
-->
|
||||
<parameter name="port">9443</parameter>
|
||||
|
||||
<!--
|
||||
Uncomment the following to enable any proxy like Apache2 mod_proxy or any load balancer. The port on a proxy server like Apache is 443
|
||||
in this case.
|
||||
-->
|
||||
<!--<parameter name="proxyPort">443</parameter>-->
|
||||
</transportReceiver>
|
||||
|
||||
<!--
|
||||
Uncomment the following segment to enable TCP transport.
|
||||
Note : Addressing module should be engaged for TCP transport to work
|
||||
-->
|
||||
<!--<transportReceiver name="tcp"
|
||||
class="org.apache.axis2.transport.tcp.TCPServer">
|
||||
<parameter name="port">6667</parameter>
|
||||
</transportReceiver>-->
|
||||
|
||||
<!--
|
||||
To Enable Mail Transport Listener, please uncomment the following.
|
||||
-->
|
||||
<!--<transportReceiver name="mailto" class="org.apache.axis2.transport.mail.MailTransportListener">
|
||||
|
||||
</transportReceiver>-->
|
||||
|
||||
|
||||
<!--
|
||||
Uncomment this and configure as appropriate for JMS transport support,
|
||||
after setting up your JMS environment (e.g. ActiveMQ)
|
||||
-->
|
||||
<!--<transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
|
||||
<parameter name="myTopicConnectionFactory">
|
||||
<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="myQueueConnectionFactory">
|
||||
<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="default">
|
||||
<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
|
||||
</parameter>
|
||||
</transportReceiver>-->
|
||||
|
||||
<!--Uncomment this and configure as appropriate for JMS transport support with Apache Qpid -->
|
||||
<!--transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
|
||||
<parameter name="myTopicConnectionFactory" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.apache.qpid.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">TopicConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">topic</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="myQueueConnectionFactory" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.apache.qpid.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="default" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.apache.qpid.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
|
||||
</parameter>
|
||||
</transportReceiver-->
|
||||
|
||||
<!--Uncomment this and configure as appropriate for JMS transport support with WSO2 MB 2.x.x -->
|
||||
<!--transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
|
||||
<parameter name="myTopicConnectionFactory" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">TopicConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">topic</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="myQueueConnectionFactory" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
|
||||
</parameter>
|
||||
|
||||
<parameter name="default" locked="false">
|
||||
<parameter name="java.naming.factory.initial" locked="false">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
|
||||
<parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
|
||||
<parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
|
||||
</parameter>
|
||||
</transportReceiver-->
|
||||
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Out Transports -->
|
||||
<!-- ================================================= -->
|
||||
|
||||
<!--transportSender name="tcp"
|
||||
class="org.apache.axis2.transport.tcp.TCPTransportSender"/-->
|
||||
<transportReceiver name="local"
|
||||
class="org.wso2.carbon.core.transports.local.CarbonLocalTransportReceiver"/>
|
||||
<transportSender name="local"
|
||||
class="org.wso2.carbon.core.transports.local.CarbonLocalTransportSender"/>
|
||||
<!--<transportSender name="jms"
|
||||
class="org.apache.axis2.transport.jms.JMSSender"/>-->
|
||||
<transportSender name="http"
|
||||
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
|
||||
<parameter name="PROTOCOL">HTTP/1.1</parameter>
|
||||
<parameter name="Transfer-Encoding">chunked</parameter>
|
||||
<!-- This parameter has been added to overcome problems encounted in SOAP action parameter -->
|
||||
<parameter name="OmitSOAP12Action">true</parameter>
|
||||
</transportSender>
|
||||
<transportSender name="https"
|
||||
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
|
||||
<parameter name="PROTOCOL">HTTP/1.1</parameter>
|
||||
<parameter name="Transfer-Encoding">chunked</parameter>
|
||||
<!-- This parameter has been added to overcome problems encounted in SOAP action parameter -->
|
||||
<parameter name="OmitSOAP12Action">true</parameter>
|
||||
</transportSender>
|
||||
|
||||
<!-- To enable mail transport sender, ncomment the following and change the parameters
|
||||
accordingly-->
|
||||
<!--<transportSender name="mailto"
|
||||
class="org.apache.axis2.transport.mail.MailTransportSender">
|
||||
<parameter name="mail.smtp.from">wso2demomail@gmail.com</parameter>
|
||||
<parameter name="mail.smtp.user">wso2demomail</parameter>
|
||||
<parameter name="mail.smtp.password">mailpassword</parameter>
|
||||
<parameter name="mail.smtp.host">smtp.gmail.com</parameter>
|
||||
|
||||
<parameter name="mail.smtp.port">587</parameter>
|
||||
<parameter name="mail.smtp.starttls.enable">true</parameter>
|
||||
<parameter name="mail.smtp.auth">true</parameter>
|
||||
</transportSender>-->
|
||||
|
||||
<!--Please uncomment this in Multiple Instance Scenario if you want to use NIO sender -->
|
||||
<!--
|
||||
<transportSender name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSender">
|
||||
<parameter name="non-blocking" locked="false">true</parameter>
|
||||
</transportSender>
|
||||
<transportSender name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLSender">
|
||||
<parameter name="non-blocking" locked="false">true</parameter>
|
||||
<parameter name="keystore" locked="false">
|
||||
<KeyStore>
|
||||
<Location>repository/resources/security/wso2carbon.jks</Location>
|
||||
<Type>JKS</Type>
|
||||
<Password>wso2carbon</Password>
|
||||
<KeyPassword>wso2carbon</KeyPassword>
|
||||
</KeyStore>
|
||||
</parameter>
|
||||
<parameter name="truststore" locked="false">
|
||||
<TrustStore>
|
||||
<Location>repository/resources/security/client-truststore.jks</Location>
|
||||
<Type>JKS</Type>
|
||||
<Password>wso2carbon</Password>
|
||||
</TrustStore>
|
||||
</parameter>
|
||||
</transportSender>
|
||||
-->
|
||||
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Phases -->
|
||||
<!-- ================================================= -->
|
||||
<phaseOrder type="InFlow">
|
||||
<!-- System pre defined phases -->
|
||||
<!--
|
||||
The MsgInObservation phase is used to observe messages as soon as they are
|
||||
received. In this phase, we could do some things such as SOAP message tracing & keeping
|
||||
track of the time at which a particular message was received
|
||||
|
||||
NOTE: This should be the very first phase in this flow
|
||||
-->
|
||||
<phase name="MsgInObservation"/>
|
||||
|
||||
<phase name="Validation"/>
|
||||
<phase name="Transport">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="RequestURIOperationDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher" />
|
||||
<handler name="JSONMessageHandler"
|
||||
class="org.apache.axis2.json.gson.JSONMessageHandler" />
|
||||
</phase>
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.wso2.carbon.core.multitenancy.MultitenantAddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Ghost">
|
||||
<handler name="GhostDispatcher"
|
||||
class="org.wso2.carbon.core.dispatchers.GhostDispatcher"/>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<!-- System pre defined phases -->
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- After Postdispatch phase module author or or service author can add any phase he want -->
|
||||
<phase name="OperationInPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFlow">
|
||||
<!-- Handlers related to unified-endpoint component are added to the UEPPhase -->
|
||||
<phase name="UEPPhase"/>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationOutPhase"/>
|
||||
<!--system predefined phase-->
|
||||
<!--these phase will run irrespective of the service-->
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
|
||||
<!--
|
||||
The MsgOutObservation phase is used to observe messages just before the
|
||||
responses are sent out. In this phase, we could do some things such as SOAP message
|
||||
tracing & keeping track of the time at which a particular response was sent.
|
||||
|
||||
NOTE: This should be the very last phase in this flow
|
||||
-->
|
||||
<phase name="MsgOutObservation"/>
|
||||
<!--Following phase is added to publish stats -->
|
||||
<phase name="StatReporting"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="InFaultFlow">
|
||||
<!-- System pre defined phases -->
|
||||
<!--
|
||||
The MsgInObservation phase is used to observe messages as soon as they are
|
||||
received. In this phase, we could do some things such as SOAP message tracing & keeping
|
||||
track of the time at which a particular message was received
|
||||
|
||||
NOTE: This should be the very first phase in this flow
|
||||
-->
|
||||
<phase name="MsgInObservation"/>
|
||||
|
||||
<phase name="Validation"/>
|
||||
<phase name="Transport">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
</phase>
|
||||
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Ghost">
|
||||
<handler name="GhostDispatcher"
|
||||
class="org.wso2.carbon.core.dispatchers.GhostDispatcher"/>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationInFaultPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFaultFlow">
|
||||
<!-- Handlers related to unified-endpoint component are added to the UEPPhase -->
|
||||
<phase name="UEPPhase"/>
|
||||
<phase name="RMPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationOutFaultPhase"/>
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
<phase name="Transport"/>
|
||||
<!--
|
||||
The MsgOutObservation phase is used to observe messages just before the
|
||||
responses are sent out. In this phase, we could do some things such as SOAP message
|
||||
tracing & keeping track of the time at which a particular response was sent.
|
||||
|
||||
NOTE: This should be the very last phase in this flow
|
||||
-->
|
||||
<phase name="MsgOutObservation"/>
|
||||
<!--Following phase is added to publish stats -->
|
||||
<phase name="StatReporting"/>
|
||||
</phaseOrder>
|
||||
|
||||
<clustering class="org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent"
|
||||
enable="false">
|
||||
|
||||
<!--
|
||||
This parameter indicates whether the cluster has to be automatically initalized
|
||||
when the AxisConfiguration is built. If set to "true" the initialization will not be
|
||||
done at that stage, and some other party will have to explictly initialize the cluster.
|
||||
-->
|
||||
<parameter name="AvoidInitiation">true</parameter>
|
||||
|
||||
<!--
|
||||
The membership scheme used in this setup. The only values supported at the moment are
|
||||
"multicast" and "wka"
|
||||
|
||||
1. multicast - membership is automatically discovered using multicasting
|
||||
2. wka - Well-Known Address based multicasting. Membership is discovered with the help
|
||||
of one or more nodes running at a Well-Known Address. New members joining a
|
||||
cluster will first connect to a well-known node, register with the well-known node
|
||||
and get the membership list from it. When new members join, one of the well-known
|
||||
nodes will notify the others in the group. When a member leaves the cluster or
|
||||
is deemed to have left the cluster, it will be detected by the Group Membership
|
||||
Service (GMS) using a TCP ping mechanism.
|
||||
-->
|
||||
<parameter name="membershipScheme">multicast</parameter>
|
||||
<!--<parameter name="licenseKey">xxx</parameter>-->
|
||||
<!--<parameter name="mgtCenterURL">http://localhost:8081/mancenter/</parameter>-->
|
||||
|
||||
<!--
|
||||
The clustering domain/group. Nodes in the same group will belong to the same multicast
|
||||
domain. There will not be interference between nodes in different groups.
|
||||
-->
|
||||
<parameter name="domain">wso2.carbon.domain</parameter>
|
||||
|
||||
<!-- The multicast address to be used -->
|
||||
<!--<parameter name="mcastAddress">228.0.0.4</parameter>-->
|
||||
|
||||
<!-- The multicast port to be used -->
|
||||
<parameter name="mcastPort">45564</parameter>
|
||||
|
||||
<parameter name="mcastTTL">100</parameter>
|
||||
|
||||
<parameter name="mcastTimeout">60</parameter>
|
||||
|
||||
<!--
|
||||
The IP address of the network interface to which the multicasting has to be bound to.
|
||||
Multicasting would be done using this interface.
|
||||
-->
|
||||
<!--
|
||||
<parameter name="mcastBindAddress">127.0.0.1</parameter>
|
||||
-->
|
||||
<!-- The host name or IP address of this member -->
|
||||
|
||||
<parameter name="localMemberHost">127.0.0.1</parameter>
|
||||
|
||||
<!--
|
||||
The bind adress of this member. The difference between localMemberHost & localMemberBindAddress
|
||||
is that localMemberHost is the one that is advertised by this member, while localMemberBindAddress
|
||||
is the address to which this member is bound to.
|
||||
-->
|
||||
<!--
|
||||
<parameter name="localMemberBindAddress">127.0.0.1</parameter>
|
||||
-->
|
||||
|
||||
<!--
|
||||
The TCP port used by this member. This is the port through which other nodes will
|
||||
contact this member
|
||||
-->
|
||||
<parameter name="localMemberPort">4000</parameter>
|
||||
|
||||
<!--
|
||||
The bind port of this member. The difference between localMemberPort & localMemberBindPort
|
||||
is that localMemberPort is the one that is advertised by this member, while localMemberBindPort
|
||||
is the port to which this member is bound to.
|
||||
-->
|
||||
<!--
|
||||
<parameter name="localMemberBindPort">4001</parameter>
|
||||
-->
|
||||
|
||||
<!--
|
||||
Properties specific to this member
|
||||
-->
|
||||
<parameter name="properties">
|
||||
<property name="backendServerURL" value="https://${hostName}:${httpsPort}/services/"/>
|
||||
<property name="mgtConsoleURL" value="https://${hostName}:${httpsPort}/"/>
|
||||
<property name="subDomain" value="worker"/>
|
||||
</parameter>
|
||||
|
||||
<!--
|
||||
Uncomment the following section to load custom Hazelcast data serializers.
|
||||
-->
|
||||
<!--
|
||||
<parameter name="hazelcastSerializers">
|
||||
<serializer typeClass="java.util.TreeSet">org.wso2.carbon.hazelcast.serializer.TreeSetSerializer
|
||||
</serializer>
|
||||
<serializer typeClass="java.util.Map">org.wso2.carbon.hazelcast.serializer.MapSerializer</serializer>
|
||||
</parameter>
|
||||
-->
|
||||
|
||||
<!--
|
||||
The list of static or well-known members. These entries will only be valid if the
|
||||
"membershipScheme" above is set to "wka"
|
||||
-->
|
||||
<members>
|
||||
<member>
|
||||
<hostName>127.0.0.1</hostName>
|
||||
<port>4000</port>
|
||||
</member>
|
||||
</members>
|
||||
|
||||
<!--
|
||||
Enable the groupManagement entry if you need to run this node as a cluster manager.
|
||||
Multiple application domains with different GroupManagementAgent implementations
|
||||
can be defined in this section.
|
||||
-->
|
||||
<groupManagement enable="false">
|
||||
<applicationDomain name="wso2.as.domain"
|
||||
description="AS group"
|
||||
agent="org.wso2.carbon.core.clustering.hazelcast.HazelcastGroupManagementAgent"
|
||||
subDomain="worker"
|
||||
port="2222"/>
|
||||
</groupManagement>
|
||||
</clustering>
|
||||
</axisconfig>
|
||||
@ -0,0 +1,300 @@
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<axisconfig name="AxisJava2.0">
|
||||
<!-- ================================================= -->
|
||||
<!-- Parameters -->
|
||||
<!-- ================================================= -->
|
||||
<parameter name="hotdeployment">true</parameter>
|
||||
<parameter name="hotupdate">false</parameter>
|
||||
<parameter name="enableMTOM">false</parameter>
|
||||
|
||||
<!-- commons-http-client defaultMaxConnPerHost -->
|
||||
<parameter name="defaultMaxConnPerHost">500</parameter>
|
||||
<!-- commons-http-client maxTotalConnections -->
|
||||
<parameter name="maxTotalConnections">15000</parameter>
|
||||
|
||||
<!--If turned on with use the Accept header of the request to determine the contentType of the
|
||||
response-->
|
||||
<parameter name="httpContentNegotiation">false</parameter>
|
||||
|
||||
<!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
|
||||
<!--that behaviour.-->
|
||||
<parameter name="sendStacktraceDetailsWithFaults">true</parameter>
|
||||
|
||||
<!--If there aren't any information available to find out the fault reason, we set the message of the exception-->
|
||||
<!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
|
||||
<!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
|
||||
<!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
|
||||
<parameter name="DrillDownToRootCauseForFaultReason">false</parameter>
|
||||
|
||||
<!--This is the user name and password of admin console-->
|
||||
<parameter name="userName">admin</parameter>
|
||||
<parameter name="password">axis2</parameter>
|
||||
|
||||
<!--To override repository/services you need to uncomment following parameter and value SHOULD be absolute file path.-->
|
||||
<!--ServicesDirectory only works on the following cases-->
|
||||
<!---File based configurator and in that case the value should be a file URL (http:// not allowed)-->
|
||||
<!---When creating URL Based configurator with URL “file://” -->
|
||||
<!--- War based configurator with expanded case , -->
|
||||
|
||||
<!--All the other scenarios it will be ignored.-->
|
||||
<!--<parameter name="ServicesDirectory">service</parameter>-->
|
||||
<!--To override repository/modules you need to uncomment following parameter and value SHOULD be absolute file path-->
|
||||
<!--<parameter name="ModulesDirectory">modules</parameter>-->
|
||||
|
||||
<!--Following params will set the proper context paths for invocations. All the endpoints will have a commons context-->
|
||||
<!--root which can configured using the following contextRoot parameter-->
|
||||
<!--<parameter name="contextRoot">axis2</parameter>-->
|
||||
|
||||
<!--Our HTTP endpoints can handle both REST and SOAP. Following parameters can be used to distinguish those endpoints-->
|
||||
<!--<parameter name="servicePath">services</parameter>-->
|
||||
<!--<parameter name="restPath">rest</parameter>-->
|
||||
|
||||
<!-- Following parameter will completely disable REST handling in Axis2-->
|
||||
<parameter name="disableREST" locked="false">false</parameter>
|
||||
|
||||
<!--POJO deployer , this will alow users to drop .class file and make that into a service-->
|
||||
<deployer extension=".class" directory="pojo" class="org.apache.axis2.deployment.POJODeployer"/>
|
||||
|
||||
<!-- Following parameter will set the host name for the epr-->
|
||||
<!--<parameter name="hostname" locked="true">myhost.com</parameter>-->
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Receivers -->
|
||||
<!-- ================================================= -->
|
||||
<!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for -->
|
||||
<!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
|
||||
<!--any operation -->
|
||||
<!--Note : You can override this for particular service by adding the same element with your requirement-->
|
||||
<messageReceivers>
|
||||
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
|
||||
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
|
||||
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-only"
|
||||
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-out"
|
||||
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
|
||||
</messageReceivers>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Formatter -->
|
||||
<!-- ================================================= -->
|
||||
<!--Following content type to message formatter mapping can be used to implement support for different message -->
|
||||
<!--format serialization in Axis2. These message formats are expected to be resolved based on the content type. -->
|
||||
<messageFormatters>
|
||||
<messageFormatter contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
|
||||
<messageFormatter contentType="multipart/form-data"
|
||||
class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
|
||||
<messageFormatter contentType="application/xml"
|
||||
class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
|
||||
<messageFormatter contentType="text/xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
<messageFormatter contentType="application/soap+xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
<!--JSON Message Formatters-->
|
||||
<messageFormatter contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/>
|
||||
<messageFormatter contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishMessageFormatter"/>
|
||||
<messageFormatter contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/>
|
||||
</messageFormatters>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Builders -->
|
||||
<!-- ================================================= -->
|
||||
<!--Following content type to builder mapping can be used to implement support for different message -->
|
||||
<!--formats in Axis2. These message formats are expected to be resolved based on the content type. -->
|
||||
<messageBuilders>
|
||||
<messageBuilder contentType="application/xml"
|
||||
class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
|
||||
<messageBuilder contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
|
||||
<!--JSON Message Builders-->
|
||||
<messageBuilder contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/>
|
||||
<messageBuilder contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishOMBuilder"/>
|
||||
<messageBuilder contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/>
|
||||
<!--Left commented because it adds the depandancy of servlet-api to other modules.
|
||||
Please uncomment to Receive messages in multipart/form-data format-->
|
||||
<!--<messageBuilder contentType="multipart/form-data"-->
|
||||
<!--class="org.apache.axis2.builder.MultipartFormDataBuilder"/>-->
|
||||
</messageBuilders>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Target Resolvers -->
|
||||
<!-- ================================================= -->
|
||||
<!-- Uncomment the following and specify the class name for your TargetResolver to add -->
|
||||
<!-- a TargetResolver. TargetResolvers are used to process the To EPR for example to -->
|
||||
<!-- choose a server in a cluster -->
|
||||
<!--<targetResolvers>-->
|
||||
<!--<targetResolver class="" />-->
|
||||
<!--</targetResolvers>-->
|
||||
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Transport Ins -->
|
||||
<!-- ================================================= -->
|
||||
<transportReceiver name="http"
|
||||
class="org.apache.axis2.transport.http.SimpleHTTPServer">
|
||||
<parameter name="port">6071</parameter>
|
||||
<!--If you want to give your own host address for EPR generation-->
|
||||
<!--uncomment following parameter , and set as you required.-->
|
||||
<!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
|
||||
</transportReceiver>
|
||||
|
||||
<!--Uncomment if you want to have TCP transport support-->
|
||||
<!--<transportReceiver name="tcp"
|
||||
class="org.apache.axis2.transport.tcp.TCPServer">
|
||||
<parameter name="port">6061</parameter>-->
|
||||
<!--If you want to give your own host address for EPR generation-->
|
||||
<!--uncomment following parameter , and set as you required.-->
|
||||
<!--<parameter name="hostname">tcp://myApp.com/ws</parameter>-->
|
||||
<!--</transportReceiver>-->
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Transport Outs -->
|
||||
<!-- ================================================= -->
|
||||
|
||||
<!--<transportSender name="jms"-->
|
||||
<!--class="org.apache.axis2.transport.jms.JMSSender"/>-->
|
||||
<!--transportSender name="tcp"
|
||||
class="org.apache.axis2.transport.tcp.TCPTransportSender"/-->
|
||||
<transportSender name="local"
|
||||
class="org.apache.axis2.transport.local.LocalTransportSender"/>
|
||||
<transportSender name="http"
|
||||
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
|
||||
<parameter name="PROTOCOL">HTTP/1.1</parameter>
|
||||
<parameter name="Transfer-Encoding">chunked</parameter>
|
||||
<parameter name="SO_TIMEOUT">60000</parameter>
|
||||
<parameter name="CONNECTION_TIMEOUT">60000</parameter>
|
||||
</transportSender>
|
||||
<transportSender name="https"
|
||||
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
|
||||
<parameter name="PROTOCOL">HTTP/1.1</parameter>
|
||||
<parameter name="Transfer-Encoding">chunked</parameter>
|
||||
<parameter name="SO_TIMEOUT">60000</parameter>
|
||||
<parameter name="CONNECTION_TIMEOUT">60000</parameter>
|
||||
</transportSender>
|
||||
<!--<transportSender name="java"-->
|
||||
<!--class="org.apache.axis2.transport.java.JavaTransportSender"/>-->
|
||||
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- SOAP Role Configuration -->
|
||||
<!-- ================================================= -->
|
||||
<!-- Use the following pattern to configure this axis2
|
||||
instance to act in particular roles. Note that in
|
||||
the absence of any configuration, Axis2 will act
|
||||
only in the ultimate receiver role -->
|
||||
<!--
|
||||
<SOAPRoleConfiguration isUltimateReceiver="true">
|
||||
<role>http://my/custom/role</role>
|
||||
</SOAPRoleConfiguration>
|
||||
-->
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Phases -->
|
||||
<!-- ================================================= -->
|
||||
<phaseOrder type="InFlow">
|
||||
<!-- System pre-defined phases -->
|
||||
<phase name="Transport">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="RequestURIOperationDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<phase name="RMPhase"/>
|
||||
<!-- System pre defined phases -->
|
||||
<!-- After Postdispatch phase module author or or service author can add any phase he want -->
|
||||
<phase name="OperationInPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFlow">
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationOutPhase"/>
|
||||
<!--system predefined phase-->
|
||||
<!--these phase will run irrespective of the service-->
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="InFaultFlow">
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="RequestURIOperationDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<phase name="RMPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationInFaultPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFaultFlow">
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationOutFaultPhase"/>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
<phase name="Transport"/>
|
||||
</phaseOrder>
|
||||
</axisconfig>
|
||||
@ -0,0 +1,285 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!--
|
||||
~ Copyright WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<axisconfig name="AxisJava2.0">
|
||||
<!-- ================================================= -->
|
||||
<!-- Parameters -->
|
||||
<!-- ================================================= -->
|
||||
<parameter name="hotdeployment">true</parameter>
|
||||
<parameter name="hotupdate">true</parameter>
|
||||
<parameter name="enableMTOM">optional</parameter>
|
||||
|
||||
<!--If turned on with use the Accept header of the request to determine the contentType of the
|
||||
response-->
|
||||
<parameter name="httpContentNegotiation">true</parameter>
|
||||
|
||||
<!--If true, then artifacts(services, modules etc) are not loaded when a tenant is loaded.
|
||||
So service deployment, module deployment etc. will not happen. So the tenant loading time will
|
||||
be fast.-->
|
||||
<parameter name="DisableArtifactLoading">false</parameter>
|
||||
|
||||
<!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
|
||||
<!--that behaviour.-->
|
||||
<parameter name="sendStacktraceDetailsWithFaults">true</parameter>
|
||||
|
||||
<!--If there aren't any information available to find out the fault reason, we set the message of the exception-->
|
||||
<!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
|
||||
<!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
|
||||
<!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
|
||||
<parameter name="DrillDownToRootCauseForFaultReason">false</parameter>
|
||||
|
||||
<!-- Following parameter will completely disable REST handling in Axis2-->
|
||||
<parameter name="disableREST" locked="false">false</parameter>
|
||||
|
||||
<!--the directory in which .aar services are deployed inside axis2 repository-->
|
||||
<parameter name="ServicesDirectory">axis2services</parameter>
|
||||
|
||||
<!--POJO deployer , this will alow users to drop .class file and make that into a service-->
|
||||
<deployer extension=".class" directory="pojo" class="org.apache.axis2.deployment.POJODeployer"/>
|
||||
<deployer extension=".jar" directory="transports"
|
||||
class="org.apache.axis2.deployment.TransportDeployer"/>
|
||||
|
||||
<!-- Following parameter will set the host name for the epr-->
|
||||
<!--<parameter name="hostname" locked="true">myhost.com</parameter>-->
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Receivers -->
|
||||
<!-- ================================================= -->
|
||||
<!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for -->
|
||||
<!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
|
||||
<!--any operation -->
|
||||
<!--Note : You can override this for particular service by adding the same element with your requirement-->
|
||||
<messageReceivers>
|
||||
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
|
||||
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
|
||||
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-only"
|
||||
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-out"
|
||||
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-only"
|
||||
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/robust-in-only"
|
||||
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
|
||||
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
|
||||
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
|
||||
</messageReceivers>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Formatter -->
|
||||
<!-- ================================================= -->
|
||||
<!--Following content type to message formatter mapping can be used to implement support for different message -->
|
||||
<!--format serialization in Axis2. These message formats are expected to be resolved based on the content type. -->
|
||||
<messageFormatters>
|
||||
<messageFormatter contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
|
||||
<messageFormatter contentType="multipart/form-data"
|
||||
class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
|
||||
<messageFormatter contentType="application/xml"
|
||||
class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
|
||||
<messageFormatter contentType="text/xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
<messageFormatter contentType="application/soap+xml"
|
||||
class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
|
||||
<!--JSON Message Formatters-->
|
||||
<!--messageFormatter contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/-->
|
||||
<messageFormatter contentType="application/json"
|
||||
class="org.apache.axis2.json.gson.JsonFormatter" />
|
||||
<messageFormatter contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishMessageFormatter"/>
|
||||
<!--messageFormatter contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONMessageFormatter"/-->
|
||||
<messageFormatter contentType="text/javascript"
|
||||
class="org.apache.axis2.json.gson.JsonFormatter" />
|
||||
</messageFormatters>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Message Builders -->
|
||||
<!-- ================================================= -->
|
||||
<!--Following content type to builder mapping can be used to implement support for different message -->
|
||||
<!--formats in Axis2. These message formats are expected to be resolved based on the content type. -->
|
||||
<messageBuilders>
|
||||
<messageBuilder contentType="application/xml"
|
||||
class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
|
||||
<messageBuilder contentType="application/x-www-form-urlencoded"
|
||||
class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
|
||||
<!--JSON Message Builders-->
|
||||
<!--messageBuilder contentType="application/json"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/-->
|
||||
<messageBuilder contentType="application/json"
|
||||
class="org.apache.axis2.json.gson.JsonBuilder" />
|
||||
<messageBuilder contentType="application/json/badgerfish"
|
||||
class="org.apache.axis2.json.JSONBadgerfishOMBuilder"/>
|
||||
<!--messageBuilder contentType="text/javascript"
|
||||
class="org.apache.axis2.json.JSONOMBuilder"/-->
|
||||
<messageBuilder contentType="text/javascript"
|
||||
class="org.apache.axis2.json.gson.JsonBuilder" />
|
||||
<!--Left commented because it adds the depandancy of servlet-api to other modules.
|
||||
Please uncomment to Receive messages in multipart/form-data format-->
|
||||
<!--<messageBuilder contentType="multipart/form-data"-->
|
||||
<!--class="org.apache.axis2.builder.MultipartFormDataBuilder"/>-->
|
||||
</messageBuilders>
|
||||
|
||||
<!-- ================================================= -->
|
||||
<!-- Phases -->
|
||||
<!-- ================================================= -->
|
||||
<phaseOrder type="InFlow">
|
||||
<!-- System pre-defined phases -->
|
||||
<!--
|
||||
The MsgInObservation phase is used to observe messages as soon as they are
|
||||
received. In this phase, we could do some things such as SOAP message tracing & keeping
|
||||
track of the time at which a particular message was received
|
||||
|
||||
NOTE: This should be the very first phase in this flow
|
||||
-->
|
||||
<phase name="MsgInObservation"/>
|
||||
<phase name="Transport">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="RequestURIOperationDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher" />
|
||||
<handler name="JSONMessageHandler"
|
||||
class="org.apache.axis2.json.gson.JSONMessageHandler" />
|
||||
</phase>
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Ghost">
|
||||
<handler name="GhostDispatcher" class="org.wso2.carbon.core.dispatchers.GhostDispatcher"/>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<!-- System pre defined phases -->
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- After Postdispatch phase module author or or service author can add any phase he want -->
|
||||
<phase name="OperationInPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFlow">
|
||||
<phase name="UEPPhase"/>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationOutPhase"/>
|
||||
<!--system predefined phase-->
|
||||
<!--these phase will run irrespective of the service-->
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
<!--
|
||||
The MsgOutObservation phase is used to observe messages just before the
|
||||
responses are sent out. In this phase, we could do some things such as SOAP message
|
||||
tracing & keeping track of the time at which a particular response was sent.
|
||||
|
||||
NOTE: This should be the very last phase in this flow
|
||||
-->
|
||||
<phase name="MsgOutObservation"/>
|
||||
<!--Following phase is added to publish stats-->
|
||||
<phase name="StatReporting"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="InFaultFlow">
|
||||
<!--
|
||||
The MsgInObservation phase is used to observe messages as soon as they are
|
||||
received. In this phase, we could do some things such as SOAP message tracing & keeping
|
||||
track of the time at which a particular message was received
|
||||
|
||||
NOTE: This should be the very first phase in this flow
|
||||
-->
|
||||
<phase name="MsgInObservation"/>
|
||||
<phase name="Transport">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
|
||||
<order phase="Transport"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Addressing">
|
||||
<handler name="AddressingBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
|
||||
<order phase="Addressing"/>
|
||||
</handler>
|
||||
</phase>
|
||||
<phase name="Ghost">
|
||||
<handler name="GhostDispatcher" class="org.wso2.carbon.core.dispatchers.GhostDispatcher"/>
|
||||
</phase>
|
||||
<phase name="Security"/>
|
||||
<phase name="PreDispatch"/>
|
||||
<phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
|
||||
<handler name="RequestURIBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
|
||||
<handler name="SOAPActionBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
|
||||
<handler name="RequestURIOperationDispatcher"
|
||||
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
|
||||
<handler name="SOAPMessageBodyBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
|
||||
|
||||
<handler name="HTTPLocationBasedDispatcher"
|
||||
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
|
||||
</phase>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="OpPhase"/>
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="OperationInFaultPhase"/>
|
||||
</phaseOrder>
|
||||
<phaseOrder type="OutFaultFlow">
|
||||
<!-- user can add his own phases to this area -->
|
||||
<phase name="UEPPhase"/>
|
||||
<phase name="OperationOutFaultPhase"/>
|
||||
<phase name="RMPhase"/>
|
||||
<phase name="PolicyDetermination"/>
|
||||
<phase name="MessageOut"/>
|
||||
<phase name="Security"/>
|
||||
<phase name="Transport"/>
|
||||
<!--
|
||||
The MsgOutObservation phase is used to observe messages just before the
|
||||
responses are sent out. In this phase, we could do some things such as SOAP message
|
||||
tracing & keeping track of the time at which a particular response was sent.
|
||||
|
||||
NOTE: This should be the very last phase in this flow
|
||||
-->
|
||||
<phase name="MsgOutObservation"/>
|
||||
<!--Following phase is added to publish stats-->
|
||||
<phase name="StatReporting"/>
|
||||
</phaseOrder>
|
||||
</axisconfig>
|
||||
@ -0,0 +1,656 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<!--
|
||||
This is the main server configuration file
|
||||
|
||||
${carbon.home} represents the carbon.home system property.
|
||||
Other system properties can be specified in a similar manner.
|
||||
-->
|
||||
<Server xmlns="http://wso2.org/projects/carbon/carbon.xml">
|
||||
|
||||
<!--
|
||||
Product Name
|
||||
-->
|
||||
<Name>${product.name}</Name>
|
||||
|
||||
<!--
|
||||
machine readable unique key to identify each product
|
||||
-->
|
||||
<ServerKey>${product.key}</ServerKey>
|
||||
|
||||
<!--
|
||||
Product Version
|
||||
-->
|
||||
<Version>${product.version}</Version>
|
||||
|
||||
<!--
|
||||
Host name or IP address of the machine hosting this server
|
||||
e.g. www.wso2.org, 192.168.1.10
|
||||
This is will become part of the End Point Reference of the
|
||||
services deployed on this server instance.
|
||||
-->
|
||||
<!--HostName>www.wso2.org</HostName-->
|
||||
|
||||
<!--
|
||||
Host name to be used for the Carbon management console
|
||||
-->
|
||||
<!--MgtHostName>mgt.wso2.org</MgtHostName-->
|
||||
|
||||
<!--
|
||||
The URL of the back end server. This is where the admin services are hosted and
|
||||
will be used by the clients in the front end server.
|
||||
This is required only for the Front-end server. This is used when seperating BE server from FE server
|
||||
-->
|
||||
<ServerURL>local:/${carbon.context}/services/</ServerURL>
|
||||
<!--
|
||||
<ServerURL>https://${carbon.local.ip}:${carbon.management.port}${carbon.context}/services/</ServerURL>
|
||||
-->
|
||||
<!--
|
||||
The URL of the index page. This is where the user will be redirected after signing in to the
|
||||
carbon server.
|
||||
-->
|
||||
<!-- IndexPageURL>/carbon/admin/index.jsp</IndexPageURL-->
|
||||
|
||||
<!--
|
||||
For cApp deployment, we have to identify the roles that can be acted by the current server.
|
||||
The following property is used for that purpose. Any number of roles can be defined here.
|
||||
Regular expressions can be used in the role.
|
||||
Ex : <Role>.*</Role> means this server can act any role
|
||||
-->
|
||||
<ServerRoles>
|
||||
<Role>${default.server.role}</Role>
|
||||
</ServerRoles>
|
||||
|
||||
<!-- uncommnet this line to subscribe to a bam instance automatically -->
|
||||
<!--<BamServerURL>https://bamhost:bamport/services/</BamServerURL>-->
|
||||
|
||||
<!--
|
||||
The fully qualified name of the server
|
||||
-->
|
||||
<Package>org.wso2.carbon</Package>
|
||||
|
||||
<!--
|
||||
Webapp context root of WSO2 Carbon management console.
|
||||
-->
|
||||
<WebContextRoot>/</WebContextRoot>
|
||||
|
||||
<!--
|
||||
Proxy context path is a useful parameter to add a proxy path when a Carbon server is fronted by reverse proxy. In addtion
|
||||
to the proxy host and proxy port this parameter allows you add a path component to external URLs. e.g.
|
||||
URL of the Carbon server -> https://10.100.1.1:9443/carbon
|
||||
URL of the reverse proxy -> https://prod.abc.com/appserver/carbon
|
||||
|
||||
appserver - proxy context path. This specially required whenever you are generating URLs to displace in
|
||||
Carbon UI components.
|
||||
-->
|
||||
<!--
|
||||
<MgtProxyContextPath></MgtProxyContextPath>
|
||||
<ProxyContextPath></ProxyContextPath>
|
||||
-->
|
||||
|
||||
<!-- In-order to get the registry http Port from the back-end when the default http transport is not the same-->
|
||||
<!--RegistryHttpPort>9763</RegistryHttpPort-->
|
||||
|
||||
<!--
|
||||
Number of items to be displayed on a management console page. This is used at the
|
||||
backend server for pagination of various items.
|
||||
-->
|
||||
<ItemsPerPage>15</ItemsPerPage>
|
||||
|
||||
<!-- The endpoint URL of the cloud instance management Web service -->
|
||||
<!--<InstanceMgtWSEndpoint>https://ec2.amazonaws.com/</InstanceMgtWSEndpoint>-->
|
||||
|
||||
<!--
|
||||
Ports used by this server
|
||||
-->
|
||||
<Ports>
|
||||
|
||||
<!-- Ports offset. This entry will set the value of the ports defined below to
|
||||
the define value + Offset.
|
||||
e.g. Offset=2 and HTTPS port=9443 will set the effective HTTPS port to 9445
|
||||
-->
|
||||
<Offset>0</Offset>
|
||||
|
||||
<!-- The JMX Ports -->
|
||||
<JMX>
|
||||
<!--The port RMI registry is exposed-->
|
||||
<RMIRegistryPort>9999</RMIRegistryPort>
|
||||
<!--The port RMI server should be exposed-->
|
||||
<RMIServerPort>11111</RMIServerPort>
|
||||
</JMX>
|
||||
|
||||
<!-- Embedded LDAP server specific ports -->
|
||||
<EmbeddedLDAP>
|
||||
<!-- Port which embedded LDAP server runs -->
|
||||
<LDAPServerPort>10389</LDAPServerPort>
|
||||
<!-- Port which KDC (Kerberos Key Distribution Center) server runs -->
|
||||
<KDCServerPort>8000</KDCServerPort>
|
||||
</EmbeddedLDAP>
|
||||
|
||||
<!--
|
||||
Override datasources JNDIproviderPort defined in bps.xml and datasources.properties files
|
||||
-->
|
||||
<!--<JNDIProviderPort>2199</JNDIProviderPort>-->
|
||||
<!--Override receive port of thrift based entitlement service.-->
|
||||
<ThriftEntitlementReceivePort>10500</ThriftEntitlementReceivePort>
|
||||
|
||||
</Ports>
|
||||
|
||||
<!--
|
||||
JNDI Configuration
|
||||
-->
|
||||
<JNDI>
|
||||
<!--
|
||||
The fully qualified name of the default initial context factory
|
||||
-->
|
||||
<DefaultInitialContextFactory>org.wso2.carbon.tomcat.jndi.CarbonJavaURLContextFactory</DefaultInitialContextFactory>
|
||||
<!--
|
||||
The restrictions that are done to various JNDI Contexts in a Multi-tenant environment
|
||||
-->
|
||||
<Restrictions>
|
||||
<!--
|
||||
Contexts that will be available only to the super-tenant
|
||||
-->
|
||||
<!-- <SuperTenantOnly>
|
||||
<UrlContexts>
|
||||
<UrlContext>
|
||||
<Scheme>foo</Scheme>
|
||||
</UrlContext>
|
||||
<UrlContext>
|
||||
<Scheme>bar</Scheme>
|
||||
</UrlContext>
|
||||
</UrlContexts>
|
||||
</SuperTenantOnly> -->
|
||||
<!--
|
||||
Contexts that are common to all tenants
|
||||
-->
|
||||
<AllTenants>
|
||||
<UrlContexts>
|
||||
<UrlContext>
|
||||
<Scheme>java</Scheme>
|
||||
</UrlContext>
|
||||
<!-- <UrlContext>
|
||||
<Scheme>foo</Scheme>
|
||||
</UrlContext> -->
|
||||
</UrlContexts>
|
||||
</AllTenants>
|
||||
<!--
|
||||
All other contexts not mentioned above will be available on a per-tenant basis
|
||||
(i.e. will not be shared among tenants)
|
||||
-->
|
||||
</Restrictions>
|
||||
</JNDI>
|
||||
|
||||
<!--
|
||||
Property to determine if the server is running an a cloud deployment environment.
|
||||
This property should only be used to determine deployment specific details that are
|
||||
applicable only in a cloud deployment, i.e when the server deployed *-as-a-service.
|
||||
-->
|
||||
<IsCloudDeployment>false</IsCloudDeployment>
|
||||
|
||||
<!--
|
||||
Property to determine whether usage data should be collected for metering purposes
|
||||
-->
|
||||
<EnableMetering>false</EnableMetering>
|
||||
|
||||
<!-- The Max time a thread should take for execution in seconds -->
|
||||
<MaxThreadExecutionTime>600</MaxThreadExecutionTime>
|
||||
|
||||
<!--
|
||||
A flag to enable or disable Ghost Deployer. By default this is set to false. That is
|
||||
because the Ghost Deployer works only with the HTTP/S transports. If you are using
|
||||
other transports, don't enable Ghost Deployer.
|
||||
-->
|
||||
<GhostDeployment>
|
||||
<Enabled>false</Enabled>
|
||||
</GhostDeployment>
|
||||
|
||||
|
||||
<!--
|
||||
Eager loading or lazy loading is a design pattern commonly used in computer programming which
|
||||
will initialize an object upon creation or load on-demand. In carbon, lazy loading is used to
|
||||
load tenant when a request is received only. Similarly Eager loading is used to enable load
|
||||
existing tenants after carbon server starts up. Using this feature, you will be able to include
|
||||
or exclude tenants which are to be loaded when server startup.
|
||||
|
||||
We can enable only one LoadingPolicy at a given time.
|
||||
|
||||
1. Tenant Lazy Loading
|
||||
This is the default behaviour and enabled by default. With this policy, tenants are not loaded at
|
||||
server startup, but loaded based on-demand (i.e when a request is received for a tenant).
|
||||
The default tenant idle time is 30 minutes.
|
||||
|
||||
2. Tenant Eager Loading
|
||||
This is by default not enabled. It can be be enabled by un-commenting the <EagerLoading> section.
|
||||
The eager loading configurations supported are as below. These configurations can be given as the
|
||||
value for <Include> element with eager loading.
|
||||
(i)Load all tenants when server startup - *
|
||||
(ii)Load all tenants except foo.com & bar.com - *,!foo.com,!bar.com
|
||||
(iii)Load only foo.com & bar.com to be included - foo.com,bar.com
|
||||
-->
|
||||
<Tenant>
|
||||
<LoadingPolicy>
|
||||
<LazyLoading>
|
||||
<IdleTime>30</IdleTime>
|
||||
</LazyLoading>
|
||||
<!-- <EagerLoading>
|
||||
<Include>*,!foo.com,!bar.com</Include>
|
||||
</EagerLoading>-->
|
||||
</LoadingPolicy>
|
||||
</Tenant>
|
||||
|
||||
<!--
|
||||
Caching related configurations
|
||||
-->
|
||||
<Cache>
|
||||
<!-- Default cache timeout in minutes -->
|
||||
<DefaultCacheTimeout>15</DefaultCacheTimeout>
|
||||
</Cache>
|
||||
|
||||
<!--
|
||||
Axis2 related configurations
|
||||
-->
|
||||
<Axis2Config>
|
||||
<!--
|
||||
Location of the Axis2 Services & Modules repository
|
||||
|
||||
This can be a directory in the local file system, or a URL.
|
||||
|
||||
e.g.
|
||||
1. /home/wso2wsas/repository/ - An absolute path
|
||||
2. repository - In this case, the path is relative to CARBON_HOME
|
||||
3. file:///home/wso2wsas/repository/
|
||||
4. http://wso2wsas/repository/
|
||||
-->
|
||||
<RepositoryLocation>${carbon.home}/repository/deployment/server/</RepositoryLocation>
|
||||
|
||||
<!--
|
||||
Deployment update interval in seconds. This is the interval between repository listener
|
||||
executions.
|
||||
-->
|
||||
<DeploymentUpdateInterval>15</DeploymentUpdateInterval>
|
||||
|
||||
<!--
|
||||
Location of the main Axis2 configuration descriptor file, a.k.a. axis2.xml file
|
||||
|
||||
This can be a file on the local file system, or a URL
|
||||
|
||||
e.g.
|
||||
1. /home/repository/axis2.xml - An absolute path
|
||||
2. conf/axis2.xml - In this case, the path is relative to CARBON_HOME
|
||||
3. file:///home/carbon/repository/axis2.xml
|
||||
4. http://repository/conf/axis2.xml
|
||||
-->
|
||||
<ConfigurationFile>${carbon.home}/repository/conf/axis2/axis2.xml</ConfigurationFile>
|
||||
|
||||
<!--
|
||||
ServiceGroupContextIdleTime, which will be set in ConfigurationContex
|
||||
for multiple clients which are going to access the same ServiceGroupContext
|
||||
Default Value is 30 Sec.
|
||||
-->
|
||||
<ServiceGroupContextIdleTime>30000</ServiceGroupContextIdleTime>
|
||||
|
||||
<!--
|
||||
This repository location is used to crete the client side configuration
|
||||
context used by the server when calling admin services.
|
||||
-->
|
||||
<ClientRepositoryLocation>${carbon.home}/repository/deployment/client/</ClientRepositoryLocation>
|
||||
<!-- This axis2 xml is used in createing the configuration context by the FE server
|
||||
calling to BE server -->
|
||||
<clientAxis2XmlLocation>${carbon.home}/repository/conf/axis2/axis2_client.xml</clientAxis2XmlLocation>
|
||||
<!-- If this parameter is set, the ?wsdl on an admin service will not give the admin service wsdl. -->
|
||||
<HideAdminServiceWSDLs>true</HideAdminServiceWSDLs>
|
||||
|
||||
<!--WARNING-Use With Care! Uncommenting bellow parameter would expose all AdminServices in HTTP transport.
|
||||
With HTTP transport your credentials and data routed in public channels are vulnerable for sniffing attacks.
|
||||
Use bellow parameter ONLY if your communication channels are confirmed to be secured by other means -->
|
||||
<!--HttpAdminServices>*</HttpAdminServices-->
|
||||
|
||||
</Axis2Config>
|
||||
|
||||
<!--
|
||||
The default user roles which will be created when the server
|
||||
is started up for the first time.
|
||||
-->
|
||||
<ServiceUserRoles>
|
||||
<Role>
|
||||
<Name>admin</Name>
|
||||
<Description>Default Administrator Role</Description>
|
||||
</Role>
|
||||
<Role>
|
||||
<Name>user</Name>
|
||||
<Description>Default User Role</Description>
|
||||
</Role>
|
||||
</ServiceUserRoles>
|
||||
|
||||
<!--
|
||||
Enable following config to allow Emails as usernames.
|
||||
-->
|
||||
<!--EnableEmailUserName>true</EnableEmailUserName-->
|
||||
|
||||
<!--
|
||||
Security configurations
|
||||
-->
|
||||
<Security>
|
||||
<!--
|
||||
KeyStore which will be used for encrypting/decrypting passwords
|
||||
and other sensitive information.
|
||||
-->
|
||||
<KeyStore>
|
||||
<!-- Keystore file location-->
|
||||
<Location>${carbon.home}/repository/resources/security/wso2carbon.jks</Location>
|
||||
<!-- Keystore type (JKS/PKCS12 etc.)-->
|
||||
<Type>JKS</Type>
|
||||
<!-- Keystore password-->
|
||||
<Password>wso2carbon</Password>
|
||||
<!-- Private Key alias-->
|
||||
<KeyAlias>wso2carbon</KeyAlias>
|
||||
<!-- Private Key password-->
|
||||
<KeyPassword>wso2carbon</KeyPassword>
|
||||
</KeyStore>
|
||||
|
||||
<!--
|
||||
System wide trust-store which is used to maintain the certificates of all
|
||||
the trusted parties.
|
||||
-->
|
||||
<TrustStore>
|
||||
<!-- trust-store file location -->
|
||||
<Location>${carbon.home}/repository/resources/security/client-truststore.jks</Location>
|
||||
<!-- trust-store type (JKS/PKCS12 etc.) -->
|
||||
<Type>JKS</Type>
|
||||
<!-- trust-store password -->
|
||||
<Password>wso2carbon</Password>
|
||||
</TrustStore>
|
||||
|
||||
<!--
|
||||
The Authenticator configuration to be used at the JVM level. We extend the
|
||||
java.net.Authenticator to make it possible to authenticate to given servers and
|
||||
proxies.
|
||||
-->
|
||||
<NetworkAuthenticatorConfig>
|
||||
<!--
|
||||
Below is a sample configuration for a single authenticator. Please note that
|
||||
all child elements are mandatory. Not having some child elements would lead to
|
||||
exceptions at runtime.
|
||||
-->
|
||||
<!-- <Credential> -->
|
||||
<!--
|
||||
the pattern that would match a subset of URLs for which this authenticator
|
||||
would be used
|
||||
-->
|
||||
<!-- <Pattern>regularExpression</Pattern> -->
|
||||
<!--
|
||||
the type of this authenticator. Allowed values are:
|
||||
1. server
|
||||
2. proxy
|
||||
-->
|
||||
<!-- <Type>proxy</Type> -->
|
||||
<!-- the username used to log in to server/proxy -->
|
||||
<!-- <Username>username</Username> -->
|
||||
<!-- the password used to log in to server/proxy -->
|
||||
<!-- <Password>password</Password> -->
|
||||
<!-- </Credential> -->
|
||||
</NetworkAuthenticatorConfig>
|
||||
|
||||
<!--
|
||||
The Tomcat realm to be used for hosted Web applications. Allowed values are;
|
||||
1. UserManager
|
||||
2. Memory
|
||||
|
||||
If this is set to 'UserManager', the realm will pick users & roles from the system's
|
||||
WSO2 User Manager. If it is set to 'memory', the realm will pick users & roles from
|
||||
CARBON_HOME/repository/conf/tomcat/tomcat-users.xml
|
||||
-->
|
||||
<TomcatRealm>UserManager</TomcatRealm>
|
||||
|
||||
<!--Option to disable storing of tokens issued by STS-->
|
||||
<DisableTokenStore>false</DisableTokenStore>
|
||||
|
||||
<!--
|
||||
Security token store class name. If this is not set, default class will be
|
||||
org.wso2.carbon.security.util.SecurityTokenStore
|
||||
-->
|
||||
<!--TokenStoreClassName>org.wso2.carbon.identity.sts.store.DBTokenStore</TokenStoreClassName-->
|
||||
</Security>
|
||||
|
||||
<!--
|
||||
The temporary work directory
|
||||
-->
|
||||
<WorkDirectory>${carbon.home}/tmp/work</WorkDirectory>
|
||||
|
||||
<!--
|
||||
House-keeping configuration
|
||||
-->
|
||||
<HouseKeeping>
|
||||
|
||||
<!--
|
||||
true - Start House-keeping thread on server startup
|
||||
false - Do not start House-keeping thread on server startup.
|
||||
The user will run it manually as and when he wishes.
|
||||
-->
|
||||
<AutoStart>true</AutoStart>
|
||||
|
||||
<!--
|
||||
The interval in *minutes*, between house-keeping runs
|
||||
-->
|
||||
<Interval>10</Interval>
|
||||
|
||||
<!--
|
||||
The maximum time in *minutes*, temp files are allowed to live
|
||||
in the system. Files/directories which were modified more than
|
||||
"MaxTempFileLifetime" minutes ago will be removed by the
|
||||
house-keeping task
|
||||
-->
|
||||
<MaxTempFileLifetime>30</MaxTempFileLifetime>
|
||||
</HouseKeeping>
|
||||
|
||||
<!--
|
||||
Configuration for handling different types of file upload & other file uploading related
|
||||
config parameters.
|
||||
To map all actions to a particular FileUploadExecutor, use
|
||||
<Action>*</Action>
|
||||
-->
|
||||
<FileUploadConfig>
|
||||
<!--
|
||||
The total file upload size limit in MB
|
||||
-->
|
||||
<TotalFileSizeLimit>100</TotalFileSizeLimit>
|
||||
|
||||
<Mapping>
|
||||
<Actions>
|
||||
<Action>keystore</Action>
|
||||
<Action>certificate</Action>
|
||||
<Action>*</Action>
|
||||
</Actions>
|
||||
<Class>org.wso2.carbon.ui.transports.fileupload.AnyFileUploadExecutor</Class>
|
||||
</Mapping>
|
||||
|
||||
<Mapping>
|
||||
<Actions>
|
||||
<Action>jarZip</Action>
|
||||
</Actions>
|
||||
<Class>org.wso2.carbon.ui.transports.fileupload.JarZipUploadExecutor</Class>
|
||||
</Mapping>
|
||||
<Mapping>
|
||||
<Actions>
|
||||
<Action>dbs</Action>
|
||||
</Actions>
|
||||
<Class>org.wso2.carbon.ui.transports.fileupload.DBSFileUploadExecutor</Class>
|
||||
</Mapping>
|
||||
<Mapping>
|
||||
<Actions>
|
||||
<Action>tools</Action>
|
||||
</Actions>
|
||||
<Class>org.wso2.carbon.ui.transports.fileupload.ToolsFileUploadExecutor</Class>
|
||||
</Mapping>
|
||||
<Mapping>
|
||||
<Actions>
|
||||
<Action>toolsAny</Action>
|
||||
</Actions>
|
||||
<Class>org.wso2.carbon.ui.transports.fileupload.ToolsAnyFileUploadExecutor</Class>
|
||||
</Mapping>
|
||||
</FileUploadConfig>
|
||||
|
||||
<!--
|
||||
Processors which process special HTTP GET requests such as ?wsdl, ?policy etc.
|
||||
|
||||
In order to plug in a processor to handle a special request, simply add an entry to this
|
||||
section.
|
||||
|
||||
The value of the Item element is the first parameter in the query string(e.g. ?wsdl)
|
||||
which needs special processing
|
||||
|
||||
The value of the Class element is a class which implements
|
||||
org.wso2.carbon.transport.HttpGetRequestProcessor
|
||||
-->
|
||||
<HttpGetRequestProcessors>
|
||||
<Processor>
|
||||
<Item>info</Item>
|
||||
<Class>org.wso2.carbon.core.transports.util.InfoProcessor</Class>
|
||||
</Processor>
|
||||
<Processor>
|
||||
<Item>wsdl</Item>
|
||||
<Class>org.wso2.carbon.core.transports.util.Wsdl11Processor</Class>
|
||||
</Processor>
|
||||
<Processor>
|
||||
<Item>wsdl2</Item>
|
||||
<Class>org.wso2.carbon.core.transports.util.Wsdl20Processor</Class>
|
||||
</Processor>
|
||||
<Processor>
|
||||
<Item>xsd</Item>
|
||||
<Class>org.wso2.carbon.core.transports.util.XsdProcessor</Class>
|
||||
</Processor>
|
||||
</HttpGetRequestProcessors>
|
||||
|
||||
<!-- Deployment Synchronizer Configuration. t Enabled value to true when running with "svn based" dep sync.
|
||||
In master nodes you need to set both AutoCommit and AutoCheckout to true
|
||||
and in worker nodes set only AutoCheckout to true.
|
||||
-->
|
||||
<DeploymentSynchronizer>
|
||||
<Enabled>false</Enabled>
|
||||
<AutoCommit>false</AutoCommit>
|
||||
<AutoCheckout>true</AutoCheckout>
|
||||
<RepositoryType>svn</RepositoryType>
|
||||
<SvnUrl>http://svnrepo.example.com/repos/</SvnUrl>
|
||||
<SvnUser>username</SvnUser>
|
||||
<SvnPassword>password</SvnPassword>
|
||||
<SvnUrlAppendTenantId>true</SvnUrlAppendTenantId>
|
||||
</DeploymentSynchronizer>
|
||||
|
||||
<!-- Deployment Synchronizer Configuration. Uncomment the following section when running with "registry based" dep sync.
|
||||
In master nodes you need to set both AutoCommit and AutoCheckout to true
|
||||
and in worker nodes set only AutoCheckout to true.
|
||||
-->
|
||||
<!--<DeploymentSynchronizer>
|
||||
<Enabled>true</Enabled>
|
||||
<AutoCommit>false</AutoCommit>
|
||||
<AutoCheckout>true</AutoCheckout>
|
||||
</DeploymentSynchronizer>-->
|
||||
|
||||
<!-- Mediation persistence configurations. Only valid if mediation features are available i.e. ESB -->
|
||||
<!--<MediationConfig>
|
||||
<LoadFromRegistry>false</LoadFromRegistry>
|
||||
<SaveToFile>false</SaveToFile>
|
||||
<Persistence>enabled</Persistence>
|
||||
<RegistryPersistence>enabled</RegistryPersistence>
|
||||
</MediationConfig>-->
|
||||
|
||||
<!--
|
||||
Server intializing code, specified as implementation classes of org.wso2.carbon.core.ServerInitializer.
|
||||
This code will be run when the Carbon server is initialized
|
||||
-->
|
||||
<ServerInitializers>
|
||||
<!--<Initializer></Initializer>-->
|
||||
</ServerInitializers>
|
||||
|
||||
<!--
|
||||
Indicates whether the Carbon Servlet is required by the system, and whether it should be
|
||||
registered
|
||||
-->
|
||||
<RequireCarbonServlet>${require.carbon.servlet}</RequireCarbonServlet>
|
||||
|
||||
<!--
|
||||
Carbon H2 OSGI Configuration
|
||||
By default non of the servers start.
|
||||
name="web" - Start the web server with the H2 Console
|
||||
name="webPort" - The port (default: 8082)
|
||||
name="webAllowOthers" - Allow other computers to connect
|
||||
name="webSSL" - Use encrypted (HTTPS) connections
|
||||
name="tcp" - Start the TCP server
|
||||
name="tcpPort" - The port (default: 9092)
|
||||
name="tcpAllowOthers" - Allow other computers to connect
|
||||
name="tcpSSL" - Use encrypted (SSL) connections
|
||||
name="pg" - Start the PG server
|
||||
name="pgPort" - The port (default: 5435)
|
||||
name="pgAllowOthers" - Allow other computers to connect
|
||||
name="trace" - Print additional trace information; for all servers
|
||||
name="baseDir" - The base directory for H2 databases; for all servers
|
||||
-->
|
||||
<!--H2DatabaseConfiguration>
|
||||
<property name="web" />
|
||||
<property name="webPort">8082</property>
|
||||
<property name="webAllowOthers" />
|
||||
<property name="webSSL" />
|
||||
<property name="tcp" />
|
||||
<property name="tcpPort">9092</property>
|
||||
<property name="tcpAllowOthers" />
|
||||
<property name="tcpSSL" />
|
||||
<property name="pg" />
|
||||
<property name="pgPort">5435</property>
|
||||
<property name="pgAllowOthers" />
|
||||
<property name="trace" />
|
||||
<property name="baseDir">${carbon.home}</property>
|
||||
</H2DatabaseConfiguration-->
|
||||
<!--Disabling statistics reporter by default-->
|
||||
<StatisticsReporterDisabled>true</StatisticsReporterDisabled>
|
||||
|
||||
<!-- Enable accessing Admin Console via HTTP -->
|
||||
<!-- EnableHTTPAdminConsole>true</EnableHTTPAdminConsole -->
|
||||
|
||||
<!--
|
||||
Default Feature Repository of WSO2 Carbon.
|
||||
-->
|
||||
<FeatureRepository>
|
||||
<RepositoryName>default repository</RepositoryName>
|
||||
<RepositoryURL>${p2.repo.url}</RepositoryURL>
|
||||
</FeatureRepository>
|
||||
|
||||
<!--
|
||||
Configure API Management
|
||||
-->
|
||||
<APIManagement>
|
||||
|
||||
<!--Uses the embedded API Manager by default. If you want to use an external
|
||||
API Manager instance to manage APIs, configure below externalAPIManager-->
|
||||
|
||||
<Enabled>true</Enabled>
|
||||
|
||||
<!--Uncomment and configure API Gateway and
|
||||
Publisher URLs to use external API Manager instance-->
|
||||
|
||||
<!--ExternalAPIManager>
|
||||
|
||||
<APIGatewayURL>http://localhost:8281</APIGatewayURL>
|
||||
<APIPublisherURL>http://localhost:8281/publisher</APIPublisherURL>
|
||||
|
||||
</ExternalAPIManager-->
|
||||
|
||||
<LoadAPIContextsInServerStartup>true</LoadAPIContextsInServerStartup>
|
||||
</APIManagement>
|
||||
</Server>
|
||||
@ -0,0 +1,68 @@
|
||||
<datasources-configuration xmlns:svns="http://org.wso2.securevault/configuration">
|
||||
|
||||
<providers>
|
||||
<provider>org.wso2.carbon.ndatasource.rdbms.RDBMSDataSourceReader</provider>
|
||||
</providers>
|
||||
|
||||
<datasources>
|
||||
|
||||
<datasource>
|
||||
<name>WSO2_CARBON_DB</name>
|
||||
<description>The datasource used for registry and user manager</description>
|
||||
<jndiConfig>
|
||||
<name>jdbc/WSO2CarbonDB</name>
|
||||
</jndiConfig>
|
||||
<definition type="RDBMS">
|
||||
<configuration>
|
||||
<url>jdbc:h2:repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000</url>
|
||||
<username>wso2carbon</username>
|
||||
<password>wso2carbon</password>
|
||||
<driverClassName>org.h2.Driver</driverClassName>
|
||||
<maxActive>50</maxActive>
|
||||
<maxWait>60000</maxWait>
|
||||
<testOnBorrow>true</testOnBorrow>
|
||||
<validationQuery>SELECT 1</validationQuery>
|
||||
<validationInterval>30000</validationInterval>
|
||||
<defaultAutoCommit>false</defaultAutoCommit>
|
||||
</configuration>
|
||||
</definition>
|
||||
</datasource>
|
||||
|
||||
<!-- For an explanation of the properties, see: http://people.apache.org/~fhanik/jdbc-pool/jdbc-pool.html -->
|
||||
<!--datasource>
|
||||
<name>SAMPLE_DATA_SOURCE</name>
|
||||
<jndiConfig>
|
||||
<name></name>
|
||||
<environment>
|
||||
<property name="java.naming.factory.initial"></property>
|
||||
<property name="java.naming.provider.url"></property>
|
||||
</environment>
|
||||
</jndiConfig>
|
||||
<definition type="RDBMS">
|
||||
<configuration>
|
||||
|
||||
<defaultAutoCommit></defaultAutoCommit>
|
||||
<defaultReadOnly></defaultReadOnly>
|
||||
<defaultTransactionIsolation>NONE|READ_COMMITTED|READ_UNCOMMITTED|REPEATABLE_READ|SERIALIZABLE</defaultTransactionIsolation>
|
||||
<defaultCatalog></defaultCatalog>
|
||||
<username></username>
|
||||
<password svns:secretAlias="WSO2.DB.Password"></password>
|
||||
<maxActive></maxActive>
|
||||
<maxIdle></maxIdle>
|
||||
<initialSize></initialSize>
|
||||
<maxWait></maxWait>
|
||||
|
||||
<dataSourceClassName>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</dataSourceClassName>
|
||||
<dataSourceProps>
|
||||
<property name="url">jdbc:mysql://localhost:3306/Test1</property>
|
||||
<property name="user">root</property>
|
||||
<property name="password">123</property>
|
||||
</dataSourceProps>
|
||||
|
||||
</configuration>
|
||||
</definition>
|
||||
</datasource-->
|
||||
|
||||
</datasources>
|
||||
|
||||
</datasources-configuration>
|
||||
@ -0,0 +1,12 @@
|
||||
This directory supports adding third-pary config files to specific bundles during runtime.
|
||||
|
||||
Explanation: Each OSGi bundle has its own classLoader. Some thirdpary libs read configs from classPath. This scenario fails in OSGi runtime, since OSGi runtime does not share a common classPath for individual bundles. Bundling config files during the bundle creation process itself will solve the issue. However it limits the ability to edit the configs during restarts.
|
||||
|
||||
Here we are providing a workaround for such scenarios. The given config file will get resolved to a fragment bundle and will get attached to the specified host bundle. The host bundle name(symbolic name) is resolved by looking at the directory structure. Hence host bundle name should be directory name of the config file directory.
|
||||
|
||||
|
||||
Example: The bundle with symbolic name, 'org.foo.bar' expects a config file named 'foobar.properties' from its classPath.
|
||||
|
||||
create a directory named 'org.foo.bar' inside 'repository/conf/etc/bundle-config' - (this directory) and place the foobar.properties file.
|
||||
|
||||
|
||||
@ -0,0 +1,3 @@
|
||||
#osgi.service.1 = org.wso2.carbon.client.configcontext.provider.Axis2ClientConfigContextProvider
|
||||
#osgi.service.2 = org.wso2.carbon.user.core.UserManager
|
||||
#osgi.service.3 = org.wso2.carbon.user.api.UserRealmService
|
||||
@ -0,0 +1,37 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!--configuration bit values should be given in Mega Bytes (1KB = 1024 bytes, 1MB = 1024 KB, 1GB = 1024 MB), CPU value in MHz-->
|
||||
<Configuration enabled="true">
|
||||
<!--Configuration Validators to validate system configs against recommended config settings-->
|
||||
<Validator class="org.wso2.carbon.core.bootup.validator.SystemValidator">
|
||||
<Parameter id="CPU">800</Parameter>
|
||||
<Parameter id="RAM">2047</Parameter>
|
||||
<Parameter id="swap">2047</Parameter>
|
||||
<Parameter id="freeDisk">1024</Parameter>
|
||||
<Parameter id="ulimit">4096</Parameter>
|
||||
<Parameter id="certFingerprint">02:FB:AA:5F:20:64:49:4A:27:29:55:71:83:F7:46:CD</Parameter>
|
||||
</Validator>
|
||||
<Validator class="org.wso2.carbon.core.bootup.validator.JVMValidator">
|
||||
<Parameter id="initHeapSize">256</Parameter>
|
||||
<Parameter id="maxHeapSize">512</Parameter>
|
||||
<Parameter id="maxPermGenSize">256</Parameter>
|
||||
</Validator>
|
||||
<Validator class="org.wso2.carbon.core.bootup.validator.RequiredSystemPropertiesValidator">
|
||||
<Parameter id="p1">carbon.home</Parameter>
|
||||
<Parameter id="p2">carbon.config.dir.path</Parameter>
|
||||
<Parameter id="p3">axis2.home</Parameter>
|
||||
</Validator>
|
||||
<Validator class="org.wso2.carbon.core.bootup.validator.SupportedOSValidator">
|
||||
<Parameter id="os1">Linux</Parameter>
|
||||
<Parameter id="os2">Unix</Parameter>
|
||||
<Parameter id="os3">Mac OS</Parameter>
|
||||
<Parameter id="os4">Windows Server 2003</Parameter>
|
||||
<Parameter id="os5">Windows XP</Parameter>
|
||||
<Parameter id="os6">Windows Vista</Parameter>
|
||||
<Parameter id="os7">Windows 7</Parameter>
|
||||
<Parameter id="os8">Mac OS X</Parameter>
|
||||
<Parameter id="os9">Windows Server 2008</Parameter>
|
||||
<Parameter id="os10">Windows Server 2008 R2</Parameter>
|
||||
<Parameter id="os11">AIX</Parameter>
|
||||
</Validator>
|
||||
</Configuration>
|
||||
|
||||
@ -0,0 +1,32 @@
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<!--
|
||||
This file is used to configuring the JMX server. You can disable the JMX RMI server from starting
|
||||
by setting the value of the StartRMIServer to false.
|
||||
-->
|
||||
<JMX xmlns="http://wso2.org/projects/carbon/jmx.xml">
|
||||
<StartRMIServer>true</StartRMIServer>
|
||||
|
||||
<!-- HostName, or Network interface to which this RMI server should be bound -->
|
||||
<HostName>localhost</HostName>
|
||||
|
||||
<!-- ${Ports.JMX.RMIRegistryPort} is defined in the Ports section of the carbon.xml-->
|
||||
<RMIRegistryPort>${Ports.JMX.RMIRegistryPort}</RMIRegistryPort>
|
||||
|
||||
<!-- ${Ports.JMX.RMIRegistryPort} is defined in the Ports section of the carbon.xml-->
|
||||
<RMIServerPort>${Ports.JMX.RMIServerPort}</RMIServerPort>
|
||||
</JMX>
|
||||
@ -0,0 +1,258 @@
|
||||
# Eclipse Runtime Configuration Overrides
|
||||
# These properties are loaded prior to starting the framework and can also be used to override System Properties
|
||||
# @null is a special value used to override and clear the framework's copy of a System Property prior to starting the framework
|
||||
# "*" can be used together with @null to clear System Properties that match a prefix name.
|
||||
|
||||
osgi.*=@null
|
||||
org.osgi.*=@null
|
||||
eclipse.*=@null
|
||||
|
||||
osgi.parentClassloader=app
|
||||
osgi.contextClassLoaderParent=app
|
||||
|
||||
# When osgi.clean is set to "true", any cached data used by the OSGi framework
|
||||
# will be wiped clean. This will clean the caches used to store bundle
|
||||
# dependency resolution and eclipse extension registry data. Using this
|
||||
# option will force OSGi framework to reinitialize these caches.
|
||||
# The following setting is put in place to get rid of the problems
|
||||
# faced when re-starting the system. Please note that, when this setting is
|
||||
# true, if you manually start a bundle, it would not be available when
|
||||
# you re-start the system. To avid this, copy the bundle jar to the plugins
|
||||
# folder, before you re-start the system.
|
||||
osgi.clean=true
|
||||
|
||||
# Uncomment the following line to turn on Eclipse Equinox debugging.
|
||||
# You may also edit the osgi-debug.options file and fine tune the debugging
|
||||
# options to suite your needs.
|
||||
#osgi.debug=./repository/conf/osgi-debug.options
|
||||
|
||||
# Following system property allows us to control the public JDK packages exported through the system bundle.
|
||||
org.osgi.framework.system.packages=javax.accessibility,\
|
||||
javax.activity,\
|
||||
javax.crypto,\
|
||||
javax.crypto.interfaces,\
|
||||
javax.crypto.spec,\
|
||||
javax.imageio,\
|
||||
javax.imageio.event,\
|
||||
javax.imageio.metadata,\
|
||||
javax.imageio.plugins.bmp,\
|
||||
javax.imageio.plugins.jpeg,\
|
||||
javax.imageio.spi,\
|
||||
javax.imageio.stream,\
|
||||
javax.jms,\
|
||||
javax.management,\
|
||||
javax.management.loading,\
|
||||
javax.management.modelmbean,\
|
||||
javax.management.monitor,\
|
||||
javax.management.openmbean,\
|
||||
javax.management.relation,\
|
||||
javax.management.remote,\
|
||||
javax.management.remote.rmi,\
|
||||
javax.management.timer,\
|
||||
javax.naming,\
|
||||
javax.naming.directory,\
|
||||
javax.naming.event,\
|
||||
javax.naming.ldap,\
|
||||
javax.naming.spi,\
|
||||
javax.net,\
|
||||
javax.net.ssl,\
|
||||
javax.print,\
|
||||
javax.print.attribute,\
|
||||
javax.print.attribute.standard,\
|
||||
javax.print.event,\
|
||||
javax.rmi,\
|
||||
javax.rmi.CORBA,\
|
||||
javax.rmi.ssl,\
|
||||
javax.script,\
|
||||
javax.security.auth,\
|
||||
javax.security.auth.callback,\
|
||||
javax.security.auth.kerberos,\
|
||||
javax.security.auth.login,\
|
||||
javax.security.auth.spi,\
|
||||
javax.security.auth.x500,\
|
||||
javax.security.cert,\
|
||||
javax.security.sasl,\
|
||||
javax.sound.midi,\
|
||||
javax.sound.midi.spi,\
|
||||
javax.sound.sampled,\
|
||||
javax.sound.sampled.spi,\
|
||||
javax.sql,\
|
||||
javax.sql.rowset,\
|
||||
javax.sql.rowset.serial,\
|
||||
javax.sql.rowset.spi,\
|
||||
javax.swing,\
|
||||
javax.swing.border,\
|
||||
javax.swing.colorchooser,\
|
||||
javax.swing.event,\
|
||||
javax.swing.filechooser,\
|
||||
javax.swing.plaf,\
|
||||
javax.swing.plaf.basic,\
|
||||
javax.swing.plaf.metal,\
|
||||
javax.swing.plaf.multi,\
|
||||
javax.swing.plaf.synth,\
|
||||
javax.swing.table,\
|
||||
javax.swing.text,\
|
||||
javax.swing.text.html,\
|
||||
javax.swing.text.html.parser,\
|
||||
javax.swing.text.rtf,\
|
||||
javax.swing.tree,\
|
||||
javax.swing.undo,\
|
||||
javax.transaction,\
|
||||
javax.transaction.xa,\
|
||||
javax.xml.namespace,\
|
||||
javax.xml.parsers,\
|
||||
javax.xml.stream,\
|
||||
javax.xml.stream.events,\
|
||||
javax.xml.stream.util,\
|
||||
javax.xml.transform,\
|
||||
javax.xml.transform.stream,\
|
||||
javax.xml.transform.dom,\
|
||||
javax.xml.transform.sax,\
|
||||
javax.xml,\
|
||||
javax.xml.validation,\
|
||||
javax.xml.datatype,\
|
||||
javax.xml.xpath,\
|
||||
javax.activation,\
|
||||
com.sun.activation.registries,\
|
||||
com.sun.activation.viewers,\
|
||||
org.ietf.jgss,\
|
||||
org.omg.CORBA,\
|
||||
org.omg.CORBA_2_3,\
|
||||
org.omg.CORBA_2_3.portable,\
|
||||
org.omg.CORBA.DynAnyPackage,\
|
||||
org.omg.CORBA.ORBPackage,\
|
||||
org.omg.CORBA.portable,\
|
||||
org.omg.CORBA.TypeCodePackage,\
|
||||
org.omg.CosNaming,\
|
||||
org.omg.CosNaming.NamingContextExtPackage,\
|
||||
org.omg.CosNaming.NamingContextPackage,\
|
||||
org.omg.Dynamic,\
|
||||
org.omg.DynamicAny,\
|
||||
org.omg.DynamicAny.DynAnyFactoryPackage,\
|
||||
org.omg.DynamicAny.DynAnyPackage,\
|
||||
org.omg.IOP,\
|
||||
org.omg.IOP.CodecFactoryPackage,\
|
||||
org.omg.IOP.CodecPackage,\
|
||||
org.omg.Messaging,\
|
||||
org.omg.PortableInterceptor,\
|
||||
org.omg.PortableInterceptor.ORBInitInfoPackage,\
|
||||
org.omg.PortableServer,\
|
||||
org.omg.PortableServer.CurrentPackage,\
|
||||
org.omg.PortableServer.POAManagerPackage,\
|
||||
org.omg.PortableServer.POAPackage,\
|
||||
org.omg.PortableServer.portable,\
|
||||
org.omg.PortableServer.ServantLocatorPackage,\
|
||||
org.omg.SendingContext,\
|
||||
org.omg.stub.java.rmi,\
|
||||
org.w3c.dom,\
|
||||
org.w3c.dom.bootstrap,\
|
||||
org.w3c.dom.css,\
|
||||
org.w3c.dom.events,\
|
||||
org.w3c.dom.html,\
|
||||
org.w3c.dom.ls,\
|
||||
org.w3c.dom.ranges,\
|
||||
org.w3c.dom.stylesheets,\
|
||||
org.w3c.dom.traversal,\
|
||||
org.w3c.dom.views ,\
|
||||
org.xml.sax,\
|
||||
org.xml.sax.ext,\
|
||||
org.xml.sax.helpers,\
|
||||
org.apache.xerces.xpointer,\
|
||||
org.apache.xerces.xni.grammars,\
|
||||
org.apache.xerces.impl.xs.util,\
|
||||
org.apache.xerces.jaxp.validation,\
|
||||
org.apache.xerces.impl.dtd.models,\
|
||||
org.apache.xerces.impl.xpath,\
|
||||
org.apache.xerces.dom3.as,\
|
||||
org.apache.xerces.impl.dv.xs,\
|
||||
org.apache.xerces.util,\
|
||||
org.apache.xerces.impl.xs.identity,\
|
||||
org.apache.xerces.impl.xs.opti,\
|
||||
org.apache.xerces.jaxp,\
|
||||
org.apache.xerces.impl.dv,\
|
||||
org.apache.xerces.xs.datatypes,\
|
||||
org.apache.xerces.dom.events,\
|
||||
org.apache.xerces.impl.msg,\
|
||||
org.apache.xerces.xni,\
|
||||
org.apache.xerces.impl.xs,\
|
||||
org.apache.xerces.impl,\
|
||||
org.apache.xerces.impl.io,\
|
||||
org.apache.xerces.xinclude,\
|
||||
org.apache.xerces.jaxp.datatype,\
|
||||
org.apache.xerces.parsers,\
|
||||
org.apache.xerces.impl.dv.util,\
|
||||
org.apache.xerces.xni.parser,\
|
||||
org.apache.xerces.impl.xs.traversers,\
|
||||
org.apache.xerces.impl.dv.dtd,\
|
||||
org.apache.xerces.xs,\
|
||||
org.apache.xerces.impl.dtd,\
|
||||
org.apache.xerces.impl.validation,\
|
||||
org.apache.xerces.impl.xs.models,\
|
||||
org.apache.xerces.impl.xpath.regex,\
|
||||
org.apache.xml.serialize,\
|
||||
org.apache.xerces.dom,\
|
||||
org.apache.xalan,\
|
||||
org.apache.xalan.xslt,\
|
||||
org.apache.xalan.templates,\
|
||||
org.apache.xalan.xsltc,\
|
||||
org.apache.xalan.xsltc.cmdline,\
|
||||
org.apache.xalan.xsltc.cmdline.getopt,\
|
||||
org.apache.xalan.xsltc.trax,\
|
||||
org.apache.xalan.xsltc.dom,\
|
||||
org.apache.xalan.xsltc.runtime,\
|
||||
org.apache.xalan.xsltc.runtime.output,\
|
||||
org.apache.xalan.xsltc.util,\
|
||||
org.apache.xalan.xsltc.compiler,\
|
||||
org.apache.xalan.xsltc.compiler.util,\
|
||||
org.apache.xalan.serialize,\
|
||||
org.apache.xalan.client,\
|
||||
org.apache.xalan.res,\
|
||||
org.apache.xalan.transformer,\
|
||||
org.apache.xalan.extensions,\
|
||||
org.apache.xalan.lib,\
|
||||
org.apache.xalan.lib.sql,\
|
||||
org.apache.xalan.processor,\
|
||||
org.apache.xalan.trace,\
|
||||
org.apache.xml.dtm,\
|
||||
org.apache.xml.dtm.ref,\
|
||||
org.apache.xml.dtm.ref.sax2dtm,\
|
||||
org.apache.xml.dtm.ref.dom2dtm,\
|
||||
org.apache.xml.utils,\
|
||||
org.apache.xml.utils.res,\
|
||||
org.apache.xml.res,\
|
||||
org.apache.xml.serializer,\
|
||||
org.apache.xml.serializer.utils,\
|
||||
org.apache.xpath,\
|
||||
org.apache.xpath.domapi,\
|
||||
org.apache.xpath.objects,\
|
||||
org.apache.xpath.patterns,\
|
||||
org.apache.xpath.jaxp,\
|
||||
org.apache.xpath.res,\
|
||||
org.apache.xpath.operations,\
|
||||
org.apache.xpath.functions,\
|
||||
org.apache.xpath.axes,\
|
||||
org.apache.xpath.compiler,\
|
||||
org.apache.xml.resolver,\
|
||||
org.apache.xml.resolver.tools,\
|
||||
org.apache.xml.resolver.helpers,\
|
||||
org.apache.xml.resolver.readers,\
|
||||
org.apache.xml.resolver.etc,\
|
||||
org.apache.xml.resolver.apps,\
|
||||
javax.xml.ws,\
|
||||
javax.xml.ws.handler,\
|
||||
javax.xml.ws.handler.soap,\
|
||||
javax.xml.ws.http,\
|
||||
javax.xml.ws.soap,\
|
||||
javax.xml.ws.spi,\
|
||||
javax.xml.ws.spi.http,\
|
||||
javax.xml.ws.wsaddressing,\
|
||||
javax.xml.bind,\
|
||||
javax.xml.bind.annotation,\
|
||||
javax.xml.bind.annotation.adapters,\
|
||||
javax.annotation,\
|
||||
javax.jws,\
|
||||
javax.jws.soap,\
|
||||
com.sun.xml.internal.messaging.saaj.soap.ver1_1,\
|
||||
com.sun.xml.internal.messaging.saaj.soap,\
|
||||
com.sun.tools.internal.ws.spi,\
|
||||
org.wso2.carbon.bootstrap
|
||||
@ -0,0 +1,65 @@
|
||||
############################################################
|
||||
# Default Logging Configuration File
|
||||
#
|
||||
# You can use a different file by specifying a filename
|
||||
# with the java.util.logging.config.file system property.
|
||||
# For example java -Djava.util.logging.config.file=myfile
|
||||
############################################################
|
||||
|
||||
############################################################
|
||||
# Global properties
|
||||
# NOTE: this configuration file use to get the handler list,
|
||||
# Properties(except level property) define for each handler
|
||||
# may be not available because LogRecords handover to log4j
|
||||
# appenders in runtime.
|
||||
############################################################
|
||||
|
||||
# "handlers" specifies a comma separated list of log Handler
|
||||
# classes. These handlers will be installed during VM startup.
|
||||
# Note that these classes must be on the system classpath.
|
||||
# By default we only configure a ConsoleHandler, which will only
|
||||
# show messages at the INFO and above levels.
|
||||
#handlers= java.util.logging.ConsoleHandler
|
||||
|
||||
# To also add the FileHandler, use the following line instead.
|
||||
#handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler
|
||||
# Add org.wso2.carbon.bootstrap.logging.handlers.LogEventHandler to handlers if you need to push java logs to LOGEVENT appender
|
||||
|
||||
handlers= org.wso2.carbon.bootstrap.logging.handlers.LoggingConsoleHandler, org.wso2.carbon.bootstrap.logging.handlers.LoggingFileHandler
|
||||
|
||||
# Default global logging level.
|
||||
# This specifies which kinds of events are logged across
|
||||
# all loggers. For any given facility this global level
|
||||
# can be overriden by a facility specific level
|
||||
# Note that the ConsoleHandler also has a separate level
|
||||
# setting to limit messages printed to the console.
|
||||
.level= INFO
|
||||
|
||||
############################################################
|
||||
# Handler specific properties.
|
||||
# Describes specific configuration info for Handlers.
|
||||
#
|
||||
|
||||
############################################################
|
||||
# This FileHandler pushed LogRecords to a log4j FileAppander in runtime
|
||||
org.wso2.carbon.bootstrap.logging.handlers.LoggingFileHandler.level = INFO
|
||||
#org.wso2.carbon.bootstrap.logging.handlers.LoggingFileHandler.formatter = java.util.logging.SimpleFormatter
|
||||
|
||||
# This ConsoleHandler pushed LogRecords to q log4j ConsoleAppander in runtime
|
||||
org.wso2.carbon.bootstrap.logging.handlers.LoggingConsoleHandler.level = INFO
|
||||
#org.wso2.carbon.bootstrap.logging.handlers.LoggingConsoleHandler.formatter = java.util.logging.SimpleFormatter
|
||||
|
||||
|
||||
############################################################
|
||||
# Facility specific properties.
|
||||
# Provides extra control for each logger.
|
||||
############################################################
|
||||
|
||||
# For example, set the com.xyz.foo logger to only log SEVERE
|
||||
# messages:
|
||||
#com.xyz.foo.level = SEVERE
|
||||
org.apache.coyote.level = SEVERE
|
||||
org.apache.catalina.level = SEVERE
|
||||
com.hazelcast.level = SEVERE
|
||||
|
||||
|
||||
@ -0,0 +1,27 @@
|
||||
#
|
||||
# Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
#
|
||||
# Licensed 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.
|
||||
#
|
||||
|
||||
# This file is to define the human readable media type for a mime type.
|
||||
# Eg:-
|
||||
# text/plain txt text
|
||||
application/wsdl+xml WSDL
|
||||
application/x-xsd+xml Schema
|
||||
application/policy+xml Policy
|
||||
application/vnd.wso2-service+xml Service
|
||||
application/vnd.wso2-hyperlink Hyperlink
|
||||
application/vnd.wso2.endpoint Endpoint
|
||||
application/vnd.wso2-api+xml API
|
||||
application/vnd.wso2-uri+xml URI
|
||||
@ -0,0 +1,734 @@
|
||||
#
|
||||
# Copyright 2005-2009 WSO2, Inc. (http://wso2.com)
|
||||
#
|
||||
# Licensed 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.
|
||||
#
|
||||
|
||||
# Media type for wsdl files. This is not defined in the original mime.types file.
|
||||
chemical/x-alchemy alc
|
||||
application/andrew-inset ez
|
||||
application/wsdl+xml wsdl
|
||||
application/vnd.sun.wadl+xml wadl
|
||||
application/activemessage
|
||||
application/applefile
|
||||
application/atomicmail
|
||||
application/batch-SMTP
|
||||
application/beep+xml
|
||||
application/cals-1840
|
||||
application/commonground
|
||||
application/cu-seeme cu
|
||||
application/cybercash
|
||||
application/dca-rft
|
||||
application/dec-dx
|
||||
application/docbook+xml
|
||||
application/dsptype tsp
|
||||
application/dvcs
|
||||
application/edi-consent
|
||||
application/edi-x12
|
||||
application/edifact
|
||||
application/eshop
|
||||
application/font-tdpfr
|
||||
application/futuresplash spl
|
||||
application/ghostview
|
||||
application/hta hta
|
||||
application/http
|
||||
application/hyperstudio
|
||||
application/iges
|
||||
application/index
|
||||
application/index.cmd
|
||||
application/index.obj
|
||||
application/index.response
|
||||
application/index.vnd
|
||||
application/iotp
|
||||
application/ipp
|
||||
application/isup
|
||||
application/java-archive jar
|
||||
application/java-serialized-object ser
|
||||
application/java-vm class
|
||||
application/mac-binhex40 hqx
|
||||
application/mac-compactpro cpt
|
||||
application/macwriteii
|
||||
application/marc
|
||||
application/mathematica nb
|
||||
application/mathematica-old
|
||||
application/msaccess mdb
|
||||
application/msword doc dot
|
||||
application/news-message-id
|
||||
application/news-transmission
|
||||
application/ocsp-request
|
||||
application/ocsp-response
|
||||
application/octet-stream bin
|
||||
application/oda oda
|
||||
application/ogg ogg
|
||||
application/parityfec
|
||||
application/pdf pdf
|
||||
application/pgp-encrypted
|
||||
application/pgp-keys key
|
||||
application/pgp-signature pgp
|
||||
application/pics-rules prf
|
||||
application/pkcs10
|
||||
application/pkcs7-mime
|
||||
application/pkcs7-signature
|
||||
application/pkix-cert
|
||||
application/pkix-crl
|
||||
application/pkixcmp
|
||||
application/policy+xml
|
||||
application/postscript ps ai eps
|
||||
application/prs.alvestrand.titrax-sheet
|
||||
application/prs.cww
|
||||
application/prs.nprend
|
||||
application/qsig
|
||||
application/rar rar
|
||||
application/rdf+xml rdf
|
||||
application/remote-printing
|
||||
application/riscos
|
||||
application/rss+xml rss
|
||||
application/rtf
|
||||
application/sdp
|
||||
application/set-payment
|
||||
application/set-payment-initiation
|
||||
application/set-registration
|
||||
application/set-registration-initiation
|
||||
application/sgml
|
||||
application/sgml-open-catalog
|
||||
application/sieve
|
||||
application/slate
|
||||
application/smil smi smil
|
||||
application/timestamp-query
|
||||
application/timestamp-reply
|
||||
application/vemmi
|
||||
application/whoispp-query
|
||||
application/whoispp-response
|
||||
application/wita
|
||||
application/wordperfect wpd
|
||||
application/wordperfect5.1 wp5
|
||||
application/x400-bp
|
||||
application/xhtml+xml xhtml xht
|
||||
application/xml xml xsl xslt jrxml
|
||||
application/xml-dtd
|
||||
application/xml-external-parsed-entity
|
||||
application/zip zip
|
||||
application/vnd.3M.Post-it-Notes
|
||||
application/vnd.accpac.simply.aso
|
||||
application/vnd.accpac.simply.imp
|
||||
application/vnd.acucobol
|
||||
application/vnd.aether.imp
|
||||
application/vnd.anser-web-certificate-issue-initiation
|
||||
application/vnd.anser-web-funds-transfer-initiation
|
||||
application/vnd.audiograph
|
||||
application/vnd.bmi
|
||||
application/vnd.businessobjects
|
||||
application/vnd.canon-cpdl
|
||||
application/vnd.canon-lips
|
||||
application/vnd.cinderella cdy
|
||||
application/vnd.claymore
|
||||
application/vnd.commerce-battelle
|
||||
application/vnd.commonspace
|
||||
application/vnd.comsocaller
|
||||
application/vnd.contact.cmsg
|
||||
application/vnd.cosmocaller
|
||||
application/vnd.ctc-posml
|
||||
application/vnd.cups-postscript
|
||||
application/vnd.cups-raster
|
||||
application/vnd.cups-raw
|
||||
application/vnd.cybank
|
||||
application/vnd.dna
|
||||
application/vnd.dpgraph
|
||||
application/vnd.dxr
|
||||
application/vnd.ecdis-update
|
||||
application/vnd.ecowin.chart
|
||||
application/vnd.ecowin.filerequest
|
||||
application/vnd.ecowin.fileupdate
|
||||
application/vnd.ecowin.series
|
||||
application/vnd.ecowin.seriesrequest
|
||||
application/vnd.ecowin.seriesupdate
|
||||
application/vnd.enliven
|
||||
application/vnd.epson.esf
|
||||
application/vnd.epson.msf
|
||||
application/vnd.epson.quickanime
|
||||
application/vnd.epson.salt
|
||||
application/vnd.epson.ssf
|
||||
application/vnd.ericsson.quickcall
|
||||
application/vnd.eudora.data
|
||||
application/vnd.fdf
|
||||
application/vnd.ffsns
|
||||
application/vnd.flographit
|
||||
application/vnd.framemaker
|
||||
application/vnd.fsc.weblaunch
|
||||
application/vnd.fujitsu.oasys
|
||||
application/vnd.fujitsu.oasys2
|
||||
application/vnd.fujitsu.oasys3
|
||||
application/vnd.fujitsu.oasysgp
|
||||
application/vnd.fujitsu.oasysprs
|
||||
application/vnd.fujixerox.ddd
|
||||
application/vnd.fujixerox.docuworks
|
||||
application/vnd.fujixerox.docuworks.binder
|
||||
application/vnd.fut-misnet
|
||||
application/vnd.grafeq
|
||||
application/vnd.groove-account
|
||||
application/vnd.groove-identity-message
|
||||
application/vnd.groove-injector
|
||||
application/vnd.groove-tool-message
|
||||
application/vnd.groove-tool-template
|
||||
application/vnd.groove-vcard
|
||||
application/vnd.hhe.lesson-player
|
||||
application/vnd.hp-HPGL
|
||||
application/vnd.hp-PCL
|
||||
application/vnd.hp-PCLXL
|
||||
application/vnd.hp-hpid
|
||||
application/vnd.hp-hps
|
||||
application/vnd.httphone
|
||||
application/vnd.hzn-3d-crossword
|
||||
application/vnd.ibm.MiniPay
|
||||
application/vnd.ibm.afplinedata
|
||||
application/vnd.ibm.modcap
|
||||
application/vnd.informix-visionary
|
||||
application/vnd.intercon.formnet
|
||||
application/vnd.intertrust.digibox
|
||||
application/vnd.intertrust.nncp
|
||||
application/vnd.intu.qbo
|
||||
application/vnd.intu.qfx
|
||||
application/vnd.irepository.package+xml
|
||||
application/vnd.is-xpr
|
||||
application/vnd.japannet-directory-service
|
||||
application/vnd.japannet-jpnstore-wakeup
|
||||
application/vnd.japannet-payment-wakeup
|
||||
application/vnd.japannet-registration
|
||||
application/vnd.japannet-registration-wakeup
|
||||
application/vnd.japannet-setstore-wakeup
|
||||
application/vnd.japannet-verification
|
||||
application/vnd.japannet-verification-wakeup
|
||||
application/vnd.koan
|
||||
application/vnd.lotus-1-2-3
|
||||
application/vnd.lotus-approach
|
||||
application/vnd.lotus-freelance
|
||||
application/vnd.lotus-notes
|
||||
application/vnd.lotus-organizer
|
||||
application/vnd.lotus-screencam
|
||||
application/vnd.lotus-wordpro
|
||||
application/vnd.mcd
|
||||
application/vnd.mediastation.cdkey
|
||||
application/vnd.meridian-slingshot
|
||||
application/vnd.mif
|
||||
application/vnd.minisoft-hp3000-save
|
||||
application/vnd.mitsubishi.misty-guard.trustweb
|
||||
application/vnd.mobius.daf
|
||||
application/vnd.mobius.dis
|
||||
application/vnd.mobius.msl
|
||||
application/vnd.mobius.plc
|
||||
application/vnd.mobius.txf
|
||||
application/vnd.motorola.flexsuite
|
||||
application/vnd.motorola.flexsuite.adsi
|
||||
application/vnd.motorola.flexsuite.fis
|
||||
application/vnd.motorola.flexsuite.gotap
|
||||
application/vnd.motorola.flexsuite.kmr
|
||||
application/vnd.motorola.flexsuite.ttc
|
||||
application/vnd.motorola.flexsuite.wem
|
||||
application/vnd.mozilla.xul+xml xul
|
||||
application/vnd.ms-artgalry
|
||||
application/vnd.ms-asf
|
||||
application/vnd.ms-excel xls xlb xlt
|
||||
application/vnd.ms-lrm
|
||||
application/vnd.ms-pki.seccat cat
|
||||
application/vnd.ms-pki.stl stl
|
||||
application/vnd.ms-powerpoint ppt pps
|
||||
application/vnd.ms-project
|
||||
application/vnd.ms-tnef
|
||||
application/vnd.ms-works
|
||||
application/vnd.mseq
|
||||
application/vnd.msign
|
||||
application/vnd.music-niff
|
||||
application/vnd.musician
|
||||
application/vnd.netfpx
|
||||
application/vnd.noblenet-directory
|
||||
application/vnd.noblenet-sealer
|
||||
application/vnd.noblenet-web
|
||||
application/vnd.novadigm.EDM
|
||||
application/vnd.novadigm.EDX
|
||||
application/vnd.novadigm.EXT
|
||||
application/vnd.oasis.opendocument.chart odc
|
||||
application/vnd.oasis.opendocument.database odb
|
||||
application/vnd.oasis.opendocument.formula odf
|
||||
application/vnd.oasis.opendocument.graphics odg
|
||||
application/vnd.oasis.opendocument.graphics-template otg
|
||||
application/vnd.oasis.opendocument.image odi
|
||||
application/vnd.oasis.opendocument.presentation odp
|
||||
application/vnd.oasis.opendocument.presentation-template otp
|
||||
application/vnd.oasis.opendocument.spreadsheet ods
|
||||
application/vnd.oasis.opendocument.spreadsheet-template ots
|
||||
application/vnd.oasis.opendocument.text odt
|
||||
application/vnd.oasis.opendocument.text-master odm
|
||||
application/vnd.oasis.opendocument.text-template ott
|
||||
application/vnd.oasis.opendocument.text-web oth
|
||||
application/vnd.osa.netdeploy
|
||||
application/vnd.palm
|
||||
application/vnd.pg.format
|
||||
application/vnd.pg.osasli
|
||||
application/vnd.powerbuilder6
|
||||
application/vnd.powerbuilder6-s
|
||||
application/vnd.powerbuilder7
|
||||
application/vnd.powerbuilder7-s
|
||||
application/vnd.powerbuilder75
|
||||
application/vnd.powerbuilder75-s
|
||||
application/vnd.previewsystems.box
|
||||
application/vnd.publishare-delta-tree
|
||||
application/vnd.pvi.ptid1
|
||||
application/vnd.pwg-xhtml-print+xml
|
||||
application/vnd.rapid
|
||||
application/vnd.rim.cod cod
|
||||
application/vnd.s3sms
|
||||
application/vnd.seemail
|
||||
application/vnd.shana.informed.formdata
|
||||
application/vnd.shana.informed.formtemplate
|
||||
application/vnd.shana.informed.interchange
|
||||
application/vnd.shana.informed.package
|
||||
application/vnd.smaf mmf
|
||||
application/vnd.sss-cod
|
||||
application/vnd.sss-dtf
|
||||
application/vnd.sss-ntf
|
||||
application/vnd.stardivision.calc sdc
|
||||
application/vnd.stardivision.draw sda
|
||||
application/vnd.stardivision.impress sdd sdp
|
||||
application/vnd.stardivision.math smf
|
||||
application/vnd.stardivision.writer sdw vor
|
||||
application/vnd.stardivision.writer-global sgl
|
||||
application/vnd.street-stream
|
||||
application/vnd.sun.xml.calc sxc
|
||||
application/vnd.sun.xml.calc.template stc
|
||||
application/vnd.sun.xml.draw sxd
|
||||
application/vnd.sun.xml.draw.template std
|
||||
application/vnd.sun.xml.impress sxi
|
||||
application/vnd.sun.xml.impress.template sti
|
||||
application/vnd.sun.xml.math sxm
|
||||
application/vnd.sun.xml.writer sxw
|
||||
application/vnd.sun.xml.writer.global sxg
|
||||
application/vnd.sun.xml.writer.template stw
|
||||
application/vnd.svd
|
||||
application/vnd.swiftview-ics
|
||||
application/vnd.symbian.install sis
|
||||
application/vnd.triscape.mxs
|
||||
application/vnd.trueapp
|
||||
application/vnd.truedoc
|
||||
application/vnd.tve-trigger
|
||||
application/vnd.ufdl
|
||||
application/vnd.uplanet.alert
|
||||
application/vnd.uplanet.alert-wbxml
|
||||
application/vnd.uplanet.bearer-choice
|
||||
application/vnd.uplanet.bearer-choice-wbxml
|
||||
application/vnd.uplanet.cacheop
|
||||
application/vnd.uplanet.cacheop-wbxml
|
||||
application/vnd.uplanet.channel
|
||||
application/vnd.uplanet.channel-wbxml
|
||||
application/vnd.uplanet.list
|
||||
application/vnd.uplanet.list-wbxml
|
||||
application/vnd.uplanet.listcmd
|
||||
application/vnd.uplanet.listcmd-wbxml
|
||||
application/vnd.uplanet.signal
|
||||
application/vnd.vcx
|
||||
application/vnd.vectorworks
|
||||
application/vnd.vidsoft.vidconference
|
||||
application/vnd.visio vsd
|
||||
application/vnd.vividence.scriptfile
|
||||
application/vnd.wap.sic
|
||||
application/vnd.wap.slc
|
||||
application/vnd.wap.wbxml wbxml
|
||||
application/vnd.wap.wmlc wmlc
|
||||
application/vnd.wap.wmlscriptc wmlsc
|
||||
application/vnd.webturbo
|
||||
application/vnd.wrq-hp3000-labelled
|
||||
application/vnd.wso2.bpel+xml bpel
|
||||
application/vnd.wso2.bpmn+xml bpmn
|
||||
application/vnd.wso2.endpoint
|
||||
application/vnd.wso2.governance-archive gar
|
||||
application/vnd.wso2-hyperlink
|
||||
application/vnd.wso2.registry-ext-type+xml rxt
|
||||
application/vnd.wso2-service+xml
|
||||
application/vnd.wso2.xpdl+xml xpdl
|
||||
application/vnd.wt.stf
|
||||
application/vnd.xara
|
||||
application/vnd.xfdl
|
||||
application/vnd.yellowriver-custom-menu
|
||||
application/x-123 wk
|
||||
application/x-abiword abw
|
||||
application/x-apple-diskimage dmg
|
||||
application/x-bcpio bcpio
|
||||
application/x-bittorrent torrent
|
||||
application/x-cdf cdf
|
||||
application/x-cdlink vcd
|
||||
application/x-chess-pgn pgn
|
||||
application/x-core
|
||||
application/x-cpio cpio
|
||||
application/x-csh csh
|
||||
application/x-debian-package deb udeb
|
||||
application/x-director dcr dir dxr
|
||||
application/x-dms dms
|
||||
application/x-doom wad
|
||||
application/x-dvi dvi
|
||||
application/x-executable
|
||||
application/x-flac flac
|
||||
application/x-font pfa pfb gsf pcf pcf.Z
|
||||
application/x-freemind mm
|
||||
application/x-futuresplash spl
|
||||
application/x-gnumeric gnumeric
|
||||
application/x-go-sgf sgf
|
||||
application/x-graphing-calculator gcf
|
||||
application/x-gtar gtar tgz taz
|
||||
application/x-hdf hdf
|
||||
application/x-httpd-php phtml pht php
|
||||
application/x-httpd-php-source phps
|
||||
application/x-httpd-php3 php3
|
||||
application/x-httpd-php3-preprocessed php3p
|
||||
application/x-httpd-php4 php4
|
||||
application/x-httpd-eruby rhtml
|
||||
application/x-ica ica
|
||||
application/x-internet-signup ins isp
|
||||
application/x-iphone iii
|
||||
application/x-iso9660-image iso
|
||||
application/x-java-applet
|
||||
application/x-java-bean
|
||||
application/x-java-jnlp-file jnlp
|
||||
application/x-javascript js
|
||||
application/x-jmol jmz
|
||||
application/x-kchart chrt
|
||||
application/x-kdelnk
|
||||
application/x-killustrator kil
|
||||
application/x-koan skp skd skt skm
|
||||
application/x-kpresenter kpr kpt
|
||||
application/x-kspread ksp
|
||||
application/x-kword kwd kwt
|
||||
application/x-latex latex
|
||||
application/x-lha lha
|
||||
application/x-lzh lzh
|
||||
application/x-lzx lzx
|
||||
application/x-maker frm maker frame fm fb book fbdoc
|
||||
application/x-mif mif
|
||||
application/x-ms-wmd wmd
|
||||
application/x-ms-wmz wmz
|
||||
application/x-msdos-program com exe bat dll
|
||||
application/x-msi msi
|
||||
application/x-netcdf nc
|
||||
application/x-ns-proxy-autoconfig pac
|
||||
application/x-nwc nwc
|
||||
application/x-object o
|
||||
application/x-oz-application oza
|
||||
application/x-pkcs7-certreqresp p7r
|
||||
application/x-pkcs7-crl crl
|
||||
application/x-python-code pyc pyo
|
||||
application/x-quicktimeplayer qtl
|
||||
application/x-redhat-package-manager rpm
|
||||
application/x-rx
|
||||
application/x-sh sh
|
||||
application/x-shar shar
|
||||
application/x-shellscript
|
||||
application/x-shockwave-flash swf swfl
|
||||
application/x-stuffit sit
|
||||
application/x-sv4cpio sv4cpio
|
||||
application/x-sv4crc sv4crc
|
||||
application/x-tar tar
|
||||
application/x-tcl tcl
|
||||
application/x-tex-gf gf
|
||||
application/x-tex-pk pk
|
||||
application/x-texinfo texinfo texi
|
||||
application/x-trash ~ % bak old sik
|
||||
application/x-troff t tr roff
|
||||
application/x-troff-man man
|
||||
application/x-troff-me me
|
||||
application/x-troff-ms ms
|
||||
application/x-ustar ustar
|
||||
application/x-videolan
|
||||
application/x-wais-source src
|
||||
application/x-wingz wz
|
||||
application/x-x509-ca-cert crt
|
||||
application/x-xcf xcf
|
||||
application/x-xfig fig
|
||||
application/x-xpinstall xpi
|
||||
application/x-xsd+xml xsd
|
||||
|
||||
audio/32kadpcm
|
||||
audio/basic au snd
|
||||
audio/g.722.1
|
||||
audio/l16
|
||||
audio/midi mid midi kar
|
||||
audio/mp4a-latm
|
||||
audio/mpa-robust
|
||||
audio/mpeg mpga mpega mp2 mp3 m4a
|
||||
audio/mpegurl m3u
|
||||
audio/parityfec
|
||||
audio/prs.sid sid
|
||||
audio/telephone-event
|
||||
audio/tone
|
||||
audio/vnd.cisco.nse
|
||||
audio/vnd.cns.anp1
|
||||
audio/vnd.cns.inf1
|
||||
audio/vnd.digital-winds
|
||||
audio/vnd.everad.plj
|
||||
audio/vnd.lucent.voice
|
||||
audio/vnd.nortel.vbk
|
||||
audio/vnd.nuera.ecelp4800
|
||||
audio/vnd.nuera.ecelp7470
|
||||
audio/vnd.nuera.ecelp9600
|
||||
audio/vnd.octel.sbc
|
||||
audio/vnd.qcelp
|
||||
audio/vnd.rhetorex.32kadpcm
|
||||
audio/vnd.vmx.cvsd
|
||||
audio/x-aiff aif aiff aifc
|
||||
audio/x-gsm gsm
|
||||
audio/x-mpegurl m3u
|
||||
audio/x-ms-wma wma
|
||||
audio/x-ms-wax wax
|
||||
audio/x-pn-realaudio-plugin
|
||||
audio/x-pn-realaudio ra rm ram
|
||||
audio/x-realaudio ra
|
||||
audio/x-scpls pls
|
||||
audio/x-sd2 sd2
|
||||
audio/x-wav wav
|
||||
|
||||
chemical/x-alchemy alc
|
||||
chemical/x-cache cac cache
|
||||
chemical/x-cache-csf csf
|
||||
chemical/x-cactvs-binary cbin cascii ctab
|
||||
chemical/x-cdx cdx
|
||||
chemical/x-cerius cer
|
||||
chemical/x-chem3d c3d
|
||||
chemical/x-chemdraw chm
|
||||
chemical/x-cif cif
|
||||
chemical/x-cmdf cmdf
|
||||
chemical/x-cml cml
|
||||
chemical/x-compass cpa
|
||||
chemical/x-crossfire bsd
|
||||
chemical/x-csml csml csm
|
||||
chemical/x-ctx ctx
|
||||
chemical/x-cxf cxf cef
|
||||
#chemical/x-daylight-smiles smi
|
||||
chemical/x-embl-dl-nucleotide emb embl
|
||||
chemical/x-galactic-spc spc
|
||||
chemical/x-gamess-input inp gam gamin
|
||||
chemical/x-gaussian-checkpoint fch fchk
|
||||
chemical/x-gaussian-cube cub
|
||||
chemical/x-gaussian-input gau gjc gjf
|
||||
chemical/x-gaussian-log gal
|
||||
chemical/x-gcg8-sequence gcg
|
||||
chemical/x-genbank gen
|
||||
chemical/x-hin hin
|
||||
chemical/x-isostar istr ist
|
||||
chemical/x-jcamp-dx jdx dx
|
||||
chemical/x-kinemage kin
|
||||
chemical/x-macmolecule mcm
|
||||
chemical/x-macromodel-input mmd mmod
|
||||
chemical/x-mdl-molfile mol
|
||||
chemical/x-mdl-rdfile rd
|
||||
chemical/x-mdl-rxnfile rxn
|
||||
chemical/x-mdl-sdfile sd sdf
|
||||
chemical/x-mdl-tgf tgf
|
||||
#chemical/x-mif mif
|
||||
chemical/x-mmcif mcif
|
||||
chemical/x-mol2 mol2
|
||||
chemical/x-molconn-Z b
|
||||
chemical/x-mopac-graph gpt
|
||||
chemical/x-mopac-input mop mopcrt mpc dat zmt
|
||||
chemical/x-mopac-out moo
|
||||
chemical/x-mopac-vib mvb
|
||||
chemical/x-ncbi-asn1 asn
|
||||
chemical/x-ncbi-asn1-ascii prt ent
|
||||
chemical/x-ncbi-asn1-binary val aso
|
||||
chemical/x-ncbi-asn1-spec asn
|
||||
chemical/x-pdb pdb ent
|
||||
chemical/x-rosdal ros
|
||||
chemical/x-swissprot sw
|
||||
chemical/x-vamas-iso14976 vms
|
||||
chemical/x-vmd vmd
|
||||
chemical/x-xtel xtel
|
||||
chemical/x-xyz xyz
|
||||
|
||||
image/cgm
|
||||
image/g3fax
|
||||
image/gif gif
|
||||
image/ief ief
|
||||
image/jpeg jpeg jpg jpe
|
||||
image/naplps
|
||||
image/pcx pcx
|
||||
image/png png
|
||||
image/prs.btif
|
||||
image/prs.pti
|
||||
image/svg+xml svg svgz
|
||||
image/tiff tiff tif
|
||||
image/vnd.cns.inf2
|
||||
image/vnd.djvu djvu djv
|
||||
image/vnd.dwg
|
||||
image/vnd.dxf
|
||||
image/vnd.fastbidsheet
|
||||
image/vnd.fpx
|
||||
image/vnd.fst
|
||||
image/vnd.fujixerox.edmics-mmr
|
||||
image/vnd.fujixerox.edmics-rlc
|
||||
image/vnd.mix
|
||||
image/vnd.net-fpx
|
||||
image/vnd.svf
|
||||
image/vnd.wap.wbmp wbmp
|
||||
image/vnd.xiff
|
||||
image/x-cmu-raster ras
|
||||
image/x-coreldraw cdr
|
||||
image/x-coreldrawpattern pat
|
||||
image/x-coreldrawtemplate cdt
|
||||
image/x-corelphotopaint cpt
|
||||
image/x-icon ico
|
||||
image/x-jg art
|
||||
image/x-jng jng
|
||||
image/x-ms-bmp bmp
|
||||
image/x-photoshop psd
|
||||
image/x-portable-anymap pnm
|
||||
image/x-portable-bitmap pbm
|
||||
image/x-portable-graymap pgm
|
||||
image/x-portable-pixmap ppm
|
||||
image/x-rgb rgb
|
||||
image/x-xbitmap xbm
|
||||
image/x-xpixmap xpm
|
||||
image/x-xwindowdump xwd
|
||||
|
||||
inode/chardevice
|
||||
inode/blockdevice
|
||||
inode/directory-locked
|
||||
inode/directory
|
||||
inode/fifo
|
||||
inode/socket
|
||||
|
||||
message/delivery-status
|
||||
message/disposition-notification
|
||||
message/external-body
|
||||
message/http
|
||||
message/s-http
|
||||
message/news
|
||||
message/partial
|
||||
message/rfc822
|
||||
|
||||
model/iges igs iges
|
||||
model/mesh msh mesh silo
|
||||
model/vnd.dwf
|
||||
model/vnd.flatland.3dml
|
||||
model/vnd.gdl
|
||||
model/vnd.gs-gdl
|
||||
model/vnd.gtw
|
||||
model/vnd.mts
|
||||
model/vnd.vtu
|
||||
model/vrml wrl vrml
|
||||
|
||||
multipart/alternative
|
||||
multipart/appledouble
|
||||
multipart/byteranges
|
||||
multipart/digest
|
||||
multipart/encrypted
|
||||
multipart/form-data
|
||||
multipart/header-set
|
||||
multipart/mixed
|
||||
multipart/parallel
|
||||
multipart/related
|
||||
multipart/report
|
||||
multipart/signed
|
||||
multipart/voice-message
|
||||
|
||||
text/calendar ics icz
|
||||
text/comma-separated-values csv
|
||||
text/css css
|
||||
text/directory
|
||||
text/english
|
||||
text/enriched
|
||||
text/h323 323
|
||||
text/html html htm shtml
|
||||
text/iuls uls
|
||||
text/mathml mml
|
||||
text/parityfec
|
||||
text/plain asc txt text diff pot sql
|
||||
text/prs.lines.tag
|
||||
text/rfc822-headers
|
||||
text/richtext rtx
|
||||
text/rtf rtf
|
||||
text/scriptlet sct wsc
|
||||
text/t140
|
||||
text/texmacs tm ts
|
||||
text/tab-separated-values tsv
|
||||
text/uri-list
|
||||
text/vnd.abc
|
||||
text/vnd.curl
|
||||
text/vnd.DMClientScript
|
||||
text/vnd.flatland.3dml
|
||||
text/vnd.fly
|
||||
text/vnd.fmi.flexstor
|
||||
text/vnd.in3d.3dml
|
||||
text/vnd.in3d.spot
|
||||
text/vnd.IPTC.NewsML
|
||||
text/vnd.IPTC.NITF
|
||||
text/vnd.latex-z
|
||||
text/vnd.motorola.reflex
|
||||
text/vnd.ms-mediapackage
|
||||
text/vnd.sun.j2me.app-descriptor jad
|
||||
text/vnd.wap.si
|
||||
text/vnd.wap.sl
|
||||
text/vnd.wap.wml wml
|
||||
text/vnd.wap.wmlscript wmls
|
||||
text/x-bibtex bib
|
||||
text/x-boo boo
|
||||
text/x-c++hdr h++ hpp hxx hh
|
||||
text/x-c++src c++ cpp cxx cc
|
||||
text/x-chdr h
|
||||
text/x-component htc
|
||||
text/x-crontab
|
||||
text/x-csh csh
|
||||
text/x-csrc c
|
||||
text/x-dsrc d
|
||||
text/x-haskell hs
|
||||
text/x-java java
|
||||
text/x-literate-haskell lhs
|
||||
text/x-makefile
|
||||
text/x-moc moc
|
||||
text/x-pascal p pas
|
||||
text/x-pcs-gcd gcd
|
||||
text/x-perl pl pm
|
||||
text/x-python py
|
||||
text/x-server-parsed-html
|
||||
text/x-setext etx
|
||||
text/x-sh sh
|
||||
text/x-tcl tcl tk
|
||||
text/x-tex tex ltx sty cls
|
||||
text/x-vcalendar vcs
|
||||
text/x-vcard vcf
|
||||
|
||||
video/dl dl
|
||||
video/dv dif dv
|
||||
video/fli fli
|
||||
video/gl gl
|
||||
video/mpeg mpeg mpg mpe
|
||||
video/mp4 mp4
|
||||
video/quicktime qt mov
|
||||
video/mp4v-es
|
||||
video/parityfec
|
||||
video/pointer
|
||||
video/vnd.fvt
|
||||
video/vnd.motorola.video
|
||||
video/vnd.motorola.videop
|
||||
video/vnd.mpegurl mxu
|
||||
video/vnd.mts
|
||||
video/vnd.nokia.interleaved-multimedia
|
||||
video/vnd.vivo
|
||||
video/x-la-asf lsf lsx
|
||||
video/x-mng mng
|
||||
video/x-ms-asf asf asx
|
||||
video/x-ms-wm wm
|
||||
video/x-ms-wmv wmv
|
||||
video/x-ms-wmx wmx
|
||||
video/x-ms-wvx wvx
|
||||
video/x-msvideo avi
|
||||
video/x-sgi-movie movie
|
||||
|
||||
x-conference/x-cooltalk ice
|
||||
|
||||
x-world/x-vrml vrm vrml wrl
|
||||
@ -0,0 +1,95 @@
|
||||
#### Debugging options for org.eclipse.osgi
|
||||
|
||||
# Turn on general debugging for org.eclipse.osgi
|
||||
org.eclipse.osgi/debug=true
|
||||
# Prints out class loading debug information
|
||||
org.eclipse.osgi/debug/loader=false
|
||||
# Prints out event (FrameworkEvent/BundleEvent/ServiceEvent) and listener debug information
|
||||
org.eclipse.osgi/debug/events=false
|
||||
# Prints out OSGi service debug information (registration/getting/ungetting etc.)
|
||||
org.eclipse.osgi/debug/services=false
|
||||
# Prints out bundle manifest parsing debug information
|
||||
org.eclipse.osgi/debug/manifest=false
|
||||
# Prints out LDAP filter debug information
|
||||
org.eclipse.osgi/debug/filter=false
|
||||
# Prints out security (PermissionAdmin service) debug information
|
||||
org.eclipse.osgi/debug/security=false
|
||||
# Prints out start level service debug information
|
||||
org.eclipse.osgi/debug/startlevel=true
|
||||
# Prints out package admin service debug information
|
||||
org.eclipse.osgi/debug/packageadmin=false
|
||||
# Prints out timing information for bundle activation
|
||||
org.eclipse.osgi/debug/bundleTime=false
|
||||
# Debug the loading of message bundles
|
||||
org.eclipse.osgi/debug/messageBundles=false
|
||||
|
||||
# Eclipse adaptor options
|
||||
org.eclipse.osgi/eclipseadaptor/debug = false
|
||||
org.eclipse.osgi/eclipseadaptor/debug/location = false
|
||||
org.eclipse.osgi/eclipseadaptor/debug/platformadmin=false
|
||||
org.eclipse.osgi/eclipseadaptor/debug/platformadmin/resolver=false
|
||||
org.eclipse.osgi/eclipseadaptor/converter/debug = false
|
||||
|
||||
### OSGi resolver options
|
||||
# Turns on debugging for the resolver
|
||||
org.eclipse.osgi/resolver/debug = false
|
||||
# Prints out wiring information after the resolver has completed the resolve process
|
||||
org.eclipse.osgi/resolver/wiring = false
|
||||
# Prints out Import-Package information
|
||||
org.eclipse.osgi/resolver/imports = false
|
||||
# Prints out Require-Bundle information
|
||||
org.eclipse.osgi/resolver/requires = false
|
||||
# Prints out package grouping information form the "uses" clause
|
||||
org.eclipse.osgi/resolver/grouping = false
|
||||
# Prints out cycle information
|
||||
org.eclipse.osgi/resolver/cycles = false
|
||||
# Prints out Eclipse-GenericRequire information
|
||||
org.eclipse.osgi/resolver/generics = false
|
||||
|
||||
#### Profile settings
|
||||
org.eclipse.osgi/profile/startup = false
|
||||
org.eclipse.osgi/profile/benchmark = false
|
||||
org.eclipse.osgi/profile/debug = true
|
||||
|
||||
# Override the default implemenation
|
||||
org.eclipse.osgi/profile/impl = org.eclipse.osgi.internal.profile.DefaultProfileLogger
|
||||
|
||||
# Append all profile messages to the filename specified
|
||||
org.eclipse.osgi/defaultprofile/logfilename =
|
||||
|
||||
# Output all profile log messages synchronously to the jvm console.
|
||||
# By default, all log messages are cached until the log buffer is
|
||||
# requested.
|
||||
org.eclipse.osgi/defaultprofile/logsynchronously = false
|
||||
|
||||
# Specify the size of the default profile implementation log buffer.
|
||||
org.eclipse.osgi/defaultprofile/buffersize = 256
|
||||
|
||||
#### Monitoring settings
|
||||
# monitor class loading
|
||||
org.eclipse.osgi/monitor/classes=false
|
||||
|
||||
# monitor bundle activation
|
||||
org.eclipse.osgi/monitor/activation=false
|
||||
|
||||
# monitor resource bundle (*.properties) loading
|
||||
org.eclipse.osgi/monitor/resources=false
|
||||
|
||||
|
||||
#### Trace settings
|
||||
# trace class loading - snapshot the execution stack when a class is loaded
|
||||
org.eclipse.osgi/trace/classLoading=false
|
||||
|
||||
# trace location - file in which execution traces are written
|
||||
org.eclipse.osgi/trace/filename=runtime.traces
|
||||
|
||||
# trace filters - Java properties file defining which classes should
|
||||
# be traced (if trace/classLoading is true)
|
||||
# File format:
|
||||
# plugins=<comma separated list of plugins whose classes to trace>
|
||||
# packages=<comma separated list of package prefixes of classes to trace>
|
||||
# Note that there may be many 'plugins' and 'packages' lines in one file.
|
||||
org.eclipse.osgi/trace/filters=trace.properties
|
||||
|
||||
# trace bundle activation - snapshot the execution stack when a bundle is activated
|
||||
org.eclipse.osgi/trace/activation=false
|
||||
@ -0,0 +1,165 @@
|
||||
#
|
||||
# Copyright 2009 WSO2, Inc. (http://wso2.com)
|
||||
#
|
||||
# Licensed 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.
|
||||
#
|
||||
|
||||
#
|
||||
# This is the log4j configuration file used by WSO2 Carbon
|
||||
#
|
||||
# IMPORTANT : Please do not remove or change the names of any
|
||||
# of the Appenders defined here. The layout pattern & log file
|
||||
# can be changed using the WSO2 Carbon Management Console, and those
|
||||
# settings will override the settings in this file.
|
||||
#
|
||||
|
||||
log4j.rootLogger=INFO, CARBON_CONSOLE, CARBON_LOGFILE, CARBON_MEMORY, CARBON_SYS_LOG
|
||||
|
||||
log4j.logger.AUDIT_LOG=INFO, AUDIT_LOGFILE
|
||||
log4j.logger.org.apache.axis2.wsdl.codegen.writer.PrettyPrinter=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.axis2.clustering=INFO, CARBON_CONSOLE, CARBON_LOGFILE
|
||||
log4j.logger.org.apache=INFO, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.catalina=WARN
|
||||
log4j.logger.org.apache.tomcat=WARN
|
||||
log4j.logger.org.wso2.carbon.apacheds=WARN
|
||||
log4j.logger.org.apache.directory.server.ldap=ERROR
|
||||
log4j.logger.org.apache.directory.server.core.event=WARN
|
||||
log4j.logger.com.atomikos=INFO,ATOMIKOS
|
||||
log4j.logger.org.quartz=WARN
|
||||
log4j.logger.org.apache.jackrabbit.webdav=WARN
|
||||
log4j.logger.org.apache.juddi=ERROR
|
||||
log4j.logger.org.apache.commons.digester.Digester=WARN
|
||||
log4j.logger.org.apache.jasper.compiler.TldLocationsCache=WARN
|
||||
log4j.logger.org.apache.qpid=WARN
|
||||
log4j.logger.org.apache.qpid.server.Main=INFO
|
||||
log4j.logger.qpid.message=WARN
|
||||
log4j.logger.qpid.message.broker.listening=INFO
|
||||
log4j.logger.org.apache.tiles=WARN
|
||||
log4j.logger.org.apache.commons.httpclient=ERROR
|
||||
log4j.logger.org.apache.coyote=WARN
|
||||
log4j.logger.org.apache.solr=ERROR
|
||||
log4j.logger.me.prettyprint.cassandra.hector.TimingLogger=ERROR
|
||||
log4j.logger.org.wso2=INFO
|
||||
log4j.logger.org.apache.axis2.enterprise=FATAL, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.opensaml.xml=WARN, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.shared.ldap=WARN, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.server.ldap.handlers=WARN, CARBON_LOGFILE, CARBON_MEMORY
|
||||
#Following are to remove false error messages from startup (IS)
|
||||
log4j.logger.org.apache.directory.shared.ldap.entry.DefaultServerAttribute=FATAL, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.server.core.DefaultDirectoryService=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.shared.ldap.ldif.LdifReader=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.server.ldap.LdapProtocolHandler=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.server.core=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
log4j.logger.org.apache.directory.server.ldap.LdapSession=ERROR, CARBON_LOGFILE, CARBON_MEMORY
|
||||
#Hive Related Log configurations
|
||||
log4j.logger.DataNucleus=ERROR
|
||||
log4j.logger.Datastore=ERROR
|
||||
log4j.logger.Datastore.Schema=ERROR
|
||||
log4j.logger.JPOX.Datastore=ERROR
|
||||
log4j.logger.JPOX.Plugin=ERROR
|
||||
log4j.logger.JPOX.MetaData=ERROR
|
||||
log4j.logger.JPOX.Query=ERROR
|
||||
log4j.logger.JPOX.General=ERROR
|
||||
log4j.logger.JPOX.Enhancer=ERROR
|
||||
log4j.logger.org.apache.hadoop.hive=WARN
|
||||
log4j.logger.hive=WARN
|
||||
log4j.logger.ExecMapper=WARN
|
||||
log4j.logger.ExecReducer=WARN
|
||||
log4j.logger.net.sf.ehcache.config.ConfigurationFactory=ERROR
|
||||
|
||||
log4j.logger.trace.messages=TRACE,CARBON_TRACE_LOGFILE
|
||||
|
||||
log4j.additivity.org.apache.axis2.clustering=false
|
||||
log4j.additivity.com.atomikos=false
|
||||
log4j.additivity.org.apache=false
|
||||
|
||||
# CARBON_CONSOLE is set to be a ConsoleAppender using a PatternLayout.
|
||||
log4j.appender.CARBON_CONSOLE=org.wso2.carbon.utils.logging.appenders.CarbonConsoleAppender
|
||||
log4j.appender.CARBON_CONSOLE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
|
||||
# ConversionPattern will be overridden by the configuration setting in the DB
|
||||
log4j.appender.CARBON_CONSOLE.layout.ConversionPattern=[%d] %P%5p {%c} - %x %m%n
|
||||
log4j.appender.CARBON_CONSOLE.layout.TenantPattern=%U%@%D[%T]
|
||||
log4j.appender.CARBON_CONSOLE.threshold=DEBUG
|
||||
|
||||
# CARBON_MEMORY is set to be a MemoryAppender using a PatternLayout.
|
||||
log4j.appender.CARBON_MEMORY=org.wso2.carbon.utils.logging.appenders.MemoryAppender
|
||||
log4j.appender.CARBON_MEMORY.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.CARBON_MEMORY.bufferSize=200
|
||||
# ConversionPattern will be overridden by the configuration setting in the DB
|
||||
#log4j.appender.CARBON_MEMORY.layout.ConversionPattern=[%d] %5p - %x %m {%c}%n
|
||||
log4j.appender.CARBON_MEMORY.layout.ConversionPattern=[%d] %5p {%c} - %x %m %n
|
||||
log4j.appender.CARBON_MEMORY.threshold=DEBUG
|
||||
|
||||
|
||||
# CARBON_LOGFILE is set to be a DailyRollingFileAppender using a PatternLayout.
|
||||
log4j.appender.CARBON_LOGFILE=org.wso2.carbon.utils.logging.appenders.CarbonDailyRollingFileAppender
|
||||
# Log file will be overridden by the configuration setting in the DB
|
||||
# This path should be relative to WSO2 Carbon Home
|
||||
log4j.appender.CARBON_LOGFILE.File=${carbon.home}/repository/logs/${instance.log}/wso2carbon${instance.log}.log
|
||||
log4j.appender.CARBON_LOGFILE.Append=true
|
||||
log4j.appender.CARBON_LOGFILE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
|
||||
# ConversionPattern will be overridden by the configuration setting in the DB
|
||||
log4j.appender.CARBON_LOGFILE.layout.ConversionPattern=TID: [%T] [%S] [%d] %P%5p {%c} - %x %m %n
|
||||
log4j.appender.CARBON_LOGFILE.layout.TenantPattern=%U%@%D [%T] [%S]
|
||||
log4j.appender.CARBON_LOGFILE.threshold=DEBUG
|
||||
|
||||
log4j.appender.CARBON_SYS_LOG = org.apache.log4j.net.SyslogAppender
|
||||
log4j.appender.CARBON_SYS_LOG.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.CARBON_SYS_LOG.layout.ConversionPattern=[%d] %5p {%c} - %x %m %n
|
||||
log4j.appender.CARBON_SYS_LOG.SyslogHost=localhost
|
||||
log4j.appender.CARBON_SYS_LOG.Facility=USER
|
||||
log4j.appender.CARBON_SYS_LOG.threshold=DEBUG
|
||||
|
||||
# LOGEVENT is set to be a LogEventAppender using a PatternLayout to send logs to LOGEVENT
|
||||
log4j.appender.LOGEVENT=org.wso2.carbon.logging.service.appender.LogEventAppender
|
||||
log4j.appender.LOGEVENT.url=tcp://10.100.3.103:7611
|
||||
log4j.appender.LOGEVENT.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
|
||||
log4j.appender.LOGEVENT.columnList=%T,%S,%A,%d,%c,%p,%m,%H,%I,%Stacktrace
|
||||
log4j.appender.LOGEVENT.userName=admin
|
||||
log4j.appender.LOGEVENT.password=admin
|
||||
#log4j.appender.LOGEVENT.password=secretAlias:Log4j.Appender.LOGEVENT.Password
|
||||
|
||||
# Appender config to CARBON_TRACE_LOGFILE
|
||||
log4j.appender.CARBON_TRACE_LOGFILE=org.apache.log4j.DailyRollingFileAppender
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.File=${carbon.home}/repository/logs/${instance.log}/wso2carbon-trace-messages${instance.log}.log
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.Append=true
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.layout.ConversionPattern=[%d] %P%5p {%c} - %x %m %n
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.layout.TenantPattern=%U%@%D [%T] [%S]
|
||||
log4j.appender.CARBON_TRACE_LOGFILE.threshold=TRACE
|
||||
log4j.additivity.trace.messages=false
|
||||
|
||||
# Appender config to AUDIT_LOGFILE
|
||||
log4j.appender.AUDIT_LOGFILE=org.apache.log4j.DailyRollingFileAppender
|
||||
log4j.appender.AUDIT_LOGFILE.File=${carbon.home}/repository/logs/audit.log
|
||||
log4j.appender.AUDIT_LOGFILE.Append=true
|
||||
log4j.appender.AUDIT_LOGFILE.layout=org.wso2.carbon.utils.logging.TenantAwarePatternLayout
|
||||
log4j.appender.AUDIT_LOGFILE.layout.ConversionPattern=[%d] %P%5p {%c}- %x %m %n
|
||||
log4j.appender.AUDIT_LOGFILE.layout.TenantPattern=%U%@%D [%T] [%S]
|
||||
log4j.appender.AUDIT_LOGFILE.threshold=INFO
|
||||
log4j.additivity.AUDIT_LOG=false
|
||||
|
||||
# Appender config to send Atomikos transaction logs to new log file tm.out.
|
||||
log4j.appender.ATOMIKOS = org.apache.log4j.RollingFileAppender
|
||||
log4j.appender.ATOMIKOS.File = repository/logs/tm.out
|
||||
log4j.appender.ATOMIKOS.Append = true
|
||||
log4j.appender.ATOMIKOS.layout = org.apache.log4j.PatternLayout
|
||||
log4j.appender.ATOMIKOS.layout.ConversionPattern=%p %t %c - %m%n
|
||||
|
||||
# This file is used to override the default logger settings, and is used to remove unwanted logs from Shindig appearing on the console.
|
||||
|
||||
# Specification of Handler used by Console Logger
|
||||
handlers=java.util.logging.ConsoleHandler
|
||||
|
||||
# Replacing default INFO level with SEVERE
|
||||
java.util.logging.ConsoleHandler.level=SEVERE
|
||||
@ -0,0 +1,100 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
<wso2registry>
|
||||
|
||||
<!--
|
||||
For details on configuring different config & governance registries see;
|
||||
http://wso2.org/library/tutorials/2010/04/sharing-registry-space-across-multiple-product-instances
|
||||
-->
|
||||
|
||||
<currentDBConfig>wso2registry</currentDBConfig>
|
||||
<readOnly>false</readOnly>
|
||||
<enableCache>true</enableCache>
|
||||
<registryRoot>/</registryRoot>
|
||||
|
||||
<dbConfig name="wso2registry">
|
||||
<dataSource>jdbc/WSO2CarbonDB</dataSource>
|
||||
</dbConfig>
|
||||
|
||||
<!--<handler class="org.wso2.carbon.registry.extensions.handlers.SynapseRepositoryHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/vnd.apache.synapse</property>
|
||||
</filter>
|
||||
</handler>
|
||||
|
||||
<handler class="org.wso2.carbon.registry.extensions.handlers.SynapseRepositoryHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/vnd.apache.esb</property>
|
||||
</filter>
|
||||
</handler>
|
||||
|
||||
<handler class="org.wso2.carbon.registry.extensions.handlers.Axis2RepositoryHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/vnd.apache.axis2</property>
|
||||
</filter>
|
||||
</handler>
|
||||
|
||||
<handler class="org.wso2.carbon.registry.extensions.handlers.Axis2RepositoryHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/vnd.apache.wsas</property>
|
||||
</filter>
|
||||
</handler>
|
||||
|
||||
<handler class="org.wso2.carbon.registry.extensions.handlers.WSDLMediaTypeHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/wsdl+xml</property>
|
||||
</filter>
|
||||
</handler>
|
||||
|
||||
<handler class="org.wso2.carbon.registry.extensions.handlers.XSDMediaTypeHandler">
|
||||
<filter class="org.wso2.carbon.registry.core.jdbc.handlers.filters.MediaTypeMatcher">
|
||||
<property name="mediaType">application/x-xsd+xml</property>
|
||||
</filter>
|
||||
</handler> -->
|
||||
|
||||
<!--remoteInstance url="https://localhost:9443/registry">
|
||||
<id>instanceid</id>
|
||||
<username>username</username>
|
||||
<password>password</password>
|
||||
</remoteInstance-->
|
||||
|
||||
<!--remoteInstance url="https://localhost:9443/registry">
|
||||
<id>instanceid</id>
|
||||
<dbConfig>wso2registry</dbConfig>
|
||||
<readOnly>false</readOnly>
|
||||
<enableCache>true</enableCache>
|
||||
<registryRoot>/</registryRoot>
|
||||
</remoteInstance-->
|
||||
|
||||
<!--mount path="/_system/config" overwrite="true|false|virtual">
|
||||
<instanceId>instanceid</instanceId>
|
||||
<targetPath>/_system/nodes</targetPath>
|
||||
</mount-->
|
||||
|
||||
|
||||
<versionResourcesOnChange>false</versionResourcesOnChange>
|
||||
|
||||
<!-- NOTE: You can edit the options under "StaticConfiguration" only before the
|
||||
startup. -->
|
||||
<staticConfiguration>
|
||||
<versioningProperties>true</versioningProperties>
|
||||
<versioningComments>true</versioningComments>
|
||||
<versioningTags>true</versioningTags>
|
||||
<versioningRatings>true</versioningRatings>
|
||||
</staticConfiguration>
|
||||
</wso2registry>
|
||||
@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<!--
|
||||
This is the configuration file for Carbon authenticators. All the authenticator related configurations
|
||||
should go here.
|
||||
-->
|
||||
<Authenticators xmlns="http://wso2.org/projects/carbon/authenticators.xml">
|
||||
|
||||
<!-- Authenticator Configurations for TokenUIAuthenticator -->
|
||||
<Authenticator name="TokenUIAuthenticator" disabled="true">
|
||||
<Priority>5</Priority>
|
||||
</Authenticator>
|
||||
|
||||
<!-- Authenticator Configurations for SAML2SSOAuthenticator -->
|
||||
<Authenticator name="SAML2SSOAuthenticator" disabled="true">
|
||||
<Priority>10</Priority>
|
||||
<Config>
|
||||
<Parameter name="LoginPage">/carbon/admin/login.jsp</Parameter>
|
||||
<Parameter name="ServiceProviderID">carbonServer</Parameter>
|
||||
<Parameter name="IdentityProviderSSOServiceURL">https://localhost:9443/samlsso</Parameter>
|
||||
<Parameter name="NameIDPolicyFormat">urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</Parameter>
|
||||
|
||||
<!-- <Parameter name="IdPCertAlias">wso2carbon</Parameter> -->
|
||||
<!-- <Parameter name="ResponseSignatureValidationEnabled">false</Parameter> -->
|
||||
<!-- <Parameter name="LoginAttributeName"></Parameter> -->
|
||||
<!-- <Parameter name="RoleClaimAttribute"></Parameter> -->
|
||||
<!-- <Parameter name="AttributeValueSeparator">,</Parameter> -->
|
||||
|
||||
<!-- <Parameter name="JITUserProvisioning">true</Parameter> -->
|
||||
<!-- <Parameter name="ProvisioningDefaultUserstore">PRIMARY</Parameter> -->
|
||||
<!-- <Parameter name="ProvisioningDefaultRole">admin</Parameter> -->
|
||||
<!-- <Parameter name="IsSuperAdminRoleRequired">true</Parameter> -->
|
||||
</Config>
|
||||
|
||||
<!-- If this authenticator should skip any URI from authentication, specify it under "SkipAuthentication"
|
||||
<SkipAuthentication>
|
||||
<UrlContains></UrlContains>
|
||||
</SkipAuthentication> -->
|
||||
|
||||
<!-- If this authenticator should skip any URI from session validation, specify it under "SkipAuthentication
|
||||
<SkipSessionValidation>
|
||||
<UrlContains></UrlContains>
|
||||
</SkipSessionValidation> -->
|
||||
</Authenticator>
|
||||
|
||||
<!-- Authenticator Configurations for MutualSSLAuthenticator -->
|
||||
<!--Authenticator name="MutualSSLAuthenticator" disabled="false">
|
||||
<Priority>5</Priority>
|
||||
<Config>
|
||||
<Parameter name="UsernameHeader">UserName</Parameter>
|
||||
<Parameter name="WhiteListEnabled">false</Parameter>
|
||||
<Parameter name="WhiteList"/>
|
||||
</Config>
|
||||
</Authenticator-->
|
||||
|
||||
</Authenticators>
|
||||
|
||||
@ -0,0 +1,31 @@
|
||||
<!--
|
||||
~ Copyright 2005-2011 WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<!-- The contents of this file will be loaded for each web application -->
|
||||
<Context privileged="true" allowLinking="true">
|
||||
|
||||
<!-- Default set of monitored resources -->
|
||||
<WatchedResource>WEB-INF/web.xml</WatchedResource>
|
||||
|
||||
<!-- comment this out to enable session persistence across Tomcat restarts -->
|
||||
<Manager pathname="" />
|
||||
|
||||
<JarScanner className="org.wso2.carbon.tomcat.ext.scan.CarbonTomcatJarScanner" scanClassPath="true" scanAllFiles="false" scanAllDirectories="false"/>
|
||||
|
||||
<!-- Following are default values. But we specifically add them in kernel, becuase they get overridden in WSO2 AS -->
|
||||
<Loader className="org.apache.catalina.loader.WebappLoader" loaderClass="org.apache.catalina.loader.WebappClassLoader" />
|
||||
|
||||
</Context>
|
||||
@ -0,0 +1,61 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
~ Copyright (c) 2005-2010, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
~
|
||||
~ WSO2 Inc. 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.
|
||||
-->
|
||||
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
|
||||
"http://java.sun.com/dtd/web-app_2_3.dtd">
|
||||
<web-app id="WebApp">
|
||||
|
||||
<servlet id="bridge">
|
||||
<servlet-name>bridgeservlet</servlet-name>
|
||||
<display-name>Carbon Bridge Servlet</display-name>
|
||||
<description>Carbon Bridge Servlet</description>
|
||||
<servlet-class>org.wso2.carbon.tomcat.ext.servlet.DelegationServlet</servlet-class>
|
||||
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>bridgeservlet</servlet-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!--
|
||||
This is required if your application bundles expose JSPs.
|
||||
-->
|
||||
<servlet-mapping>
|
||||
<servlet-name>bridgeservlet</servlet-name>
|
||||
<url-pattern>*.jsp</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!--This is for performing the character encoding in the JSPs. -->
|
||||
<filter>
|
||||
<filter-name>CharsetFilter</filter-name>
|
||||
<filter-class>org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter</filter-class>
|
||||
<init-param>
|
||||
<param-name>requestEncoding</param-name>
|
||||
<param-value>UTF-8</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
|
||||
<filter-mapping>
|
||||
<filter-name>CharsetFilter</filter-name>
|
||||
<url-pattern>/*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<session-config>
|
||||
<session-timeout>15</session-timeout>
|
||||
</session-config>
|
||||
</web-app>
|
||||
@ -0,0 +1,97 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<Server port="8005" shutdown="SHUTDOWN">
|
||||
|
||||
<Service className="org.wso2.carbon.tomcat.ext.service.ExtendedStandardService" name="Catalina">
|
||||
|
||||
<!--
|
||||
optional attributes:
|
||||
|
||||
proxyPort="80"
|
||||
-->
|
||||
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
|
||||
port="9763"
|
||||
redirectPort="9443"
|
||||
bindOnInit="false"
|
||||
maxHttpHeaderSize="8192"
|
||||
acceptorThreadCount="2"
|
||||
maxThreads="250"
|
||||
minSpareThreads="50"
|
||||
disableUploadTimeout="false"
|
||||
connectionUploadTimeout="120000"
|
||||
maxKeepAliveRequests="200"
|
||||
acceptCount="200"
|
||||
server="WSO2 Carbon Server"
|
||||
compression="on"
|
||||
compressionMinSize="2048"
|
||||
noCompressionUserAgents="gozilla, traviata"
|
||||
compressableMimeType="text/html,text/javascript,application/x-javascript,application/javascript,application/xml,text/css,application/xslt+xml,text/xsl,image/gif,image/jpg,image/jpeg"
|
||||
URIEncoding="UTF-8"/>
|
||||
|
||||
<!--
|
||||
optional attributes:
|
||||
|
||||
proxyPort="443"
|
||||
-->
|
||||
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
|
||||
port="9443"
|
||||
bindOnInit="false"
|
||||
sslProtocol="TLS"
|
||||
maxHttpHeaderSize="8192"
|
||||
acceptorThreadCount="2"
|
||||
maxThreads="250"
|
||||
minSpareThreads="50"
|
||||
disableUploadTimeout="false"
|
||||
enableLookups="false"
|
||||
connectionUploadTimeout="120000"
|
||||
maxKeepAliveRequests="200"
|
||||
acceptCount="200"
|
||||
server="WSO2 Carbon Server"
|
||||
clientAuth="false"
|
||||
compression="on"
|
||||
scheme="https"
|
||||
secure="true"
|
||||
SSLEnabled="true"
|
||||
compressionMinSize="2048"
|
||||
noCompressionUserAgents="gozilla, traviata"
|
||||
compressableMimeType="text/html,text/javascript,application/x-javascript,application/javascript,application/xml,text/css,application/xslt+xml,text/xsl,image/gif,image/jpg,image/jpeg"
|
||||
keystoreFile="${carbon.home}/repository/resources/security/wso2carbon.jks"
|
||||
keystorePass="wso2carbon"
|
||||
URIEncoding="UTF-8"/>
|
||||
|
||||
|
||||
|
||||
<Engine name="Catalina" defaultHost="localhost">
|
||||
|
||||
<!--Realm className="org.apache.catalina.realm.MemoryRealm" pathname="${carbon.home}/repository/conf/tomcat/tomcat-users.xml"/-->
|
||||
|
||||
<Realm className="org.wso2.carbon.tomcat.ext.realms.CarbonTomcatRealm"/>
|
||||
|
||||
<Host name="localhost" unpackWARs="true" deployOnStartup="false" autoDeploy="false" appBase="${carbon.home}/repository/deployment/server/webapps/">
|
||||
<Valve className="org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve"/>
|
||||
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="${carbon.home}/repository/logs"
|
||||
prefix="http_access_" suffix=".log"
|
||||
pattern="combined" />
|
||||
<Valve className="org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve" threshold="600"/>
|
||||
<Valve className="org.wso2.carbon.tomcat.ext.valves.CompositeValve"/>
|
||||
</Host>
|
||||
</Engine>
|
||||
</Service>
|
||||
</Server>
|
||||
|
||||
@ -0,0 +1,16 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<!--
|
||||
This is the standard tomcat-users.xml file which can be used for definig users & roles. This
|
||||
is applicable to webapps only, and will be used only if the Security/TomcatRealm entry in the
|
||||
carbon.xml is set to Memory
|
||||
-->
|
||||
<tomcat-users>
|
||||
<role rolename="manager"/>
|
||||
<role rolename="tomcat"/>
|
||||
<role rolename="role1"/>
|
||||
<role rolename="admin"/>
|
||||
<user username="both" password="tomcat" roles="tomcat,role1"/>
|
||||
<user username="tomcat" password="tomcat" roles="tomcat"/>
|
||||
<user username="admin" password="admin" roles="tomcat,manager,admin"/>
|
||||
<user username="role1" password="tomcat" roles="role1"/>
|
||||
</tomcat-users>
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,379 @@
|
||||
<!--
|
||||
~ Copyright WSO2, Inc. (http://wso2.com)
|
||||
~
|
||||
~ Licensed 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.
|
||||
-->
|
||||
|
||||
<UserManager>
|
||||
<Realm>
|
||||
<Configuration>
|
||||
<AddAdmin>true</AddAdmin>
|
||||
<AdminRole>admin</AdminRole>
|
||||
<AdminUser>
|
||||
<UserName>admin</UserName>
|
||||
<Password>admin</Password>
|
||||
</AdminUser>
|
||||
<EveryOneRoleName>everyone</EveryOneRoleName> <!-- By default users in this role sees the registry root -->
|
||||
<Property name="dataSource">jdbc/WSO2CarbonDB</Property>
|
||||
</Configuration>
|
||||
<!-- Following is the default user store manager. This user store manager is based on embedded-apacheds LDAP. It reads/writes users and roles into the default apacheds LDAP user store. Descriptions about each of the following properties can be found in user management documentation of the respective product. In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>
|
||||
Note: Do not comment within UserStoreManager tags. Cause, specific tag names are used as tokens when building configurations for products. -->
|
||||
<!--UserStoreManager class="org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
|
||||
<Property name="ConnectionURL">ldap://localhost:${Ports.EmbeddedLDAP.LDAPServerPort}</Property>
|
||||
<Property name="ConnectionName">uid=admin,ou=system</Property>
|
||||
<Property name="ConnectionPassword">admin</Property>
|
||||
<Property name="LDAPConnectionTimeout">5000</Property>
|
||||
<Property name="Disabled">false</Property>
|
||||
<Property name="PasswordHashMethod">SHA</Property>
|
||||
<Property name="UserNameListFilter">(objectClass=person)</Property>
|
||||
<Property name="UserEntryObjectClass">wso2Person</Property>
|
||||
<Property name="UserSearchBase">ou=Users,dc=wso2,dc=org</Property>
|
||||
<Property name="UserNameSearchFilter">(&(objectClass=person)(uid=?))</Property>
|
||||
<Property name="UserNameAttribute">uid</Property>
|
||||
<Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegExViolationErrorMsg">Password length should be between 5 to 30 characters</Property>
|
||||
<Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="WriteGroups">true</Property>
|
||||
<Property name="EmptyRolesAllowed">true</Property>
|
||||
<Property name="GroupSearchBase">ou=Groups,dc=wso2,dc=org</Property>
|
||||
<Property name="GroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="GroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="GroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="GroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property>
|
||||
<Property name="SharedGroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="SharedGroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="SharedGroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="SharedTenantNameListFilter">(objectClass=organizationalUnit)</Property>
|
||||
<Property name="SharedTenantNameAttribute">ou</Property>
|
||||
<Property name="SharedTenantObjectClass">organizationalUnit</Property>
|
||||
<Property name="MembershipAttribute">member</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="UserDNPattern">uid={0},ou=Users,dc=wso2,dc=org</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="SCIMEnabled">false</Property>
|
||||
<Property name="ConnectionPoolingEnabled">false</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</UserStoreManager-->
|
||||
|
||||
<!-- Following is the configuration for internal JDBC user store. This user store manager is based on JDBC. In case if application needs to manage passwords externally set property <Property name="PasswordsExternallyManaged">true</Property>. In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>. Furthermore properties, IsEmailUserName and DomainCalculation are readonly properties.
|
||||
Note: Do not comment within UserStoreManager tags. Cause, specific tag names are used as tokens when building configurations for products. -->
|
||||
<UserStoreManager class="org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.JDBCTenantManager</Property>
|
||||
<Property name="ReadOnly">false</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="IsEmailUserName">false</Property>
|
||||
<Property name="DomainCalculation">default</Property>
|
||||
<Property name="PasswordDigest">SHA-256</Property>
|
||||
<Property name="StoreSaltedPassword">true</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="WriteGroups">true</Property>
|
||||
<Property name="UserNameUniqueAcrossTenants">false</Property>
|
||||
<Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegExViolationErrorMsg">Password length should be between 5 to 30 characters</Property>
|
||||
<Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaRegEx">^[^~!#$;%^*+={}\\|\\\\<>,\'\"]{3,30}$</Property>
|
||||
<Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="SharedGroupEnabled">false</Property>
|
||||
<Property name="SCIMEnabled">false</Property>
|
||||
<Property name="CaseSensitiveUsername">true</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</UserStoreManager>
|
||||
|
||||
<!-- If product is using an external LDAP as the user store in READ ONLY mode, use following user manager.
|
||||
In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>
|
||||
-->
|
||||
<!--UserStoreManager class="org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
|
||||
<Property name="ReadOnly">true</Property>
|
||||
<Property name="Disabled">false</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="ConnectionURL">ldap://localhost:10389</Property>
|
||||
<Property name="ConnectionName">uid=admin,ou=system</Property>
|
||||
<Property name="ConnectionPassword">admin</Property>
|
||||
<Property name="LDAPConnectionTimeout">5000</Property>
|
||||
<Property name="PasswordHashMethod">PLAIN_TEXT</Property>
|
||||
<Property name="UserSearchBase">ou=system</Property>
|
||||
<Property name="UserNameListFilter">(objectClass=person)</Property>
|
||||
<Property name="UserNameSearchFilter">(&(objectClass=person)(uid=?))</Property>
|
||||
<Property name="UserNameAttribute">uid</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="GroupSearchBase">ou=system</Property>
|
||||
<Property name="GroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="GroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="GroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property>
|
||||
<Property name="SharedGroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="SharedTenantNameListFilter">(objectClass=organizationalUnit)</Property>
|
||||
<Property name="SharedTenantNameAttribute">ou</Property>
|
||||
<Property name="SharedTenantObjectClass">organizationalUnit</Property>
|
||||
<Property name="MembershipAttribute">member</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="ReplaceEscapeCharactersAtUserLogin">true</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="SCIMEnabled">false</Property>
|
||||
<Property name="ConnectionPoolingEnabled">false</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</UserStoreManager-->
|
||||
|
||||
<!-- Active directory configuration is as follows.
|
||||
In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>
|
||||
There are few special properties for "Active Directory".
|
||||
They are :
|
||||
1.Referral - (comment out this property if this feature is not reuired) This enables LDAP referral support.
|
||||
2.BackLinksEnabled - (Do not comment, set to true or false) In some cases LDAP works with BackLinksEnabled. In which role is stored
|
||||
at user level. Depending on this value we need to change the Search Base within code.
|
||||
3.isADLDSRole - (Do not comment) Set to true if connecting to an AD LDS instance else set to false.
|
||||
-->
|
||||
<!--UserStoreManager class="org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
|
||||
<Property name="defaultRealmName">WSO2.ORG</Property>
|
||||
<Property name="Disabled">false</Property>
|
||||
<Property name="kdcEnabled">false</Property>
|
||||
<Property name="ConnectionURL">ldaps://10.100.1.100:636</Property>
|
||||
<Property name="ConnectionName">CN=admin,CN=Users,DC=WSO2,DC=Com</Property>
|
||||
<Property name="ConnectionPassword">A1b2c3d4</Property>
|
||||
<Property name="LDAPConnectionTimeout">5000</Property>
|
||||
<Property name="PasswordHashMethod">PLAIN_TEXT</Property>
|
||||
<Property name="UserSearchBase">CN=Users,DC=WSO2,DC=Com</Property>
|
||||
<Property name="UserEntryObjectClass">user</Property>
|
||||
<Property name="UserNameAttribute">cn</Property>
|
||||
<Property name="MemberOfAttribute">memberOf</Property>
|
||||
<Property name="Referral">follow</Property>
|
||||
<Property name="isADLDSRole">false</Property>
|
||||
<Property name="userAccountControl">512</Property>
|
||||
<Property name="UserNameListFilter">(objectClass=user)</Property>
|
||||
<Property name="UserNameSearchFilter">(&(objectClass=user)(cn=?))</Property>
|
||||
<Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegExViolationErrorMsg">Password length should be between 5 to 30 characters</Property>
|
||||
<Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="WriteGroups">true</Property>
|
||||
<Property name="EmptyRolesAllowed">true</Property>
|
||||
<Property name="GroupSearchBase">CN=Users,DC=WSO2,DC=Com</Property>
|
||||
<Property name="GroupEntryObjectClass">group</Property>
|
||||
<Property name="GroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property>
|
||||
<Property name="SharedGroupEntryObjectClass">groups</Property>
|
||||
<Property name="SharedTenantNameListFilter">(object=organizationalUnit)</Property>
|
||||
<Property name="SharedTenantNameAttribute">ou</Property>
|
||||
<Property name="SharedTenantObjectClass">organizationalUnit</Property>
|
||||
<Property name="MembershipAttribute">member</Property>
|
||||
<Property name="GroupNameListFilter">(objectcategory=group)</Property>
|
||||
<Property name="GroupNameSearchFilter">(&(objectClass=group)(cn=?))</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="Referral">follow</Property>
|
||||
<Property name="BackLinksEnabled">true</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="SCIMEnabled">false</Property>
|
||||
<Property name="ConnectionPoolingEnabled">false</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</UserStoreManager-->
|
||||
|
||||
<!-- If product is using an external LDAP as the user store in read/write mode, use following user manager
|
||||
In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>
|
||||
-->
|
||||
<!--UserStoreManager class="org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
|
||||
<Property name="ConnectionURL">ldap://localhost:10389</Property>
|
||||
<Property name="Disabled">false</Property>
|
||||
<Property name="ConnectionName">uid=admin,ou=system</Property>
|
||||
<Property name="ConnectionPassword">secret</Property>
|
||||
<Property name="LDAPConnectionTimeout">5000</Property>
|
||||
<Property name="PasswordHashMethod">PLAIN_TEXT</Property>
|
||||
<Property name="UserNameListFilter">(objectClass=person)</Property>
|
||||
<Property name="UserEntryObjectClass">inetOrgPerson</Property>
|
||||
<Property name="UserSearchBase">ou=system</Property>
|
||||
<Property name="UserNameSearchFilter">(&(objectClass=person)(uid=?))</Property>
|
||||
<Property name="UserNameAttribute">uid</Property>
|
||||
<Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegExViolationErrorMsg">Password length should be between 5 to 30 characters</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="WriteGroups">true</Property>
|
||||
<Property name="EmptyRolesAllowed">false</Property>
|
||||
<Property name="GroupSearchBase">ou=system</Property>
|
||||
<Property name="GroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="GroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="GroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="GroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property>
|
||||
<Property name="SharedGroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="SharedGroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="SharedGroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="SharedTenantNameListFilter">(objectClass=organizationalUnit)</Property>
|
||||
<Property name="SharedTenantNameAttribute">ou</Property>
|
||||
<Property name="SharedTenantObjectClass">organizationalUnit</Property>
|
||||
<Property name="MembershipAttribute">member</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="ReplaceEscapeCharactersAtUserLogin">true</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="SCIMEnabled">false</Property>
|
||||
<Property name="ConnectionPoolingEnabled">false</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</UserStoreManager-->
|
||||
|
||||
<!-- Following user manager is used by Identity Server (IS) as its default user manager.
|
||||
IS will do token replacement when building the product. Therefore do not change the syntax.
|
||||
If "kdcEnabled" parameter is true, IS will allow service principle management. Thus "ServicePasswordJavaRegEx", "ServiceNameJavaRegEx"
|
||||
properties control the service name format and service password formats.
|
||||
In case if user core cache domain is needed to identify uniquely set property <Property name="UserCoreCacheIdentifier">domain</Property>
|
||||
-->
|
||||
<!--ISUserStoreManager class="org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager">
|
||||
<Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
|
||||
<Property name="defaultRealmName">WSO2.ORG</Property>
|
||||
<Property name="kdcEnabled">false</Property>
|
||||
<Property name="Disabled">false</Property>
|
||||
<Property name="ConnectionURL">ldap://localhost:${Ports.EmbeddedLDAP.LDAPServerPort}</Property>
|
||||
<Property name="ConnectionName">uid=admin,ou=system</Property>
|
||||
<Property name="ConnectionPassword">admin</Property>
|
||||
<Property name="LDAPConnectionTimeout">5000</Property>
|
||||
<Property name="PasswordHashMethod">SHA</Property>
|
||||
<Property name="UserNameListFilter">(objectClass=person)</Property>
|
||||
<Property name="UserEntryObjectClass">identityPerson</Property>
|
||||
<Property name="UserSearchBase">ou=Users,dc=wso2,dc=org</Property>
|
||||
<Property name="UserNameSearchFilter">(&(objectClass=person)(uid=?))</Property>
|
||||
<Property name="UserNameAttribute">uid</Property>
|
||||
<Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegEx">^[\S]{5,30}$</Property>
|
||||
<Property name="ServicePasswordJavaRegEx">^[\\S]{5,30}$</Property>
|
||||
<Property name="PasswordJavaRegExViolationErrorMsg">Password length should be between 5 to 30 characters</Property>
|
||||
<Property name="ServiceNameJavaRegEx">^[\\S]{2,30}/[\\S]{2,30}$</Property>
|
||||
<Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
|
||||
<Property name="RolenameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
|
||||
<Property name="ReadGroups">true</Property>
|
||||
<Property name="WriteGroups">true</Property>
|
||||
<Property name="EmptyRolesAllowed">true</Property>
|
||||
<Property name="GroupSearchBase">ou=Groups,dc=wso2,dc=org</Property>
|
||||
<Property name="GroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="GroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="GroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="GroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupNameAttribute">cn</Property>
|
||||
<Property name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property>
|
||||
<Property name="SharedGroupEntryObjectClass">groupOfNames</Property>
|
||||
<Property name="SharedGroupNameListFilter">(objectClass=groupOfNames)</Property>
|
||||
<Property name="SharedGroupNameSearchFilter">(&(objectClass=groupOfNames)(cn=?))</Property>
|
||||
<Property name="SharedTenantNameListFilter">(objectClass=organizationalUnit)</Property>
|
||||
<Property name="SharedTenantNameAttribute">ou</Property>
|
||||
<Property name="SharedTenantObjectClass">organizationalUnit</Property>
|
||||
<Property name="MembershipAttribute">member</Property>
|
||||
<Property name="UserRolesCacheEnabled">true</Property>
|
||||
<Property name="UserDNPattern">uid={0},ou=Users,dc=wso2,dc=org</Property>
|
||||
<Property name="RoleDNPattern">cn={0},ou=Groups,dc=wso2,dc=org</Property>
|
||||
<Property name="SCIMEnabled">true</Property>
|
||||
<Property name="MaxRoleNameListLength">100</Property>
|
||||
<Property name="MaxUserNameListLength">100</Property>
|
||||
<Property name="ConnectionPoolingEnabled">false</Property>
|
||||
<Property name="MultiAttributeSeparator">,</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
</ISUserStoreManager-->
|
||||
|
||||
<!-- Following configuration is for the CassandraUserStoreManager. The CassandraUserStoreManager is capable of using a Cassandra
|
||||
database as a user store. This user manager supports multiple credentials for authentication. Credential types can be defined
|
||||
and configured in the following configuration. The CassandraUserStoreManager does not ships with the any of the WSO2 Carbon
|
||||
Servers by default, therefor Cassandra user manager component needs to be installed to the Carbon Server befor using.
|
||||
|
||||
And if this CassandraUserStoreManager is used as the primary user store with multi tenants, it should also implement a
|
||||
compatible TenantManager and set property <Property name="TenantManager">FULL_QUALIFIED_TENANT_MANAGER_CLASS_NAME</Property>.
|
||||
-->
|
||||
<!--UserStoreManager class="org.wso2.carbon.user.cassandra.CassandraUserStoreManager">
|
||||
<Property name="Keyspace">User_KS3</Property>
|
||||
<Property name="Host">localhost</Property>
|
||||
<Property name="Port">9160</Property>
|
||||
<Property name="PasswordDigest">SHA-256</Property>
|
||||
<Property name="StoreSaltedPassword">true</Property>
|
||||
<Property name="AuthenticateWithAnyCredential">true</Property>
|
||||
<Property name="DomainName">multipleCredentialUserStoreDomain</Property>
|
||||
<Property name="BulkImportSupported">true</Property>
|
||||
<MultipleCredentials>
|
||||
<Credential type="Default">org.wso2.carbon.user.cassandra.credentialtypes.EmailCredential</Credential>
|
||||
<Credential type="Email">org.wso2.carbon.user.cassandra.credentialtypes.EmailCredential</Credential>
|
||||
<Credential type="PhoneNumber">org.wso2.carbon.user.cassandra.credentialtypes.PhoneNumberCredential</Credential>
|
||||
<Credential type="Device">org.wso2.carbon.user.cassandra.credentialtypes.DeviceCredential</Credential>
|
||||
<Credential type="External">org.wso2.carbon.user.cassandra.credentialtypes.ExternalProviderCredential</Credential>
|
||||
</MultipleCredentials>
|
||||
</UserStoreManager-->
|
||||
|
||||
<AuthorizationManager
|
||||
class="org.wso2.carbon.user.core.authorization.JDBCAuthorizationManager">
|
||||
<Property name="AdminRoleManagementPermissions">/permission</Property>
|
||||
<Property name="AuthorizationCacheEnabled">true</Property>
|
||||
<Property name="GetAllRolesOfUserEnabled">true</Property>
|
||||
</AuthorizationManager>
|
||||
</Realm>
|
||||
</UserManager>
|
||||
|
||||
<!--*******Description of some of the configuration properties used in user-mgt.xml*********************************
|
||||
|
||||
DomainName - This property must be used by all secondary user store managers in multiple user store configuration.
|
||||
DomainName is a unique identifier given to the user store. Users must provide both the domain name and
|
||||
username at log-in as "DomainName\Username"
|
||||
|
||||
UserRolesCacheEnabled - This is to indicate whether to cache role list of a user. By default it is set to true.
|
||||
You may need to disable it if user-roles are changed by external means and need to reflect
|
||||
those changes in the carbon product immediately.
|
||||
|
||||
ReplaceEscapeCharactersAtUserLogin - This is to configure whether escape characters in user name needs to be replaced at user login.
|
||||
Currently the identified escape characters that needs to be replaced are '\' & '\\'
|
||||
|
||||
UserDNPattern - This property will be used when authenticating users. During authentication we do a bind. But if the user is login with
|
||||
email address or some other property we need to first lookup LDAP and retreive DN for the user. This involves an additional step.
|
||||
If UserDNPattern is specified the DN will be contructed using the pattern specified in this property. Performance of this is much better than looking
|
||||
up DN and binding user.
|
||||
|
||||
RoleDNPattern - This property will be used when checking whether user has been assigned to a given role. Rather than searching the role in search base, by
|
||||
using this property direct search can be done.
|
||||
|
||||
PasswordHashMethod - This says how the password should be stored. Allowed values are as follows,
|
||||
SHA - Uses SHA digest method
|
||||
MD5 - Uses MD 5 digest method
|
||||
PLAIN_TEXT - Plain text passwords
|
||||
In addition to above this supports all digest methods supported by http://docs.oracle.com/javase/6/docs/api/java/security/MessageDigest.html.
|
||||
|
||||
DisplayNameAttribute - this is to have a dedicated LDAP attribute to display an entity(User/Role) in UI, in addition to the UserNameAttribute which is used for IS-UserStore interactions.
|
||||
-->
|
||||
@ -79,14 +79,14 @@ CREATE TABLE IF NOT EXISTS DM_PROFILE_OPERATION (
|
||||
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DM_DEVICE_OPERATION_MAPPING (
|
||||
CREATE TABLE IF NOT EXISTS DM_ENROLMENT_OPERATION_MAPPING (
|
||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||
DEVICE_ID INTEGER NOT NULL,
|
||||
ENROLMENT_ID INTEGER NOT NULL,
|
||||
OPERATION_ID INTEGER NOT NULL,
|
||||
STATUS VARCHAR(50) NULL,
|
||||
PRIMARY KEY (ID),
|
||||
CONSTRAINT fk_dm_device_operation_mapping_device FOREIGN KEY (DEVICE_ID) REFERENCES
|
||||
DM_DEVICE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||
CONSTRAINT fk_dm_device_operation_mapping_device FOREIGN KEY (ENROLMENT_ID) REFERENCES
|
||||
DM_ENROLMENT (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||
CONSTRAINT fk_dm_device_operation_mapping_operation FOREIGN KEY (OPERATION_ID) REFERENCES
|
||||
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
@ -64,11 +64,11 @@
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.tomcat.wso2</groupId>
|
||||
<groupId>org.wso2.tomcat</groupId>
|
||||
<artifactId>tomcat</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.tomcat.wso2</groupId>
|
||||
<groupId>org.wso2.tomcat</groupId>
|
||||
<artifactId>tomcat-servlet-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
|
||||
@ -1,46 +0,0 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!--
|
||||
~ Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
~
|
||||
~ WSO2 Inc. 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.
|
||||
-->
|
||||
<APIPublisherConfig>
|
||||
<APIs>
|
||||
<API>
|
||||
<Name>AppManagerController</Name>
|
||||
<Owner>admin</Owner>
|
||||
<Context>appmanager</Context>
|
||||
<Version>1.0.0</Version>
|
||||
<Endpoint>http://localhost:9763/appmanager</Endpoint>
|
||||
<Transports>http,https</Transports>
|
||||
</API>
|
||||
<API>
|
||||
<Name>AndroidAgent</Name>
|
||||
<Owner>admin</Owner>
|
||||
<Context>mdm-android-agent</Context>
|
||||
<Version>1.0.0</Version>
|
||||
<Endpoint>http://localhost:9763/mdm-android-agent</Endpoint>
|
||||
<Transports>http,https</Transports>
|
||||
</API>
|
||||
<API>
|
||||
<Name>MDMAdmin</Name>
|
||||
<Owner>admin</Owner>
|
||||
<Context>mdm-admin</Context>
|
||||
<Version>1.0.0</Version>
|
||||
<Endpoint>http://localhost:9763/mdm-admin</Endpoint>
|
||||
<Transports>http,https</Transports>
|
||||
</API>
|
||||
</APIs>
|
||||
</APIPublisherConfig>
|
||||
@ -64,14 +64,28 @@ CREATE TABLE IF NOT EXISTS DM_PROFILE_OPERATION (
|
||||
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DM_DEVICE_OPERATION_MAPPING (
|
||||
CREATE TABLE IF NOT EXISTS DM_ENROLMENT (
|
||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||
DEVICE_ID INTEGER NOT NULL,
|
||||
OWNER VARCHAR(50) NOT NULL,
|
||||
OWNERSHIP VARCHAR(45) NULL DEFAULT NULL,
|
||||
STATUS VARCHAR(50) NULL,
|
||||
DATE_OF_ENROLMENT TIMESTAMP NULL DEFAULT NULL,
|
||||
DATE_OF_LAST_UPDATE TIMESTAMP NULL DEFAULT NULL,
|
||||
TENANT_ID INT NOT NULL,
|
||||
PRIMARY KEY (ID),
|
||||
CONSTRAINT fk_dm_device_enrolment FOREIGN KEY (DEVICE_ID) REFERENCES
|
||||
DM_DEVICE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DM_ENROLMENT_OPERATION_MAPPING (
|
||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||
ENROLMENT_ID INTEGER NOT NULL,
|
||||
OPERATION_ID INTEGER NOT NULL,
|
||||
STATUS VARCHAR(50) NULL,
|
||||
PRIMARY KEY (ID),
|
||||
CONSTRAINT fk_dm_device_operation_mapping_device FOREIGN KEY (DEVICE_ID) REFERENCES
|
||||
DM_DEVICE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||
CONSTRAINT fk_dm_device_operation_mapping_device FOREIGN KEY (ENROLMENT_ID) REFERENCES
|
||||
DM_ENROLMENT (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||
CONSTRAINT fk_dm_device_operation_mapping_operation FOREIGN KEY (OPERATION_ID) REFERENCES
|
||||
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
@ -281,20 +295,6 @@ CREATE TABLE IF NOT EXISTS DM_POLICY_CRITERIA_PROPERTIES (
|
||||
ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DM_ENROLMENT (
|
||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||
DEVICE_ID INTEGER NOT NULL,
|
||||
OWNER VARCHAR(50) NOT NULL,
|
||||
OWNERSHIP VARCHAR(45) NULL DEFAULT NULL,
|
||||
STATUS VARCHAR(50) NULL,
|
||||
DATE_OF_ENROLMENT TIMESTAMP NULL DEFAULT NULL,
|
||||
DATE_OF_LAST_UPDATE TIMESTAMP NULL DEFAULT NULL,
|
||||
TENANT_ID INT NOT NULL,
|
||||
PRIMARY KEY (ID),
|
||||
CONSTRAINT fk_dm_device_enrolment FOREIGN KEY (DEVICE_ID) REFERENCES
|
||||
DM_DEVICE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DM_APPLICATION (
|
||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||
NAME VARCHAR(50) NOT NULL,
|
||||
|
||||
@ -2,7 +2,6 @@ instructions.configure = \
|
||||
org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.server_${feature.version}/conf/cdm-config.xml,target:${installFolder}/../../conf/cdm-config.xml,overwrite:true);\
|
||||
org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.server_${feature.version}/conf/notification-messages.xml,target:${installFolder}/../../conf/notification-messages.xml,overwrite:true);\
|
||||
org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.server_${feature.version}/conf/license-config.xml,target:${installFolder}/../../conf/etc/license-config.xml,overwrite:true);\
|
||||
org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.server_${feature.version}/conf/user-api-publisher-config.xml,target:${installFolder}/../../conf/etc/user-api-publisher-config.xml,overwrite:true);\
|
||||
org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.server_${feature.version}/conf/app-management-config.xml,target:${installFolder}/../../conf/etc/app-management-config.xml,overwrite:true);\
|
||||
org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.server_${feature.version}/dbscripts/cdm,target:${installFolder}/../../../dbscripts/cdm,overwrite:true);\
|
||||
org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.server_${feature.version}/rxts/license.rxt,target:${installFolder}/../../../repository/resources/rxts/license.rxt,overwrite:true);\
|
||||
@ -62,14 +62,14 @@ CREATE TABLE IF NOT EXISTS DM_POLICY_OPERATION (
|
||||
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DM_DEVICE_OPERATION_MAPPING (
|
||||
CREATE TABLE IF NOT EXISTS DM_ENROLMENT_OPERATION_MAPPING (
|
||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||
DEVICE_ID INTEGER NOT NULL,
|
||||
ENROLMENT_ID INTEGER NOT NULL,
|
||||
OPERATION_ID INTEGER NOT NULL,
|
||||
STATUS VARCHAR(50) NULL,
|
||||
PRIMARY KEY (ID),
|
||||
CONSTRAINT fk_dm_device_operation_mapping_device FOREIGN KEY (DEVICE_ID) REFERENCES
|
||||
DM_DEVICE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||
CONSTRAINT fk_dm_device_operation_mapping_device FOREIGN KEY (ENROLMENT_ID) REFERENCES
|
||||
DM_ENROLMENT (ID) ON DELETE NO ACTION ON UPDATE NO ACTION,
|
||||
CONSTRAINT fk_dm_device_operation_mapping_operation FOREIGN KEY (OPERATION_ID) REFERENCES
|
||||
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||
);
|
||||
|
||||
16
pom.xml
16
pom.xml
@ -340,10 +340,10 @@
|
||||
<groupId>org.bouncycastle.wso2</groupId>
|
||||
<artifactId>bcprov-jdk15on</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.wso2.carbon</groupId>
|
||||
<artifactId>org.wso2.carbon.queuing</artifactId>
|
||||
</exclusion>
|
||||
<!--<exclusion>-->
|
||||
<!--<groupId>org.wso2.carbon</groupId>-->
|
||||
<!--<artifactId>org.wso2.carbon.queuing</artifactId>-->
|
||||
<!--</exclusion>-->
|
||||
<exclusion>
|
||||
<groupId>org.wso2.carbon</groupId>
|
||||
<artifactId>org.wso2.carbon.base</artifactId>
|
||||
@ -748,7 +748,7 @@
|
||||
|
||||
<!-- Tomcat dependencies -->
|
||||
<dependency>
|
||||
<groupId>org.apache.tomcat.wso2</groupId>
|
||||
<groupId>org.wso2.tomcat</groupId>
|
||||
<artifactId>tomcat</artifactId>
|
||||
<version>${orbit.version.tomcat}</version>
|
||||
<exclusions>
|
||||
@ -815,7 +815,7 @@
|
||||
<version>${tomcat.jdbc.pooling.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.tomcat.wso2</groupId>
|
||||
<groupId>org.wso2.tomcat</groupId>
|
||||
<artifactId>tomcat-servlet-api</artifactId>
|
||||
<version>${orbit.version.tomcat.servlet.api}</version>
|
||||
</dependency>
|
||||
@ -1137,8 +1137,8 @@
|
||||
<orbit.version.h2.engine>1.2.140.wso2v3</orbit.version.h2.engine>
|
||||
|
||||
<!-- Tomcat -->
|
||||
<orbit.version.tomcat>7.0.52.wso2v5</orbit.version.tomcat>
|
||||
<orbit.version.tomcat.servlet.api>7.0.52.wso2v1</orbit.version.tomcat.servlet.api>
|
||||
<orbit.version.tomcat>7.0.59.wso2v1</orbit.version.tomcat>
|
||||
<orbit.version.tomcat.servlet.api>7.0.59.wso2v1</orbit.version.tomcat.servlet.api>
|
||||
<tomcat.jdbc.pooling.version>7.0.34.wso2v2</tomcat.jdbc.pooling.version>
|
||||
|
||||
<!-- Carbon Deployment -->
|
||||
|
||||
Loading…
Reference in New Issue
Block a user