Commit 5aeecb16 authored by 卫星's avatar 卫星

Initial commit

parents

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

# Default ignored files
/shelf/
/workspace.xml
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
# Editor-based HTTP Client requests
/httpRequests/
cms
\ No newline at end of file
<component name="ArtifactManager">
<artifact type="war" name="cms:war">
<output-path>$PROJECT_DIR$/target</output-path>
<properties id="maven-jee-properties">
<options>
<exploded>false</exploded>
<module>cms</module>
<packaging>war</packaging>
<unpackNestedArchives>false</unpackNestedArchives>
</options>
</properties>
<root id="archive" name="cms-V20180120.war">
<element id="artifact" artifact-name="cms:war exploded" />
</root>
</artifact>
</component>
\ No newline at end of file
<component name="ArtifactManager">
<artifact type="exploded-war" name="cms:war exploded">
<output-path>$PROJECT_DIR$/target/cms-V20180120</output-path>
<properties id="maven-jee-properties">
<options>
<exploded>true</exploded>
<module>cms</module>
<packaging>war</packaging>
<unpackNestedArchives>false</unpackNestedArchives>
</options>
</properties>
<root id="root">
<element id="directory" name="WEB-INF">
<element id="directory" name="classes">
<element id="module-output" name="cms" />
</element>
<element id="directory" name="lib">
<element id="library" level="project" name="Maven: org.freemarker:freemarker:2.3.25-incubating" />
<element id="library" level="project" name="Maven: commons-logging:commons-logging:1.2" />
<element id="library" level="project" name="Maven: commons-io:commons-io:2.4" />
<element id="library" level="project" name="Maven: commons-fileupload:commons-fileupload:1.3.1" />
<element id="library" level="project" name="Maven: commons-codec:commons-codec:1.10" />
<element id="library" level="project" name="Maven: org.apache.commons:commons-collections4:4.0" />
<element id="library" level="project" name="Maven: org.apache.commons:commons-lang3:3.4" />
<element id="library" level="project" name="Maven: org.springframework:spring-context-support:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.springframework:spring-beans:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.springframework:spring-context:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.springframework:spring-core:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.springframework:spring-orm:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.springframework:spring-jdbc:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.springframework:spring-tx:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.springframework:spring-webmvc:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.springframework:spring-aop:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.springframework:spring-expression:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.springframework:spring-web:4.3.2.RELEASE" />
<element id="library" level="project" name="Maven: org.hibernate:hibernate-ehcache:5.1.1.Final" />
<element id="library" level="project" name="Maven: org.jboss.logging:jboss-logging:3.3.0.Final" />
<element id="library" level="project" name="Maven: org.hibernate:hibernate-core:5.1.1.Final" />
<element id="library" level="project" name="Maven: org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" />
<element id="library" level="project" name="Maven: org.javassist:javassist:3.20.0-GA" />
<element id="library" level="project" name="Maven: org.apache.geronimo.specs:geronimo-jta_1.1_spec:1.1.1" />
<element id="library" level="project" name="Maven: org.jboss:jandex:2.0.0.Final" />
<element id="library" level="project" name="Maven: com.fasterxml:classmate:1.3.0" />
<element id="library" level="project" name="Maven: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" />
<element id="library" level="project" name="Maven: net.sf.ehcache:ehcache:2.10.1" />
<element id="library" level="project" name="Maven: org.hibernate:hibernate-search-orm:5.5.4.Final" />
<element id="library" level="project" name="Maven: org.hibernate:hibernate-search-engine:5.5.4.Final" />
<element id="library" level="project" name="Maven: org.apache.lucene:lucene-core:5.3.1" />
<element id="library" level="project" name="Maven: org.apache.lucene:lucene-backward-codecs:5.3.1" />
<element id="library" level="project" name="Maven: org.apache.lucene:lucene-misc:5.3.1" />
<element id="library" level="project" name="Maven: org.apache.lucene:lucene-analyzers-common:5.3.1" />
<element id="library" level="project" name="Maven: org.apache.lucene:lucene-facet:5.3.1" />
<element id="library" level="project" name="Maven: org.apache.lucene:lucene-queries:5.3.1" />
<element id="library" level="project" name="Maven: c3p0:c3p0:0.9.1.2" />
<element id="library" level="project" name="Maven: com.mysql:mysql-connector-j:8.0.33" />
<element id="library" level="project" name="Maven: com.google.protobuf:protobuf-java:3.21.9" />
<element id="library" level="project" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.8.1" />
<element id="library" level="project" name="Maven: com.fasterxml.jackson.core:jackson-core:2.8.1" />
<element id="library" level="project" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.8.1" />
<element id="library" level="project" name="Maven: org.apache.httpcomponents:httpmime:4.5.2" />
<element id="library" level="project" name="Maven: org.apache.httpcomponents:httpclient:4.5.2" />
<element id="library" level="project" name="Maven: org.apache.httpcomponents:httpcore:4.4.4" />
<element id="library" level="project" name="Maven: org.apache.httpcomponents:httpclient-cache:4.5.2" />
<element id="library" level="project" name="Maven: org.slf4j:slf4j-api:1.7.10" />
<element id="library" level="project" name="Maven: javax.activation:activation:1.1.1" />
<element id="library" level="project" name="Maven: javax.transaction:jta:1.1" />
<element id="library" level="project" name="Maven: javax.mail:mail:1.4.7" />
<element id="library" level="project" name="Maven: eu.bitwalker:UserAgentUtils:1.15" />
<element id="library" level="project" name="Maven: antlr:antlr:2.7.7" />
<element id="library" level="project" name="Maven: dom4j:dom4j:1.6.1" />
<element id="library" level="project" name="Maven: xml-apis:xml-apis:1.0.b2" />
<element id="library" level="project" name="Maven: net.coobird:thumbnailator:0.4.8" />
<element id="library" level="project" name="Maven: org.apache.ant:ant:1.9.4" />
<element id="library" level="project" name="Maven: org.apache.ant:ant-launcher:1.9.4" />
<element id="library" level="project" name="Maven: org.quartz-scheduler:quartz:2.2.1" />
<element id="library" level="project" name="Maven: cglib:cglib-nodep:3.1" />
<element id="library" level="project" name="Maven: org.codehaus.jackson:jackson-mapper-asl:1.8.4" />
<element id="library" level="project" name="Maven: org.codehaus.jackson:jackson-core-asl:1.8.4" />
<element id="library" level="project" name="Maven: net.sf.json-lib:json-lib:jdk15:2.1" />
<element id="library" level="project" name="Maven: commons-beanutils:commons-beanutils:1.7.0" />
<element id="library" level="project" name="Maven: commons-collections:commons-collections:3.2" />
<element id="library" level="project" name="Maven: commons-lang:commons-lang:2.3" />
<element id="library" level="project" name="Maven: net.sf.ezmorph:ezmorph:1.0.3" />
<element id="library" level="project" name="Maven: com.alibaba:fastjson:1.2.6" />
<element id="library" level="project" name="Maven: com.google.code.gson:gson:2.2.4" />
</element>
</element>
<element id="directory" name="META-INF">
<element id="file-copy" path="$PROJECT_DIR$/target/cms-V20180120/META-INF/MANIFEST.MF" />
</element>
<element id="javaee-facet-resources" facet="cms/web/Web" />
</root>
</artifact>
</component>
\ No newline at end of file
<component name="ArtifactManager">
<artifact type="war" name="unnamed">
<output-path>$PROJECT_DIR$/classes/artifacts/unnamed</output-path>
<root id="archive" name="unnamed.war">
<element id="file-copy" path="E:/publicCms/spiccms/src/main/java/com/gxcx/filter/SqlFilter.java" />
</root>
</artifact>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile name="Maven default annotation processors profile" enabled="true">
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="cms" />
</profile>
</annotationProcessing>
<bytecodeTargetLevel>
<module name="cms" target="1.7" />
</bytecodeTargetLevel>
</component>
<component name="JavacSettings">
<option name="ADDITIONAL_OPTIONS_OVERRIDE">
<module name="cms" options="-extdirs src\main\webapp\WEB-INF\lib" />
</option>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" defaultCharsetForPropertiesFiles="UTF-8">
<file url="file://$PROJECT_DIR$" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" />
<file url="PROJECT" charset="UTF-8" />
</component>
</project>
\ No newline at end of file
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="JavaDoc" enabled="true" level="WARNING" enabled_by_default="true">
<option name="TOP_LEVEL_CLASS_OPTIONS">
<value>
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
<option name="REQUIRED_TAGS" value="" />
</value>
</option>
<option name="INNER_CLASS_OPTIONS">
<value>
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
<option name="REQUIRED_TAGS" value="" />
</value>
</option>
<option name="METHOD_OPTIONS">
<value>
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
<option name="REQUIRED_TAGS" value="@return@param@throws or @exception" />
</value>
</option>
<option name="FIELD_OPTIONS">
<value>
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
<option name="REQUIRED_TAGS" value="" />
</value>
</option>
<option name="IGNORE_DEPRECATED" value="false" />
<option name="IGNORE_JAVADOC_PERIOD" value="true" />
<option name="IGNORE_DUPLICATED_THROWS" value="false" />
<option name="IGNORE_POINT_TO_ITSELF" value="false" />
<option name="myAdditionalJavadocTags" value="date" />
</inspection_tool>
</profile>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Central Repository" />
<option name="url" value="https://repo.maven.apache.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Central Repository" />
<option name="url" value="http://maven.aliyun.com/nexus/content/groups/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
</component>
</project>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: antlr:antlr:2.7.7">
<CLASSES>
<root url="jar://D:/maven/repository/antlr/antlr/2.7.7/antlr-2.7.7.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/antlr/antlr/2.7.7/antlr-2.7.7-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/antlr/antlr/2.7.7/antlr-2.7.7-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: c3p0:c3p0:0.9.1.2">
<CLASSES>
<root url="jar://D:/maven/repository/c3p0/c3p0/0.9.1.2/c3p0-0.9.1.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/c3p0/c3p0/0.9.1.2/c3p0-0.9.1.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/c3p0/c3p0/0.9.1.2/c3p0-0.9.1.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: cglib:cglib-nodep:3.1">
<CLASSES>
<root url="jar://D:/maven/repository/cglib/cglib-nodep/3.1/cglib-nodep-3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/cglib/cglib-nodep/3.1/cglib-nodep-3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/cglib/cglib-nodep/3.1/cglib-nodep-3.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.alibaba:fastjson:1.2.6">
<CLASSES>
<root url="jar://D:/maven/repository/com/alibaba/fastjson/1.2.6/fastjson-1.2.6.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/com/alibaba/fastjson/1.2.6/fastjson-1.2.6-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/com/alibaba/fastjson/1.2.6/fastjson-1.2.6-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml:classmate:1.3.0">
<CLASSES>
<root url="jar://D:/maven/repository/com/fasterxml/classmate/1.3.0/classmate-1.3.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/com/fasterxml/classmate/1.3.0/classmate-1.3.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/com/fasterxml/classmate/1.3.0/classmate-1.3.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.8.1">
<CLASSES>
<root url="jar://D:/maven/repository/com/fasterxml/jackson/core/jackson-annotations/2.8.1/jackson-annotations-2.8.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/com/fasterxml/jackson/core/jackson-annotations/2.8.1/jackson-annotations-2.8.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/com/fasterxml/jackson/core/jackson-annotations/2.8.1/jackson-annotations-2.8.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.core:jackson-core:2.8.1">
<CLASSES>
<root url="jar://D:/maven/repository/com/fasterxml/jackson/core/jackson-core/2.8.1/jackson-core-2.8.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/com/fasterxml/jackson/core/jackson-core/2.8.1/jackson-core-2.8.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/com/fasterxml/jackson/core/jackson-core/2.8.1/jackson-core-2.8.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.fasterxml.jackson.core:jackson-databind:2.8.1">
<CLASSES>
<root url="jar://D:/maven/repository/com/fasterxml/jackson/core/jackson-databind/2.8.1/jackson-databind-2.8.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/com/fasterxml/jackson/core/jackson-databind/2.8.1/jackson-databind-2.8.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/com/fasterxml/jackson/core/jackson-databind/2.8.1/jackson-databind-2.8.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.google.code.gson:gson:2.2.4">
<CLASSES>
<root url="jar://D:/maven/repository/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/com/google/code/gson/gson/2.2.4/gson-2.2.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/com/google/code/gson/gson/2.2.4/gson-2.2.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.google.protobuf:protobuf-java:3.21.9">
<CLASSES>
<root url="jar://D:/maven/repository/com/google/protobuf/protobuf-java/3.21.9/protobuf-java-3.21.9.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/com/google/protobuf/protobuf-java/3.21.9/protobuf-java-3.21.9-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/com/google/protobuf/protobuf-java/3.21.9/protobuf-java-3.21.9-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: com.mysql:mysql-connector-j:8.0.33">
<CLASSES>
<root url="jar://D:/maven/repository/com/mysql/mysql-connector-j/8.0.33/mysql-connector-j-8.0.33.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/com/mysql/mysql-connector-j/8.0.33/mysql-connector-j-8.0.33-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/com/mysql/mysql-connector-j/8.0.33/mysql-connector-j-8.0.33-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-beanutils:commons-beanutils:1.7.0">
<CLASSES>
<root url="jar://D:/maven/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-codec:commons-codec:1.10">
<CLASSES>
<root url="jar://D:/maven/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/commons-codec/commons-codec/1.10/commons-codec-1.10-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/commons-codec/commons-codec/1.10/commons-codec-1.10-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-collections:commons-collections:3.2">
<CLASSES>
<root url="jar://D:/maven/repository/commons-collections/commons-collections/3.2/commons-collections-3.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/commons-collections/commons-collections/3.2/commons-collections-3.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/commons-collections/commons-collections/3.2/commons-collections-3.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-fileupload:commons-fileupload:1.3.1">
<CLASSES>
<root url="jar://D:/maven/repository/commons-fileupload/commons-fileupload/1.3.1/commons-fileupload-1.3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/commons-fileupload/commons-fileupload/1.3.1/commons-fileupload-1.3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/commons-fileupload/commons-fileupload/1.3.1/commons-fileupload-1.3.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-io:commons-io:2.4">
<CLASSES>
<root url="jar://D:/maven/repository/commons-io/commons-io/2.4/commons-io-2.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/commons-io/commons-io/2.4/commons-io-2.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/commons-io/commons-io/2.4/commons-io-2.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-lang:commons-lang:2.3">
<CLASSES>
<root url="jar://D:/maven/repository/commons-lang/commons-lang/2.3/commons-lang-2.3.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/commons-lang/commons-lang/2.3/commons-lang-2.3-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/commons-lang/commons-lang/2.3/commons-lang-2.3-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: commons-logging:commons-logging:1.2">
<CLASSES>
<root url="jar://D:/maven/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/commons-logging/commons-logging/1.2/commons-logging-1.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/commons-logging/commons-logging/1.2/commons-logging-1.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: dom4j:dom4j:1.6.1">
<CLASSES>
<root url="jar://D:/maven/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: eu.bitwalker:UserAgentUtils:1.15">
<CLASSES>
<root url="jar://D:/maven/repository/eu/bitwalker/UserAgentUtils/1.15/UserAgentUtils-1.15.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/eu/bitwalker/UserAgentUtils/1.15/UserAgentUtils-1.15-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/eu/bitwalker/UserAgentUtils/1.15/UserAgentUtils-1.15-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: javax.activation:activation:1.1.1">
<CLASSES>
<root url="jar://D:/maven/repository/javax/activation/activation/1.1.1/activation-1.1.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/javax/activation/activation/1.1.1/activation-1.1.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/javax/activation/activation/1.1.1/activation-1.1.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: javax.mail:mail:1.4.7">
<CLASSES>
<root url="jar://D:/maven/repository/javax/mail/mail/1.4.7/mail-1.4.7.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/javax/mail/mail/1.4.7/mail-1.4.7-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/javax/mail/mail/1.4.7/mail-1.4.7-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: javax.servlet:javax.servlet-api:3.0.1">
<CLASSES>
<root url="jar://D:/maven/repository/javax/servlet/javax.servlet-api/3.0.1/javax.servlet-api-3.0.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/javax/servlet/javax.servlet-api/3.0.1/javax.servlet-api-3.0.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/javax/servlet/javax.servlet-api/3.0.1/javax.servlet-api-3.0.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: javax.transaction:jta:1.1">
<CLASSES>
<root url="jar://D:/maven/repository/javax/transaction/jta/1.1/jta-1.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/javax/transaction/jta/1.1/jta-1.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/javax/transaction/jta/1.1/jta-1.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: junit:junit:4.12">
<CLASSES>
<root url="jar://D:/maven/repository/junit/junit/4.12/junit-4.12.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/junit/junit/4.12/junit-4.12-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/junit/junit/4.12/junit-4.12-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: net.coobird:thumbnailator:0.4.8">
<CLASSES>
<root url="jar://D:/maven/repository/net/coobird/thumbnailator/0.4.8/thumbnailator-0.4.8.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/net/coobird/thumbnailator/0.4.8/thumbnailator-0.4.8-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/net/coobird/thumbnailator/0.4.8/thumbnailator-0.4.8-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: net.sf.ehcache:ehcache:2.10.1">
<CLASSES>
<root url="jar://D:/maven/repository/net/sf/ehcache/ehcache/2.10.1/ehcache-2.10.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/net/sf/ehcache/ehcache/2.10.1/ehcache-2.10.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/net/sf/ehcache/ehcache/2.10.1/ehcache-2.10.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: net.sf.ezmorph:ezmorph:1.0.3">
<CLASSES>
<root url="jar://D:/maven/repository/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/net/sf/ezmorph/ezmorph/1.0.3/ezmorph-1.0.3-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: net.sf.json-lib:json-lib:jdk15:2.1">
<CLASSES>
<root url="jar://D:/maven/repository/net/sf/json-lib/json-lib/2.1/json-lib-2.1-jdk15.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/net/sf/json-lib/json-lib/2.1/json-lib-2.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/net/sf/json-lib/json-lib/2.1/json-lib-2.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.ant:ant:1.9.4">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/ant/ant/1.9.4/ant-1.9.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/ant/ant/1.9.4/ant-1.9.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/ant/ant/1.9.4/ant-1.9.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.ant:ant-launcher:1.9.4">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/ant/ant-launcher/1.9.4/ant-launcher-1.9.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/ant/ant-launcher/1.9.4/ant-launcher-1.9.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/ant/ant-launcher/1.9.4/ant-launcher-1.9.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.commons:commons-collections4:4.0">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/commons/commons-collections4/4.0/commons-collections4-4.0.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/commons/commons-collections4/4.0/commons-collections4-4.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/commons/commons-collections4/4.0/commons-collections4-4.0-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.commons:commons-lang3:3.4">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.geronimo.specs:geronimo-jta_1.1_spec:1.1.1">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/geronimo/specs/geronimo-jta_1.1_spec/1.1.1/geronimo-jta_1.1_spec-1.1.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/geronimo/specs/geronimo-jta_1.1_spec/1.1.1/geronimo-jta_1.1_spec-1.1.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/geronimo/specs/geronimo-jta_1.1_spec/1.1.1/geronimo-jta_1.1_spec-1.1.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.httpcomponents:httpclient:4.5.2">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpclient/4.5.2/httpclient-4.5.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpclient/4.5.2/httpclient-4.5.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpclient/4.5.2/httpclient-4.5.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.httpcomponents:httpclient-cache:4.5.2">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpclient-cache/4.5.2/httpclient-cache-4.5.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpclient-cache/4.5.2/httpclient-cache-4.5.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpclient-cache/4.5.2/httpclient-cache-4.5.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.httpcomponents:httpcore:4.4.4">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpcore/4.4.4/httpcore-4.4.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpcore/4.4.4/httpcore-4.4.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpcore/4.4.4/httpcore-4.4.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.httpcomponents:httpmime:4.5.2">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpmime/4.5.2/httpmime-4.5.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpmime/4.5.2/httpmime-4.5.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/httpcomponents/httpmime/4.5.2/httpmime-4.5.2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.lucene:lucene-analyzers-common:5.3.1">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-analyzers-common/5.3.1/lucene-analyzers-common-5.3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-analyzers-common/5.3.1/lucene-analyzers-common-5.3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-analyzers-common/5.3.1/lucene-analyzers-common-5.3.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.lucene:lucene-backward-codecs:5.3.1">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-backward-codecs/5.3.1/lucene-backward-codecs-5.3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-backward-codecs/5.3.1/lucene-backward-codecs-5.3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-backward-codecs/5.3.1/lucene-backward-codecs-5.3.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.lucene:lucene-core:5.3.1">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-core/5.3.1/lucene-core-5.3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-core/5.3.1/lucene-core-5.3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-core/5.3.1/lucene-core-5.3.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.lucene:lucene-facet:5.3.1">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-facet/5.3.1/lucene-facet-5.3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-facet/5.3.1/lucene-facet-5.3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-facet/5.3.1/lucene-facet-5.3.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.lucene:lucene-misc:5.3.1">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-misc/5.3.1/lucene-misc-5.3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-misc/5.3.1/lucene-misc-5.3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-misc/5.3.1/lucene-misc-5.3.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.apache.lucene:lucene-queries:5.3.1">
<CLASSES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-queries/5.3.1/lucene-queries-5.3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-queries/5.3.1/lucene-queries-5.3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/apache/lucene/lucene-queries/5.3.1/lucene-queries-5.3.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.codehaus.jackson:jackson-core-asl:1.8.4">
<CLASSES>
<root url="jar://D:/maven/repository/org/codehaus/jackson/jackson-core-asl/1.8.4/jackson-core-asl-1.8.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/codehaus/jackson/jackson-core-asl/1.8.4/jackson-core-asl-1.8.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/codehaus/jackson/jackson-core-asl/1.8.4/jackson-core-asl-1.8.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.codehaus.jackson:jackson-mapper-asl:1.8.4">
<CLASSES>
<root url="jar://D:/maven/repository/org/codehaus/jackson/jackson-mapper-asl/1.8.4/jackson-mapper-asl-1.8.4.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/codehaus/jackson/jackson-mapper-asl/1.8.4/jackson-mapper-asl-1.8.4-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/codehaus/jackson/jackson-mapper-asl/1.8.4/jackson-mapper-asl-1.8.4-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.freemarker:freemarker:2.3.25-incubating">
<CLASSES>
<root url="jar://D:/maven/repository/org/freemarker/freemarker/2.3.25-incubating/freemarker-2.3.25-incubating.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/freemarker/freemarker/2.3.25-incubating/freemarker-2.3.25-incubating-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/freemarker/freemarker/2.3.25-incubating/freemarker-2.3.25-incubating-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hamcrest:hamcrest-core:1.3">
<CLASSES>
<root url="jar://D:/maven/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final">
<CLASSES>
<root url="jar://D:/maven/repository/org/hibernate/common/hibernate-commons-annotations/5.0.1.Final/hibernate-commons-annotations-5.0.1.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/hibernate/common/hibernate-commons-annotations/5.0.1.Final/hibernate-commons-annotations-5.0.1.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/hibernate/common/hibernate-commons-annotations/5.0.1.Final/hibernate-commons-annotations-5.0.1.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hibernate:hibernate-core:5.1.1.Final">
<CLASSES>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-core/5.1.1.Final/hibernate-core-5.1.1.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-core/5.1.1.Final/hibernate-core-5.1.1.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-core/5.1.1.Final/hibernate-core-5.1.1.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hibernate:hibernate-ehcache:5.1.1.Final">
<CLASSES>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-ehcache/5.1.1.Final/hibernate-ehcache-5.1.1.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-ehcache/5.1.1.Final/hibernate-ehcache-5.1.1.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-ehcache/5.1.1.Final/hibernate-ehcache-5.1.1.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hibernate:hibernate-search-engine:5.5.4.Final">
<CLASSES>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-search-engine/5.5.4.Final/hibernate-search-engine-5.5.4.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-search-engine/5.5.4.Final/hibernate-search-engine-5.5.4.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-search-engine/5.5.4.Final/hibernate-search-engine-5.5.4.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hibernate:hibernate-search-orm:5.5.4.Final">
<CLASSES>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-search-orm/5.5.4.Final/hibernate-search-orm-5.5.4.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-search-orm/5.5.4.Final/hibernate-search-orm-5.5.4.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/hibernate/hibernate-search-orm/5.5.4.Final/hibernate-search-orm-5.5.4.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final">
<CLASSES>
<root url="jar://D:/maven/repository/org/hibernate/javax/persistence/hibernate-jpa-2.1-api/1.0.0.Final/hibernate-jpa-2.1-api-1.0.0.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/hibernate/javax/persistence/hibernate-jpa-2.1-api/1.0.0.Final/hibernate-jpa-2.1-api-1.0.0.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/hibernate/javax/persistence/hibernate-jpa-2.1-api/1.0.0.Final/hibernate-jpa-2.1-api-1.0.0.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.javassist:javassist:3.20.0-GA">
<CLASSES>
<root url="jar://D:/maven/repository/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.jboss:jandex:2.0.0.Final">
<CLASSES>
<root url="jar://D:/maven/repository/org/jboss/jandex/2.0.0.Final/jandex-2.0.0.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/jboss/jandex/2.0.0.Final/jandex-2.0.0.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/jboss/jandex/2.0.0.Final/jandex-2.0.0.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.jboss.logging:jboss-logging:3.3.0.Final">
<CLASSES>
<root url="jar://D:/maven/repository/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.quartz-scheduler:quartz:2.2.1">
<CLASSES>
<root url="jar://D:/maven/repository/org/quartz-scheduler/quartz/2.2.1/quartz-2.2.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/quartz-scheduler/quartz/2.2.1/quartz-2.2.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/quartz-scheduler/quartz/2.2.1/quartz-2.2.1-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.slf4j:slf4j-api:1.7.10">
<CLASSES>
<root url="jar://D:/maven/repository/org/slf4j/slf4j-api/1.7.10/slf4j-api-1.7.10.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/slf4j/slf4j-api/1.7.10/slf4j-api-1.7.10-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/slf4j/slf4j-api/1.7.10/slf4j-api-1.7.10-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-aop:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-aop/4.3.2.RELEASE/spring-aop-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-aop/4.3.2.RELEASE/spring-aop-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-aop/4.3.2.RELEASE/spring-aop-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-beans:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-beans/4.3.2.RELEASE/spring-beans-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-beans/4.3.2.RELEASE/spring-beans-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-beans/4.3.2.RELEASE/spring-beans-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-context:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-context/4.3.2.RELEASE/spring-context-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-context/4.3.2.RELEASE/spring-context-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-context/4.3.2.RELEASE/spring-context-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-context-support:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-context-support/4.3.2.RELEASE/spring-context-support-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-context-support/4.3.2.RELEASE/spring-context-support-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-context-support/4.3.2.RELEASE/spring-context-support-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-core:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-core/4.3.2.RELEASE/spring-core-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-core/4.3.2.RELEASE/spring-core-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-core/4.3.2.RELEASE/spring-core-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-expression:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-expression/4.3.2.RELEASE/spring-expression-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-expression/4.3.2.RELEASE/spring-expression-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-expression/4.3.2.RELEASE/spring-expression-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-jdbc:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-jdbc/4.3.2.RELEASE/spring-jdbc-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-jdbc/4.3.2.RELEASE/spring-jdbc-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-jdbc/4.3.2.RELEASE/spring-jdbc-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-orm:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-orm/4.3.2.RELEASE/spring-orm-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-orm/4.3.2.RELEASE/spring-orm-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-orm/4.3.2.RELEASE/spring-orm-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-test:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-test/4.3.2.RELEASE/spring-test-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-test/4.3.2.RELEASE/spring-test-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-test/4.3.2.RELEASE/spring-test-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-tx:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-tx/4.3.2.RELEASE/spring-tx-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-tx/4.3.2.RELEASE/spring-tx-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-tx/4.3.2.RELEASE/spring-tx-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-web:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-web/4.3.2.RELEASE/spring-web-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-web/4.3.2.RELEASE/spring-web-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-web/4.3.2.RELEASE/spring-web-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: org.springframework:spring-webmvc:4.3.2.RELEASE">
<CLASSES>
<root url="jar://D:/maven/repository/org/springframework/spring-webmvc/4.3.2.RELEASE/spring-webmvc-4.3.2.RELEASE.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/org/springframework/spring-webmvc/4.3.2.RELEASE/spring-webmvc-4.3.2.RELEASE-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/org/springframework/spring-webmvc/4.3.2.RELEASE/spring-webmvc-4.3.2.RELEASE-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: xml-apis:xml-apis:1.0.b2">
<CLASSES>
<root url="jar://D:/maven/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://D:/maven/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://D:/maven/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="FrameworkDetectionExcludesConfiguration">
<file type="web" url="file://$PROJECT_DIR$" />
</component>
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
<option value="$PROJECT_DIR$/pom.xml" />
</list>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/classes" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/cms.iml" filepath="$PROJECT_DIR$/cms.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RunConfigurationProducerService">
<option name="ignoredProducers">
<set>
<option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" />
</set>
</option>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Palette2">
<group name="Swing">
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
</item>
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
</item>
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
</item>
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
<initial-values>
<property name="text" value="Button" />
</initial-values>
</item>
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="RadioButton" />
</initial-values>
</item>
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="CheckBox" />
</initial-values>
</item>
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
<initial-values>
<property name="text" value="Label" />
</initial-values>
</item>
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
</item>
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
</item>
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
<preferred-size width="-1" height="20" />
</default-constraints>
</item>
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
</item>
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
</item>
</group>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="svn" />
<mapping directory="E:/" vcs="Git" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="web" name="Web">
<configuration>
<descriptors>
<deploymentDescriptor name="web.xml" url="file://$MODULE_DIR$/src/main/webapp/WEB-INF/web.xml" />
</descriptors>
<webroots>
<root url="file://$MODULE_DIR$/src/main/webapp" relative="/" />
</webroots>
<sourceRoots>
<root url="file://$MODULE_DIR$/src/main/java" />
<root url="file://$MODULE_DIR$/src/main/resources" />
</sourceRoots>
</configuration>
</facet>
<facet type="Spring" name="Spring">
<configuration />
</facet>
<facet type="jpa" name="JPA">
<configuration>
<setting name="validation-enabled" value="true" />
<setting name="provider-name" value="Hibernate" />
<datasource-mapping>
<factory-entry name="cms" />
</datasource-mapping>
<naming-strategy-map />
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.25-incubating" level="project" />
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
<orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.10" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.4" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context-support:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-beans:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-core:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-orm:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-tx:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-aop:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-expression:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-web:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.hibernate:hibernate-ehcache:5.1.1.Final" level="project" />
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.3.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.1.1.Final" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" level="project" />
<orderEntry type="library" name="Maven: org.javassist:javassist:3.20.0-GA" level="project" />
<orderEntry type="library" name="Maven: org.apache.geronimo.specs:geronimo-jta_1.1_spec:1.1.1" level="project" />
<orderEntry type="library" name="Maven: org.jboss:jandex:2.0.0.Final" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.3.0" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" level="project" />
<orderEntry type="library" name="Maven: net.sf.ehcache:ehcache:2.10.1" level="project" />
<orderEntry type="library" name="Maven: org.hibernate:hibernate-search-orm:5.5.4.Final" level="project" />
<orderEntry type="library" name="Maven: org.hibernate:hibernate-search-engine:5.5.4.Final" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-core:5.3.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-backward-codecs:5.3.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-misc:5.3.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-analyzers-common:5.3.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-facet:5.3.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.lucene:lucene-queries:5.3.1" level="project" />
<orderEntry type="library" name="Maven: c3p0:c3p0:0.9.1.2" level="project" />
<orderEntry type="library" name="Maven: com.mysql:mysql-connector-j:8.0.33" level="project" />
<orderEntry type="library" name="Maven: com.google.protobuf:protobuf-java:3.21.9" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.8.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.8.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.8.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.5.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient-cache:4.5.2" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.10" level="project" />
<orderEntry type="library" name="Maven: javax.activation:activation:1.1.1" level="project" />
<orderEntry type="library" name="Maven: javax.transaction:jta:1.1" level="project" />
<orderEntry type="library" name="Maven: javax.mail:mail:1.4.7" level="project" />
<orderEntry type="library" name="Maven: eu.bitwalker:UserAgentUtils:1.15" level="project" />
<orderEntry type="library" name="Maven: antlr:antlr:2.7.7" level="project" />
<orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" />
<orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" />
<orderEntry type="library" name="Maven: net.coobird:thumbnailator:0.4.8" level="project" />
<orderEntry type="library" name="Maven: org.apache.ant:ant:1.9.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.ant:ant-launcher:1.9.4" level="project" />
<orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.2.1" level="project" />
<orderEntry type="library" name="Maven: cglib:cglib-nodep:3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:javax.servlet-api:3.0.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:4.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.jackson:jackson-mapper-asl:1.8.4" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.jackson:jackson-core-asl:1.8.4" level="project" />
<orderEntry type="library" name="Maven: net.sf.json-lib:json-lib:jdk15:2.1" level="project" />
<orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.7.0" level="project" />
<orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2" level="project" />
<orderEntry type="library" name="Maven: commons-lang:commons-lang:2.3" level="project" />
<orderEntry type="library" name="Maven: net.sf.ezmorph:ezmorph:1.0.3" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.6" level="project" />
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.2.4" level="project" />
</component>
</module>
\ No newline at end of file
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>publiccms</groupId>
<artifactId>cms</artifactId>
<version>V20180120</version>
<packaging>war</packaging>
<name>PublicCMS</name>
<url>http://www.publiccms.com/</url>
<description>PublicCMS</description>
<properties>
<springVersion>4.3.2.RELEASE</springVersion>
<hibernateVersion>5.1.1.Final</hibernateVersion>
<hibernateSearchVersion>5.5.4.Final</hibernateSearchVersion>
<freemarkerVersion>2.3.25-incubating</freemarkerVersion>
<httpclientVersion>4.5.2</httpclientVersion>
<jacksonVersion>2.8.1</jacksonVersion>
<!-- json start -->
<jackson.version>1.8.4</jackson.version>
<!-- todo 没有用到 <jackson2.version>2.1.2</jackson2.version>-->
<jacksonframework.version>1.84</jacksonframework.version>
<json-lib.version>2.1</json-lib.version>
<fastjson-lib.version>1.2.6</fastjson-lib.version>
<gson.version>2.2.4</gson.version>
<!-- json end -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>${freemarkerVersion}</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.10</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-collections4</artifactId>
<version>4.0</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-ehcache</artifactId>
<version>${hibernateVersion}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-search</artifactId>
<version>${hibernateSearchVersion}</version>
</dependency>
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>mysql</groupId>-->
<!-- <artifactId>mysql-connector-java</artifactId>-->
<!-- <version>5.1.35</version>-->
<!-- </dependency>-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.33</version> <!-- 根据实际需求选择版本 -->
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jacksonVersion}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jacksonVersion}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
<version>${httpclientVersion}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient-cache</artifactId>
<version>${httpclientVersion}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.10</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>javax.transaction</groupId>
<artifactId>jta</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.7</version>
</dependency>
<dependency>
<groupId>eu.bitwalker</groupId>
<artifactId>UserAgentUtils</artifactId>
<version>1.15</version>
</dependency>
<dependency>
<groupId>antlr</groupId>
<artifactId>antlr</artifactId>
<version>2.7.7</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
<version>1.9.4</version>
</dependency>
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib-nodep</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${springVersion}</version>
<scope>test</scope>
</dependency>
<!-- 工具包 -->
<!-- JSON begin -->
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>${json-lib.version}</version>
<classifier>jdk15</classifier>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson-lib.version}</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>${gson.version}</version>
</dependency>
<!-- JSON end -->
</dependencies>
<build>
<defaultGoal>compile</defaultGoal>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
<compilerArguments>
<extdirs>src\main\webapp\WEB-INF\lib</extdirs>
</compilerArguments>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<server>tomcat</server>
<url>http://localhost/manager/text</url>
</configuration>
</plugin>
</plugins>
</build>
</project>
\ No newline at end of file
This diff is collapsed.
package com.gxcx.filter;
import org.apache.commons.lang3.StringUtils;
import security.IpWhitelist;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class IpFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
HttpServletRequest httpRequest = (HttpServletRequest) request;
HttpServletResponse httpServletResponse = (HttpServletResponse) response;
String requestURI = httpRequest.getRequestURI();
String remoteIp = getIpAddress((HttpServletRequest) request);
chain.doFilter(request, response);
// if (requestURI.contains("/admin/") ) {
// System.out.println("########################访问门户的IP为:"+remoteIp);
// // 应用更严格的IP白名单检查或其他逻辑
// if (IpWhitelist.isIpAllowed(remoteIp)) {
// chain.doFilter(request, response);
// } else {
// // IP不在白名单中,返回403 Forbidden响应
// response.getWriter().write("系统未授权访问");
// httpServletResponse.setStatus(HttpServletResponse.SC_FORBIDDEN);
// return;
// }
// } else {
// // 对于非/admin/的请求,可以应用不同的逻辑或默认允许
// chain.doFilter(request, response);
// }
}
public String getIpAddress(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for"), unknown = "unknown";
try {
ip = request.getHeader("x-forwarded-for");
if (StringUtils.isEmpty(ip) || unknown.equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (StringUtils.isEmpty(ip) || unknown.equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (StringUtils.isEmpty(ip) || unknown.equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_CLIENT_IP");
}
if (StringUtils.isEmpty(ip) || unknown.equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_X_FORWARDED_FOR");
}
if (StringUtils.isEmpty(ip) || unknown.equalsIgnoreCase(ip)) {
ip = request.getHeader("X-Forwarded-For");
}
if (StringUtils.isEmpty(ip) || unknown.equalsIgnoreCase(ip)) {
ip = request.getHeader("X-Real-IP");
}
if (StringUtils.isEmpty(ip) || unknown.equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
// 使用代理,则获取第一个IP地址
if (StringUtils.isNotEmpty(ip) && ip.replace(" ", "").replace("unknown,", "").indexOf(",") > 0) {
ip = ip.split(",")[0];
}
} catch (Exception e) {
System.out.println("IPUtils getIpAddr ERROR {} ---> {}");
}
return ip;
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
// 初始化代码(如果有的话)
}
@Override
public void destroy() {
// 销毁代码(如果有的话)
}
}
\ No newline at end of file
package com.gxcx.filter;
import org.apache.commons.lang3.StringEscapeUtils;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import java.io.IOException;
import java.text.CharacterIterator;
import java.text.StringCharacterIterator;
import java.util.regex.Pattern;
public class SqlFilter implements Filter {
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) {
try {
chain.doFilter(new FilteredRequest(request), response);
} catch (IOException e) {
e.printStackTrace();
} catch (ServletException e) {
e.printStackTrace();
}
}
public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub
}
public void destroy() {
// TODO Auto-generated method stub
}
class FilteredRequest extends HttpServletRequestWrapper {
public FilteredRequest(ServletRequest request) {
super((HttpServletRequest) request);
}
@Override
public String getHeader(String name) {
return StringEscapeUtils.escapeHtml4(super.getHeader(name));
}
@Override
public String getQueryString() {
return StringEscapeUtils.escapeHtml4(super.getQueryString());
}
@Override
public String getParameter(String paramName) {
if(paramName.equals("content")||paramName.equals("path")||paramName.equals("cmsTemplateEditor")
||paramName.equals("cmstext")||paramName.equals("data")||paramName.equals("blurSearch")||paramName.equals("text")){
return super.getParameter(paramName);
}else{
String value = StringEscapeUtils.escapeHtml4(super.getParameter(paramName));
value = super.getParameter(xssEncode(paramName));
if (value != null) {
value = xssEncode(value);
value = HTMLEncode(value);
}
return value;
}
}
@Override
public String[] getParameterValues(String paramName) {
if(paramName.equals("content")||paramName.equals("path")||paramName.equals("text")||paramName.equals("data")||paramName.contains("categoryExtendDataList")){
System.out.println(super.getParameterValues(paramName));
return super.getParameterValues(paramName);
}else{
String[] values = super.getParameterValues(paramName);
if(values != null) {
int length = values.length;
String[] escapseValues = new String[length];
for(int i = 0; i < length; i++){
escapseValues[i] = StringEscapeUtils.escapeHtml4(values[i]);
}
System.out.println(escapseValues[0]);
return escapseValues;
}
return super.getParameterValues(paramName);
}
}
/**
* 覆盖getHeader方法,将参数名和参数值都做xss过滤。 如果需要获得原始的值,则通过super.getHeaders(name)来获取
* getHeaderNames 也可能需要覆盖
*/
// @Override
// public String getHeader(String name) {
// String value = super.getHeader(xssEncode(name));
// if (value != null) {
// value = xssEncode(value);
// }
// return value;
// }
/**
* 覆盖getParameter方法,将参数名和参数值都做xss过滤。
* 如果需要获得原始的值,则通过super.getParameterValues(name)来获取
* getParameterNames,getParameterValues和getParameterMap也可能需要覆盖
*/
// @Override
// public String getParameter(String name) {
// System.out.println(name);
// if(name.equals("content")||name.equals("path")||name.equals("cmsTemplateEditor")
// ||name.equals("cmstext")||name.equals("data")||name.equals("blurSearch")){
// return super.getParameter(name);
// }else{
// String value = super.getParameter(xssEncode(name));
// if (value != null) {
// value = xssEncode(value);
// value = HTMLEncode(value);
// }
// return value;
// }
// }
/**
* 对一些特殊字符进行转义
*
*
*/
public String HTMLEncode(String aText) {
final StringBuilder result = new StringBuilder();
final StringCharacterIterator iterator = new StringCharacterIterator(
aText);
char character = iterator.current();
while (character != CharacterIterator.DONE) {
if (character == '<') {
result.append("<");
} else if (character == '>') {
result.append(">");
} else if (character == '&') {
result.append("&");
} else if (character == '\"') {
result.append("\"");
} else if (character == '+') {
result.append("+");
}else {
result.append(character);
}
character = iterator.next();
}
return result.toString();
}
/**
* 将容易引起xss漏洞的半角字符直接替换成全角字符
* 目前xssProject对注入代码要求是必须开始标签和结束标签(如<script></script>)正确匹配才能解析,否则报错;因此只能替换调xssProject换为自定义实现
* @param s
* @return
*/
private String xssEncode(String s) {
if (s == null || s.isEmpty()) {
return s;
}
String result = stripXSS(s);
if (null != result) {
result = escape(result);
}
return result;
}
public String escape(String s) {
StringBuilder sb = new StringBuilder(s.length() + 16);
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
switch (c) {
case '>':
sb.append('>');// 全角大于号
break;
case '<':
sb.append('<');// 全角小于号
break;
case '\'':
sb.append('‘');// 全角单引号
break;
case '\"':
sb.append('“');// 全角双引号
break;
case '\\':
sb.append('\');// 全角斜线
break;
case '%':
sb.append('%'); // 全角冒号
break;
default:
sb.append(c);
break;
}
}
return sb.toString();
}
private String stripXSS(String value) {
if (value != null) {
// NOTE: It's highly recommended to use the ESAPI library and
// uncomment the following line to
// avoid encoded attacks.
// value = ESAPI.encoder().canonicalize(value);
// Avoid null characters
value = value.replaceAll("", "");
// Avoid anything between script tags
Pattern scriptPattern = Pattern.compile("<script>(.*?)</script>",
Pattern.CASE_INSENSITIVE);
value = scriptPattern.matcher(value).replaceAll("");
// Avoid anything in a src='...' type of expression
scriptPattern = Pattern.compile("src[\r\n]*=[\r\n]*\\\'(.*?)\\\'",
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE
| Pattern.DOTALL);
value = scriptPattern.matcher(value).replaceAll("");
scriptPattern = Pattern.compile("src[\r\n]*=[\r\n]*\\\"(.*?)\\\"",
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE
| Pattern.DOTALL);
value = scriptPattern.matcher(value).replaceAll("");
// Remove any lonesome </script> tag
scriptPattern = Pattern.compile("</script>",
Pattern.CASE_INSENSITIVE);
value = scriptPattern.matcher(value).replaceAll("");
// Remove any lonesome <script ...> tag
scriptPattern = Pattern.compile("<script(.*?)>",
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE
| Pattern.DOTALL);
value = scriptPattern.matcher(value).replaceAll("");
// Avoid eval(...) expressions
scriptPattern = Pattern.compile("eval\\((.*?)\\)",
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE
| Pattern.DOTALL);
value = scriptPattern.matcher(value).replaceAll("");
// Avoid expression(...) expressions
scriptPattern = Pattern.compile("expression\\((.*?)\\)",
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE
| Pattern.DOTALL);
value = scriptPattern.matcher(value).replaceAll("");
// Avoid javascript:... expressions
scriptPattern = Pattern.compile("javascript:",
Pattern.CASE_INSENSITIVE);
value = scriptPattern.matcher(value).replaceAll("");
// Avoid vbscript:... expressions
scriptPattern = Pattern.compile("vbscript:",
Pattern.CASE_INSENSITIVE);
value = scriptPattern.matcher(value).replaceAll("");
// Avoid οnlοad= expressions
scriptPattern = Pattern.compile("onload(.*?)=",
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE
| Pattern.DOTALL);
value = scriptPattern.matcher(value).replaceAll("");
scriptPattern = Pattern.compile("<iframe>(.*?)</iframe>",
Pattern.CASE_INSENSITIVE);
value = scriptPattern.matcher(value).replaceAll("");
scriptPattern = Pattern.compile("</iframe>",
Pattern.CASE_INSENSITIVE);
value = scriptPattern.matcher(value).replaceAll("");
// Remove any lonesome <script ...> tag
scriptPattern = Pattern.compile("<iframe(.*?)>",
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE
| Pattern.DOTALL);
value = scriptPattern.matcher(value).replaceAll("");
scriptPattern = Pattern.compile("(oncontrolselect|oncopy|oncut|ondataavailable|ondatasetchanged|ondatasetcomplete|ondblclick|ondeactivate|ondrag|ondragend|ondragenter|ondragleave|ondragover|ondragstart|ondrop|onerror=|onerroupdate|onfilterchange|onfinish|onfocus|onfocusin|onfocusout|onhelp|onkeydown|onkeypress|onkeyup|onlayoutcomplete|onload|onlosecapture|onmousedown|onmouseenter|onmouseleave|onmousemove|onmousout|onmouseover|onmouseup|onmousewheel|onmove|onmoveend|onmovestart|onabort|onactivate|onafterprint|onafterupdate|onbefore|onbeforeactivate|onbeforecopy|onbeforecut|onbeforedeactivate|onbeforeeditocus|onbeforepaste|onbeforeprint|onbeforeunload|onbeforeupdate|onblur|onbounce|oncellchange|onchange|onclick|oncontextmenu|onpaste|onpropertychange|onreadystatechange|onreset|onresize|onresizend|onresizestart|onrowenter|onrowexit|onrowsdelete|onrowsinserted|onscroll|onselect|onselectionchange|onselectstart|onstart|onstop|onsubmit|onunload|ontoggle|prompt|alert|)",
Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL);
value = scriptPattern.matcher(value).replaceAll("");
}
return value;
}
}
}
package com.publiccms.common.base;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired;
import com.publiccms.common.base.app.App;
import com.publiccms.entities.sys.SysSite;
import com.publiccms.logic.component.SiteComponent;
import com.sanluan.common.directive.BaseHttpDirective;
import com.sanluan.common.handler.RenderHandler;
/**
*
* BaseDirective 自定义接口指令基类
*
*/
public abstract class AbstractAppDirective extends BaseHttpDirective implements App {
public SysSite getSite(RenderHandler handler) throws IOException, Exception {
HttpServletRequest request = handler.getRequest();
return siteComponent.getSite(request.getServerName(), request.getServerPort());
}
public abstract boolean needUserToken();
public abstract boolean needAppToken();
@Autowired
private SiteComponent siteComponent;
}
package com.publiccms.common.base;
import java.io.IOException;
import org.springframework.beans.factory.annotation.Autowired;
import com.publiccms.common.base.app.AppV1;
import com.publiccms.entities.sys.SysApp;
import com.publiccms.entities.sys.SysAppToken;
import com.publiccms.entities.sys.SysUser;
import com.publiccms.entities.sys.SysUserToken;
import com.publiccms.logic.service.sys.SysAppService;
import com.publiccms.logic.service.sys.SysAppTokenService;
import com.publiccms.logic.service.sys.SysUserService;
import com.publiccms.logic.service.sys.SysUserTokenService;
import com.sanluan.common.handler.RenderHandler;
/**
*
* BaseDirective 自定义接口指令基类
*
*/
public abstract class AbstractAppV1Directive extends AbstractAppDirective implements AppV1 {
public final static String REQUIRED_PARAMTER = "required_paramter:";
private SysUser getUser(RenderHandler handler) throws Exception {
String authToken = handler.getString("authToken");
Long authUserId = handler.getLong("authUserId");
if (notEmpty(authToken) && notEmpty(authUserId)) {
SysUserToken sysUserToken = sysUserTokenService.getEntity(authToken);
if (notEmpty(sysUserToken) && sysUserToken.getUserId() == authUserId) {
return sysUserService.getEntity(sysUserToken.getUserId());
}
}
return null;
}
private SysApp getApp(RenderHandler handler) throws Exception {
SysAppToken appToken = appTokenService.getEntity(handler.getString("appToken"));
if (notEmpty(appToken)) {
return appService.getEntity(appToken.getAppId());
}
return null;
}
@Override
public void execute(RenderHandler handler) throws IOException, Exception {
SysApp app = null;
SysUser user = null;
if (needAppToken() && empty((app = getApp(handler)))) {
handler.put("error", "needAppToken").render();
} else if (needUserToken() && empty((user = getUser(handler)))) {
handler.put("error", "needLogin").render();
} else {
execute(handler, app, user);
}
}
public abstract void execute(RenderHandler handler, SysApp app, SysUser user) throws IOException, Exception;
@Override
public String getVersion() {
return VERSION;
}
@Autowired
private SysAppTokenService appTokenService;
@Autowired
private SysAppService appService;
@Autowired
private SysUserTokenService sysUserTokenService;
@Autowired
private SysUserService sysUserService;
}
package com.publiccms.common.base;
import static com.publiccms.common.constants.CommonConstants.getCookiesUser;
import static com.publiccms.common.constants.CommonConstants.getSessionAdmin;
import static com.publiccms.common.constants.CommonConstants.getSessionUser;
import static com.publiccms.common.constants.CommonConstants.getSessionUserTime;
import static com.sanluan.common.tools.RequestUtils.cancleCookie;
import static com.sanluan.common.tools.RequestUtils.getUserAgent;
import java.util.Date;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.converter.json.MappingJacksonValue;
import com.publiccms.entities.sys.SysDomain;
import com.publiccms.entities.sys.SysSite;
import com.publiccms.entities.sys.SysUser;
import com.publiccms.logic.component.SiteComponent;
import com.publiccms.logic.service.log.LogOperateService;
import com.sanluan.common.base.BaseController;
import eu.bitwalker.useragentutils.DeviceType;
import eu.bitwalker.useragentutils.UserAgent;
public abstract class AbstractController extends BaseController {
protected static final String TEMPLATE_INDEX = "index";
protected static final String TEMPLATE_DONE = "common/ajaxDone";
protected static final String TEMPLATE_ERROR = "common/ajaxError";
protected static final String MESSAGE = "message";
protected static final String SUCCESS = "success";
public static final Pattern MOBILE_PATTERN = Pattern.compile("^(13|14|15|17|18|)\\d{9}$");
public static final Pattern NUMBER_PATTERN = Pattern.compile("^[0-9]*$");
public static final Pattern USERNAME_PATTERN = Pattern.compile("^[A-Za-z_]{1}[0-9A-Za-z_]{3,40}$");
public static final Pattern NICKNAME_PATTERN = Pattern.compile("^[0-9A-Za-z_\u4E00-\uFA29\uE7C7-\uE7F3]{2,45}$");
private static final String VALID_CHARS = "[^\\s\\(\\)<>@,;:\\\\\\\"\\.\\[\\]+]+";
public static final Pattern EMAIL_PATTERN = Pattern
.compile("(" + VALID_CHARS + "(\\." + VALID_CHARS + ")*@" + VALID_CHARS + "(\\." + VALID_CHARS + ")*)");
@Autowired
protected LogOperateService logOperateService;
@Autowired
protected SiteComponent siteComponent;
protected SysDomain getDomain(HttpServletRequest request) {
return siteComponent.getDomain(request.getServerName(), request.getServerPort());
}
protected SysSite getSite(HttpServletRequest request) {
return siteComponent.getSite(request.getServerName(), request.getServerPort());
}
protected static MappingJacksonValue getMappingJacksonValue(Object object, String callback) {
MappingJacksonValue mappingJacksonValue = new MappingJacksonValue(object);
mappingJacksonValue.setJsonpFunction(callback);
return mappingJacksonValue;
}
/**
* @param request
* @return
* @throws IllegalStateException
*/
protected static DeviceType getDeviceType(HttpServletRequest request) {
return UserAgent.parseUserAgentString(getUserAgent(request)).getOperatingSystem().getDeviceType();
}
/**
* @param session
* @return
*/
public static SysUser getUserFromSession(HttpSession session) {
return (SysUser) session.getAttribute(getSessionUser());
}
/**
* @param session
* @return
*/
public static Date getUserTimeFromSession(HttpSession session) {
return (Date) session.getAttribute(getSessionUserTime());
}
/**
* @param session
* @param user
*/
public static void setUserToSession(HttpSession session, SysUser user) {
session.setAttribute(getSessionUser(), user);
session.setAttribute(getSessionUserTime(), getDate());
}
/**
* @param request
* @param response
*/
public static void clearUserToSession(String contextPath, HttpSession session, HttpServletResponse response) {
cancleCookie(contextPath, response, getCookiesUser(), null);
session.removeAttribute(getSessionUser());
}
/**
* @param session
*/
public static void clearUserTimeToSession(HttpSession session) {
session.removeAttribute(getSessionUserTime());
}
/**
* @param session
* @return
*/
public static SysUser getAdminFromSession(HttpSession session) {
return (SysUser) session.getAttribute(getSessionAdmin());
}
/**
* @param session
* @param user
*/
public static void setAdminToSession(HttpSession session, SysUser user) {
session.setAttribute(getSessionAdmin(), user);
}
/**
* @param value
* @return
*/
public static boolean verifyNotUserName(String value) {
Matcher m = USERNAME_PATTERN.matcher(value);
if (!m.matches()) {
return true;
}
return false;
}
/**
* @param value
* @return
*/
public static boolean verifyNotNickName(String value) {
Matcher m = NICKNAME_PATTERN.matcher(value);
if (!m.matches()) {
return true;
}
return false;
}
/**
* @param value
* @return
*/
protected static boolean verifyNotMobile(String value) {
Matcher m = MOBILE_PATTERN.matcher(value);
if (!m.matches()) {
return true;
}
return false;
}
/**
* @param field
* @param value
* @param model
* @return
*/
protected static boolean verifyNotEMail(String field, String value, Map<String, Object> model) {
if (verifyNotEMail(value)) {
model.put(ERROR, "verify.notEmail." + field);
return true;
}
return false;
}
/**
* @param field
* @param value
* @param model
* @return
*/
protected static boolean verifyNotUserName(String field, String value, Map<String, Object> model) {
if (verifyNotUserName(value)) {
model.put(ERROR, "verify.notUserName." + field);
return true;
}
return false;
}
/**
* @param field
* @param value
* @param model
* @return
*/
protected static boolean verifyNotNickName(String field, String value, Map<String, Object> model) {
if (verifyNotNickName(value)) {
model.put(ERROR, "verify.notNickName." + field);
return true;
}
return false;
}
/**
* @param field
* @param value
* @param model
* @return
*/
protected static boolean verifyNotMobile(String field, String value, Map<String, Object> model) {
if (verifyNotMobile(value)) {
model.put(ERROR, "verify.notMobile." + field);
return true;
}
return false;
}
/**
* @param value
* @return
*/
public static boolean verifyNotEMail(String value) {
Matcher m = EMAIL_PATTERN.matcher(value);
if (!m.matches()) {
return true;
}
return false;
}
/**
* @param value
* @return
*/
public static boolean verifyNotNumber(String value) {
Matcher m = NUMBER_PATTERN.matcher(value);
if (!m.matches()) {
return true;
}
return false;
}
/**
* @param field
* @param value
* @param model
* @return
*/
protected static boolean verifyNotEMailAndMobile(String field, String value, Map<String, Object> model) {
if (verifyNotEMail(value) && verifyNotMobile(value)) {
model.put(ERROR, "verify.notEmailAndMobile." + field);
return true;
}
return false;
}
/**
* @param session
*/
public static void clearAdminToSession(HttpSession session) {
session.removeAttribute(getSessionAdmin());
}
}
package com.publiccms.common.base;
import static com.publiccms.logic.component.SiteComponent.CONTEXT_SITE;
import org.springframework.beans.factory.annotation.Autowired;
import com.publiccms.entities.sys.SysSite;
import com.publiccms.logic.component.SiteComponent;
import com.sanluan.common.directive.BaseTemplateDirective;
import com.sanluan.common.handler.RenderHandler;
/**
*
* AbstractTemplateDirective 自定义模板指令基类
*
*/
public abstract class AbstractTaskDirective extends BaseTemplateDirective {
public SysSite getSite(RenderHandler handler) throws Exception {
return (SysSite) handler.getAttribute(CONTEXT_SITE);
}
@Autowired
protected SiteComponent siteComponent;
}
\ No newline at end of file
package com.publiccms.common.base;
import static com.publiccms.logic.component.SiteComponent.CONTEXT_SITE;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.http.converter.HttpMessageConverter;
import com.publiccms.entities.sys.SysApp;
import com.publiccms.entities.sys.SysAppToken;
import com.publiccms.entities.sys.SysSite;
import com.publiccms.logic.component.SiteComponent;
import com.publiccms.logic.service.sys.SysAppService;
import com.publiccms.logic.service.sys.SysAppTokenService;
import com.sanluan.common.directive.BaseTemplateDirective;
import com.sanluan.common.directive.HttpDirective;
import com.sanluan.common.handler.HttpParameterHandler;
import com.sanluan.common.handler.RenderHandler;
/**
*
* AbstractTemplateDirective 自定义模板指令基类
*
*/
public abstract class AbstractTemplateDirective extends BaseTemplateDirective implements HttpDirective {
public SysSite getSite(RenderHandler handler) throws Exception {
return (SysSite) handler.getAttribute(CONTEXT_SITE);
}
@Override
public void execute(HttpMessageConverter<Object> httpMessageConverter, MediaType mediaType, HttpServletRequest request,
String callback, HttpServletResponse response) throws IOException, Exception {
HttpParameterHandler handler = new HttpParameterHandler(httpMessageConverter, mediaType, request, callback, response);
if (needAppToken() && empty(getApp(handler))) {
handler.put("error", "needAppToken").render();
} else {
execute(handler);
handler.render();
}
}
private SysApp getApp(RenderHandler handler) throws Exception {
SysAppToken appToken = appTokenService.getEntity(handler.getString("appToken"));
if (notEmpty(appToken)) {
return appService.getEntity(appToken.getAppId());
}
return null;
}
public boolean needAppToken() {
return false;
}
@Autowired
private SysAppTokenService appTokenService;
@Autowired
private SysAppService appService;
@Autowired
protected SiteComponent siteComponent;
}
\ No newline at end of file
package com.publiccms.common.base;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.nio.charset.Charset;
import java.util.Random;
/**
*
* Base
*
*/
public interface Base {
/**
* Json Mapper
*/
public static final ObjectMapper objectMapper = new ObjectMapper();
/**
* 随机数
*
* Random
*/
public static final Random random = new Random();
/**
* 默认字符编码名称
*
* Default CharSet Name
*/
public static final String DEFAULT_CHARSET_NAME = "UTF-8";
/**
* 默认字符编码
*
* Default CharSet
*/
public static final Charset DEFAULT_CHARSET = Charset.forName(DEFAULT_CHARSET_NAME);
/**
* 间隔符
*
* separator
*/
public static final String SEPARATOR = "/";
/**
* 空白字符串
*
* blank
*/
public static final String BLANK = "";
/**
* 点
*
* dot
*/
public static final String DOT = ".";
/**
* 空格
*
* blank space
*/
public static final String BLANK_SPACE = " ";
/**
* 逗号分隔符
*
* comma delimited
*/
public static final String COMMA_DELIMITED = ",";
}
package com.publiccms.common.base.app;
public interface App {
public String getVersion();
}
package com.publiccms.common.base.app;
public interface AppV1 extends App {
public static final String VERSION = "V1.0";
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment