-
-
Save coolcoolercool/fdbc32a850e5d58f59c6add69e53fa84 to your computer and use it in GitHub Desktop.
| <component name="ArtifactManager"> | |
| <artifact type="war" name="jk28_dao:war"> | |
| <output-path>$PROJECT_DIR$/jk28_dao/target</output-path> | |
| <root id="archive" name="jk28_dao.war"> | |
| <element id="artifact" artifact-name="jk28_dao:war exploded" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="exploded-war" name="jk28_dao:war exploded"> | |
| <output-path>$PROJECT_DIR$/jk28_dao/target/jk28_dao</output-path> | |
| <root id="root"> | |
| <element id="directory" name="WEB-INF"> | |
| <element id="directory" name="classes"> | |
| <element id="module-output" name="jk28_dao" /> | |
| </element> | |
| <element id="directory" name="lib"> | |
| <element id="archive" name="jk28_utils-0.0.1-SNAPSHOT.jar"> | |
| <element id="module-output" name="jk28_utils" /> | |
| </element> | |
| <element id="library" level="project" name="Maven: org.apache.httpcomponents:httpclient:4.4" /> | |
| <element id="library" level="project" name="Maven: org.apache.httpcomponents:httpcore:4.4" /> | |
| <element id="library" level="project" name="Maven: commons-logging:commons-logging:1.2" /> | |
| <element id="library" level="project" name="Maven: commons-codec:commons-codec:1.9" /> | |
| <element id="library" level="project" name="Maven: com.alibaba:fastjson:1.1.37" /> | |
| <element id="library" level="project" name="Maven: commons-beanutils:commons-beanutils:1.9.1" /> | |
| <element id="library" level="project" name="Maven: commons-collections:commons-collections:3.2.1" /> | |
| <element id="library" level="project" name="Maven: org.quartz-scheduler:quartz:2.2.1" /> | |
| <element id="library" level="project" name="Maven: commons-fileupload:commons-fileupload:1.3.1" /> | |
| <element id="library" level="project" name="Maven: commons-io:commons-io:2.2" /> | |
| <element id="library" level="project" name="Maven: jstl:jstl:1.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.shiro:shiro-all:1.2.3" /> | |
| <element id="library" level="project" name="Maven: org.aspectj:aspectjweaver:1.6.8" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: aopalliance:aopalliance:1.0" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-core:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" /> | |
| <element id="library" level="project" name="Maven: asm:asm-commons:3.3" /> | |
| <element id="library" level="project" name="Maven: asm:asm-tree:3.3" /> | |
| <element id="library" level="project" name="Maven: org.freemarker:freemarker:2.3.22" /> | |
| <element id="library" level="project" name="Maven: ognl:ognl:3.0.6" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.commons:commons-lang3:3.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" /> | |
| <element id="library" level="project" name="Maven: org.javassist:javassist:3.18.1-GA" /> | |
| <element id="library" level="project" name="Maven: antlr:antlr:2.7.7" /> | |
| <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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" /> | |
| <element id="library" level="project" name="Maven: javax.validation:validation-api:1.1.0.Final" /> | |
| <element id="library" level="project" name="Maven: com.fasterxml:classmate:1.1.0" /> | |
| <element id="library" level="project" name="Maven: c3p0:c3p0:0.9.1.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" /> | |
| <element id="library" level="project" name="Maven: xml-resolver:xml-resolver:1.2" /> | |
| <element id="library" level="project" name="Maven: asm:asm:3.3.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-core:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" /> | |
| <element id="library" level="project" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" /> | |
| <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" /> | |
| <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.neethi:neethi:3.0.3" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" /> | |
| <element id="library" level="project" name="Maven: log4j:log4j:1.2.12" /> | |
| <element id="library" level="project" name="Maven: org.slf4j:slf4j-api:1.6.6" /> | |
| <element id="library" level="project" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" /> | |
| <element id="library" level="project" name="Maven: javax.mail:mail:1.4.4" /> | |
| <element id="library" level="project" name="Maven: javax.activation:activation:1.1" /> | |
| <element id="library" level="project" name="Maven: commons-lang:commons-lang:2.6" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" /> | |
| <element id="library" level="project" name="Maven: wsdl4j:wsdl4j:1.6.1" /> | |
| <element id="library" level="project" name="Maven: jaxen:jaxen:1.1-beta-9" /> | |
| <element id="library" level="project" name="Maven: xerces:xmlParserAPIs:2.6.2" /> | |
| <element id="library" level="project" name="Maven: xerces:xercesImpl:2.6.2" /> | |
| <element id="library" level="project" name="Maven: stax:stax-api:1.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.ws.commons:XmlSchema:1.1" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" /> | |
| <element id="library" level="project" name="Maven: jdom:jdom:1.0" /> | |
| <element id="library" level="project" name="Maven: commons-httpclient:commons-httpclient:3.0" /> | |
| <element id="library" level="project" name="Maven: dom4j:dom4j:1.6" /> | |
| <element id="library" level="project" name="Maven: xml-apis:xml-apis:1.0.b2" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" /> | |
| <element id="library" level="project" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" /> | |
| <element id="library" level="project" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" /> | |
| </element> | |
| </element> | |
| <element id="directory" name="META-INF"> | |
| <element id="file-copy" path="$PROJECT_DIR$/jk28_dao/target/jk28_dao/META-INF/MANIFEST.MF" /> | |
| </element> | |
| <element id="javaee-facet-resources" facet="jk28_dao/web/Web" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="war" name="jk28_domain:war"> | |
| <output-path>$PROJECT_DIR$/jk28_domain/target</output-path> | |
| <root id="archive" name="jk28_parent.war"> | |
| <element id="artifact" artifact-name="jk28_domain:war exploded" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="exploded-war" name="jk28_domain:war exploded"> | |
| <output-path>$PROJECT_DIR$/jk28_domain/target/jk28_parent</output-path> | |
| <root id="root"> | |
| <element id="directory" name="WEB-INF"> | |
| <element id="directory" name="classes"> | |
| <element id="module-output" name="jk28_domain" /> | |
| </element> | |
| <element id="directory" name="lib"> | |
| <element id="archive" name="jk28_service-0.0.1-SNAPSHOT.jar"> | |
| <element id="module-output" name="jk28_service" /> | |
| </element> | |
| <element id="archive" name="jk28_dao-0.0.1-SNAPSHOT.jar"> | |
| <element id="module-output" name="jk28_dao" /> | |
| </element> | |
| <element id="archive" name="jk28_utils-0.0.1-SNAPSHOT.jar"> | |
| <element id="module-output" name="jk28_utils" /> | |
| </element> | |
| <element id="library" level="project" name="Maven: cn.itcast.jk:jk28_domain:0.0.1-SNAPSHOT" /> | |
| <element id="archive" name="jk28_exception-0.0.1-SNAPSHOT.jar"> | |
| <element id="module-output" name="jk28_exception" /> | |
| </element> | |
| <element id="library" level="project" name="Maven: org.apache.httpcomponents:httpclient:4.4" /> | |
| <element id="library" level="project" name="Maven: org.apache.httpcomponents:httpcore:4.4" /> | |
| <element id="library" level="project" name="Maven: commons-logging:commons-logging:1.2" /> | |
| <element id="library" level="project" name="Maven: commons-codec:commons-codec:1.9" /> | |
| <element id="library" level="project" name="Maven: com.alibaba:fastjson:1.1.37" /> | |
| <element id="library" level="project" name="Maven: commons-beanutils:commons-beanutils:1.9.1" /> | |
| <element id="library" level="project" name="Maven: commons-collections:commons-collections:3.2.1" /> | |
| <element id="library" level="project" name="Maven: org.quartz-scheduler:quartz:2.2.1" /> | |
| <element id="library" level="project" name="Maven: commons-fileupload:commons-fileupload:1.3.1" /> | |
| <element id="library" level="project" name="Maven: commons-io:commons-io:2.2" /> | |
| <element id="library" level="project" name="Maven: jstl:jstl:1.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.shiro:shiro-all:1.2.3" /> | |
| <element id="library" level="project" name="Maven: org.aspectj:aspectjweaver:1.6.8" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: aopalliance:aopalliance:1.0" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-core:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" /> | |
| <element id="library" level="project" name="Maven: asm:asm-commons:3.3" /> | |
| <element id="library" level="project" name="Maven: asm:asm-tree:3.3" /> | |
| <element id="library" level="project" name="Maven: org.freemarker:freemarker:2.3.22" /> | |
| <element id="library" level="project" name="Maven: ognl:ognl:3.0.6" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.commons:commons-lang3:3.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" /> | |
| <element id="library" level="project" name="Maven: org.javassist:javassist:3.18.1-GA" /> | |
| <element id="library" level="project" name="Maven: antlr:antlr:2.7.7" /> | |
| <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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" /> | |
| <element id="library" level="project" name="Maven: javax.validation:validation-api:1.1.0.Final" /> | |
| <element id="library" level="project" name="Maven: com.fasterxml:classmate:1.1.0" /> | |
| <element id="library" level="project" name="Maven: c3p0:c3p0:0.9.1.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" /> | |
| <element id="library" level="project" name="Maven: xml-resolver:xml-resolver:1.2" /> | |
| <element id="library" level="project" name="Maven: asm:asm:3.3.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-core:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" /> | |
| <element id="library" level="project" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" /> | |
| <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" /> | |
| <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.neethi:neethi:3.0.3" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" /> | |
| <element id="library" level="project" name="Maven: log4j:log4j:1.2.12" /> | |
| <element id="library" level="project" name="Maven: org.slf4j:slf4j-api:1.6.6" /> | |
| <element id="library" level="project" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" /> | |
| <element id="library" level="project" name="Maven: javax.mail:mail:1.4.4" /> | |
| <element id="library" level="project" name="Maven: javax.activation:activation:1.1" /> | |
| <element id="library" level="project" name="Maven: commons-lang:commons-lang:2.6" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" /> | |
| <element id="library" level="project" name="Maven: wsdl4j:wsdl4j:1.6.1" /> | |
| <element id="library" level="project" name="Maven: jaxen:jaxen:1.1-beta-9" /> | |
| <element id="library" level="project" name="Maven: xerces:xmlParserAPIs:2.6.2" /> | |
| <element id="library" level="project" name="Maven: xerces:xercesImpl:2.6.2" /> | |
| <element id="library" level="project" name="Maven: stax:stax-api:1.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.ws.commons:XmlSchema:1.1" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" /> | |
| <element id="library" level="project" name="Maven: jdom:jdom:1.0" /> | |
| <element id="library" level="project" name="Maven: commons-httpclient:commons-httpclient:3.0" /> | |
| <element id="library" level="project" name="Maven: dom4j:dom4j:1.6" /> | |
| <element id="library" level="project" name="Maven: xml-apis:xml-apis:1.0.b2" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" /> | |
| <element id="library" level="project" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" /> | |
| <element id="library" level="project" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" /> | |
| </element> | |
| </element> | |
| <element id="directory" name="META-INF"> | |
| <element id="file-copy" path="$PROJECT_DIR$/jk28_domain/target/jk28_parent/META-INF/MANIFEST.MF" /> | |
| </element> | |
| <element id="javaee-facet-resources" facet="jk28_domain/web/Web" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="war" name="jk28_exception:war"> | |
| <output-path>$PROJECT_DIR$/jk28_exception/target</output-path> | |
| <root id="archive" name="jk28_exception.war"> | |
| <element id="artifact" artifact-name="jk28_exception:war exploded" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="exploded-war" name="jk28_exception:war exploded"> | |
| <output-path>$PROJECT_DIR$/jk28_exception/target/jk28_exception</output-path> | |
| <root id="root"> | |
| <element id="directory" name="WEB-INF"> | |
| <element id="directory" name="classes"> | |
| <element id="module-output" name="jk28_exception" /> | |
| </element> | |
| <element id="directory" name="lib"> | |
| <element id="library" level="project" name="Maven: org.apache.httpcomponents:httpclient:4.4" /> | |
| <element id="library" level="project" name="Maven: org.apache.httpcomponents:httpcore:4.4" /> | |
| <element id="library" level="project" name="Maven: commons-logging:commons-logging:1.2" /> | |
| <element id="library" level="project" name="Maven: commons-codec:commons-codec:1.9" /> | |
| <element id="library" level="project" name="Maven: com.alibaba:fastjson:1.1.37" /> | |
| <element id="library" level="project" name="Maven: commons-beanutils:commons-beanutils:1.9.1" /> | |
| <element id="library" level="project" name="Maven: commons-collections:commons-collections:3.2.1" /> | |
| <element id="library" level="project" name="Maven: org.quartz-scheduler:quartz:2.2.1" /> | |
| <element id="library" level="project" name="Maven: commons-fileupload:commons-fileupload:1.3.1" /> | |
| <element id="library" level="project" name="Maven: commons-io:commons-io:2.2" /> | |
| <element id="library" level="project" name="Maven: jstl:jstl:1.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.shiro:shiro-all:1.2.3" /> | |
| <element id="library" level="project" name="Maven: org.aspectj:aspectjweaver:1.6.8" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: aopalliance:aopalliance:1.0" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-core:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" /> | |
| <element id="library" level="project" name="Maven: asm:asm-commons:3.3" /> | |
| <element id="library" level="project" name="Maven: asm:asm-tree:3.3" /> | |
| <element id="library" level="project" name="Maven: org.freemarker:freemarker:2.3.22" /> | |
| <element id="library" level="project" name="Maven: ognl:ognl:3.0.6" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.commons:commons-lang3:3.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" /> | |
| <element id="library" level="project" name="Maven: org.javassist:javassist:3.18.1-GA" /> | |
| <element id="library" level="project" name="Maven: antlr:antlr:2.7.7" /> | |
| <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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" /> | |
| <element id="library" level="project" name="Maven: javax.validation:validation-api:1.1.0.Final" /> | |
| <element id="library" level="project" name="Maven: com.fasterxml:classmate:1.1.0" /> | |
| <element id="library" level="project" name="Maven: c3p0:c3p0:0.9.1.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" /> | |
| <element id="library" level="project" name="Maven: xml-resolver:xml-resolver:1.2" /> | |
| <element id="library" level="project" name="Maven: asm:asm:3.3.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-core:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" /> | |
| <element id="library" level="project" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" /> | |
| <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" /> | |
| <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.neethi:neethi:3.0.3" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" /> | |
| <element id="library" level="project" name="Maven: log4j:log4j:1.2.12" /> | |
| <element id="library" level="project" name="Maven: org.slf4j:slf4j-api:1.6.6" /> | |
| <element id="library" level="project" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" /> | |
| <element id="library" level="project" name="Maven: javax.mail:mail:1.4.4" /> | |
| <element id="library" level="project" name="Maven: javax.activation:activation:1.1" /> | |
| <element id="library" level="project" name="Maven: commons-lang:commons-lang:2.6" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" /> | |
| <element id="library" level="project" name="Maven: wsdl4j:wsdl4j:1.6.1" /> | |
| <element id="library" level="project" name="Maven: jaxen:jaxen:1.1-beta-9" /> | |
| <element id="library" level="project" name="Maven: xerces:xmlParserAPIs:2.6.2" /> | |
| <element id="library" level="project" name="Maven: xerces:xercesImpl:2.6.2" /> | |
| <element id="library" level="project" name="Maven: stax:stax-api:1.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.ws.commons:XmlSchema:1.1" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" /> | |
| <element id="library" level="project" name="Maven: jdom:jdom:1.0" /> | |
| <element id="library" level="project" name="Maven: commons-httpclient:commons-httpclient:3.0" /> | |
| <element id="library" level="project" name="Maven: dom4j:dom4j:1.6" /> | |
| <element id="library" level="project" name="Maven: xml-apis:xml-apis:1.0.b2" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" /> | |
| <element id="library" level="project" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" /> | |
| <element id="library" level="project" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" /> | |
| </element> | |
| </element> | |
| <element id="directory" name="META-INF"> | |
| <element id="file-copy" path="$PROJECT_DIR$/jk28_exception/target/jk28_exception/META-INF/MANIFEST.MF" /> | |
| </element> | |
| <element id="javaee-facet-resources" facet="jk28_exception/web/Web" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="war" name="jk28_service:war"> | |
| <output-path>$PROJECT_DIR$/jk28_service/target</output-path> | |
| <root id="archive" name="jk28_parent.war"> | |
| <element id="artifact" artifact-name="jk28_service:war exploded" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="exploded-war" name="jk28_service:war exploded"> | |
| <output-path>$PROJECT_DIR$/jk28_service/target/jk28_parent</output-path> | |
| <root id="root"> | |
| <element id="directory" name="WEB-INF"> | |
| <element id="directory" name="classes"> | |
| <element id="module-output" name="jk28_service" /> | |
| </element> | |
| </element> | |
| <element id="directory" name="META-INF"> | |
| <element id="file-copy" path="$PROJECT_DIR$/jk28_service/target/jk28_parent/META-INF/MANIFEST.MF" /> | |
| </element> | |
| <element id="javaee-facet-resources" facet="jk28_service/web/Web" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="war" name="jk28_utils:war"> | |
| <output-path>$PROJECT_DIR$/jk28_utils/target</output-path> | |
| <root id="archive" name="jk28_utils.war"> | |
| <element id="artifact" artifact-name="jk28_utils:war exploded" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="exploded-war" name="jk28_utils:war exploded"> | |
| <output-path>$PROJECT_DIR$/jk28_utils/target/jk28_utils</output-path> | |
| <root id="root"> | |
| <element id="directory" name="WEB-INF"> | |
| <element id="directory" name="classes"> | |
| <element id="module-output" name="jk28_utils" /> | |
| </element> | |
| <element id="directory" name="lib"> | |
| <element id="library" level="project" name="Maven: org.apache.httpcomponents:httpclient:4.4" /> | |
| <element id="library" level="project" name="Maven: org.apache.httpcomponents:httpcore:4.4" /> | |
| <element id="library" level="project" name="Maven: commons-logging:commons-logging:1.2" /> | |
| <element id="library" level="project" name="Maven: commons-codec:commons-codec:1.9" /> | |
| <element id="library" level="project" name="Maven: com.alibaba:fastjson:1.1.37" /> | |
| <element id="library" level="project" name="Maven: commons-beanutils:commons-beanutils:1.9.1" /> | |
| <element id="library" level="project" name="Maven: commons-collections:commons-collections:3.2.1" /> | |
| <element id="library" level="project" name="Maven: org.quartz-scheduler:quartz:2.2.1" /> | |
| <element id="library" level="project" name="Maven: commons-fileupload:commons-fileupload:1.3.1" /> | |
| <element id="library" level="project" name="Maven: commons-io:commons-io:2.2" /> | |
| <element id="library" level="project" name="Maven: jstl:jstl:1.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.shiro:shiro-all:1.2.3" /> | |
| <element id="library" level="project" name="Maven: org.aspectj:aspectjweaver:1.6.8" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: aopalliance:aopalliance:1.0" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-core:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" /> | |
| <element id="library" level="project" name="Maven: asm:asm-commons:3.3" /> | |
| <element id="library" level="project" name="Maven: asm:asm-tree:3.3" /> | |
| <element id="library" level="project" name="Maven: org.freemarker:freemarker:2.3.22" /> | |
| <element id="library" level="project" name="Maven: ognl:ognl:3.0.6" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.commons:commons-lang3:3.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" /> | |
| <element id="library" level="project" name="Maven: org.javassist:javassist:3.18.1-GA" /> | |
| <element id="library" level="project" name="Maven: antlr:antlr:2.7.7" /> | |
| <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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" /> | |
| <element id="library" level="project" name="Maven: javax.validation:validation-api:1.1.0.Final" /> | |
| <element id="library" level="project" name="Maven: com.fasterxml:classmate:1.1.0" /> | |
| <element id="library" level="project" name="Maven: c3p0:c3p0:0.9.1.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" /> | |
| <element id="library" level="project" name="Maven: xml-resolver:xml-resolver:1.2" /> | |
| <element id="library" level="project" name="Maven: asm:asm:3.3.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-core:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" /> | |
| <element id="library" level="project" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" /> | |
| <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" /> | |
| <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.neethi:neethi:3.0.3" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" /> | |
| <element id="library" level="project" name="Maven: log4j:log4j:1.2.12" /> | |
| <element id="library" level="project" name="Maven: org.slf4j:slf4j-api:1.6.6" /> | |
| <element id="library" level="project" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" /> | |
| <element id="library" level="project" name="Maven: javax.mail:mail:1.4.4" /> | |
| <element id="library" level="project" name="Maven: javax.activation:activation:1.1" /> | |
| <element id="library" level="project" name="Maven: commons-lang:commons-lang:2.6" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" /> | |
| <element id="library" level="project" name="Maven: wsdl4j:wsdl4j:1.6.1" /> | |
| <element id="library" level="project" name="Maven: jaxen:jaxen:1.1-beta-9" /> | |
| <element id="library" level="project" name="Maven: xerces:xmlParserAPIs:2.6.2" /> | |
| <element id="library" level="project" name="Maven: xerces:xercesImpl:2.6.2" /> | |
| <element id="library" level="project" name="Maven: stax:stax-api:1.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.ws.commons:XmlSchema:1.1" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" /> | |
| <element id="library" level="project" name="Maven: jdom:jdom:1.0" /> | |
| <element id="library" level="project" name="Maven: commons-httpclient:commons-httpclient:3.0" /> | |
| <element id="library" level="project" name="Maven: dom4j:dom4j:1.6" /> | |
| <element id="library" level="project" name="Maven: xml-apis:xml-apis:1.0.b2" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" /> | |
| <element id="library" level="project" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" /> | |
| <element id="library" level="project" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" /> | |
| </element> | |
| </element> | |
| <element id="directory" name="META-INF"> | |
| <element id="file-copy" path="$PROJECT_DIR$/jk28_utils/target/jk28_utils/META-INF/MANIFEST.MF" /> | |
| </element> | |
| <element id="javaee-facet-resources" facet="jk28_utils/web/Web" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="war" name="jk28_web:war"> | |
| <output-path>$PROJECT_DIR$/jk28_web/target</output-path> | |
| <root id="archive" name="jk28_parent.war"> | |
| <element id="artifact" artifact-name="jk28_web:war exploded" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <component name="ArtifactManager"> | |
| <artifact type="exploded-war" name="jk28_web:war exploded"> | |
| <output-path>$PROJECT_DIR$/jk28_web/target/jk28_parent</output-path> | |
| <root id="root"> | |
| <element id="directory" name="WEB-INF"> | |
| <element id="directory" name="classes"> | |
| <element id="module-output" name="jk28_web" /> | |
| </element> | |
| <element id="directory" name="lib"> | |
| <element id="archive" name="jk28_service-0.0.1-SNAPSHOT.jar"> | |
| <element id="module-output" name="jk28_service" /> | |
| </element> | |
| <element id="archive" name="jk28_dao-0.0.1-SNAPSHOT.jar"> | |
| <element id="module-output" name="jk28_dao" /> | |
| </element> | |
| <element id="archive" name="jk28_utils-0.0.1-SNAPSHOT.jar"> | |
| <element id="module-output" name="jk28_utils" /> | |
| </element> | |
| <element id="archive" name="jk28_domain-0.0.1-SNAPSHOT.jar"> | |
| <element id="module-output" name="jk28_domain" /> | |
| </element> | |
| <element id="archive" name="jk28_exception-0.0.1-SNAPSHOT.jar"> | |
| <element id="module-output" name="jk28_exception" /> | |
| </element> | |
| <element id="library" level="project" name="Maven: org.apache.httpcomponents:httpclient:4.4" /> | |
| <element id="library" level="project" name="Maven: org.apache.httpcomponents:httpcore:4.4" /> | |
| <element id="library" level="project" name="Maven: commons-logging:commons-logging:1.2" /> | |
| <element id="library" level="project" name="Maven: commons-codec:commons-codec:1.9" /> | |
| <element id="library" level="project" name="Maven: com.alibaba:fastjson:1.1.37" /> | |
| <element id="library" level="project" name="Maven: commons-beanutils:commons-beanutils:1.9.1" /> | |
| <element id="library" level="project" name="Maven: commons-collections:commons-collections:3.2.1" /> | |
| <element id="library" level="project" name="Maven: org.quartz-scheduler:quartz:2.2.1" /> | |
| <element id="library" level="project" name="Maven: commons-fileupload:commons-fileupload:1.3.1" /> | |
| <element id="library" level="project" name="Maven: commons-io:commons-io:2.2" /> | |
| <element id="library" level="project" name="Maven: jstl:jstl:1.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.shiro:shiro-all:1.2.3" /> | |
| <element id="library" level="project" name="Maven: org.aspectj:aspectjweaver:1.6.8" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: aopalliance:aopalliance:1.0" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-core:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" /> | |
| <element id="library" level="project" name="Maven: asm:asm-commons:3.3" /> | |
| <element id="library" level="project" name="Maven: asm:asm-tree:3.3" /> | |
| <element id="library" level="project" name="Maven: org.freemarker:freemarker:2.3.22" /> | |
| <element id="library" level="project" name="Maven: ognl:ognl:3.0.6" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.commons:commons-lang3:3.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" /> | |
| <element id="library" level="project" name="Maven: org.javassist:javassist:3.18.1-GA" /> | |
| <element id="library" level="project" name="Maven: antlr:antlr:2.7.7" /> | |
| <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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" /> | |
| <element id="library" level="project" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" /> | |
| <element id="library" level="project" name="Maven: javax.validation:validation-api:1.1.0.Final" /> | |
| <element id="library" level="project" name="Maven: com.fasterxml:classmate:1.1.0" /> | |
| <element id="library" level="project" name="Maven: c3p0:c3p0:0.9.1.2" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" /> | |
| <element id="library" level="project" name="Maven: xml-resolver:xml-resolver:1.2" /> | |
| <element id="library" level="project" name="Maven: asm:asm:3.3.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-core:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" /> | |
| <element id="library" level="project" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" /> | |
| <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" /> | |
| <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.neethi:neethi:3.0.3" /> | |
| <element id="library" level="project" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" /> | |
| <element id="library" level="project" name="Maven: log4j:log4j:1.2.12" /> | |
| <element id="library" level="project" name="Maven: org.slf4j:slf4j-api:1.6.6" /> | |
| <element id="library" level="project" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" /> | |
| <element id="library" level="project" name="Maven: javax.mail:mail:1.4.4" /> | |
| <element id="library" level="project" name="Maven: javax.activation:activation:1.1" /> | |
| <element id="library" level="project" name="Maven: commons-lang:commons-lang:2.6" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" /> | |
| <element id="library" level="project" name="Maven: wsdl4j:wsdl4j:1.6.1" /> | |
| <element id="library" level="project" name="Maven: jaxen:jaxen:1.1-beta-9" /> | |
| <element id="library" level="project" name="Maven: xerces:xmlParserAPIs:2.6.2" /> | |
| <element id="library" level="project" name="Maven: xerces:xercesImpl:2.6.2" /> | |
| <element id="library" level="project" name="Maven: stax:stax-api:1.0.1" /> | |
| <element id="library" level="project" name="Maven: org.apache.ws.commons:XmlSchema:1.1" /> | |
| <element id="library" level="project" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" /> | |
| <element id="library" level="project" name="Maven: jdom:jdom:1.0" /> | |
| <element id="library" level="project" name="Maven: commons-httpclient:commons-httpclient:3.0" /> | |
| <element id="library" level="project" name="Maven: dom4j:dom4j:1.6" /> | |
| <element id="library" level="project" name="Maven: xml-apis:xml-apis:1.0.b2" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" /> | |
| <element id="library" level="project" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" /> | |
| <element id="library" level="project" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" /> | |
| <element id="library" level="project" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" /> | |
| </element> | |
| </element> | |
| <element id="directory" name="META-INF"> | |
| <element id="file-copy" path="$PROJECT_DIR$/jk28_web/target/jk28_parent/META-INF/MANIFEST.MF" /> | |
| </element> | |
| <element id="javaee-facet-resources" facet="jk28_web/web/Web" /> | |
| </root> | |
| </artifact> | |
| </component> |
| <?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="jk28_dao" /> | |
| <module name="jk28_domain" /> | |
| <module name="jk28_exception" /> | |
| <module name="jk28_service" /> | |
| <module name="jk28_utils" /> | |
| <module name="jk28_web" /> | |
| </profile> | |
| </annotationProcessing> | |
| <bytecodeTargetLevel> | |
| <module name="jk28_dao" target="1.7" /> | |
| <module name="jk28_domain" target="1.7" /> | |
| <module name="jk28_exception" target="1.7" /> | |
| <module name="jk28_parent" target="1.5" /> | |
| <module name="jk28_service" target="1.7" /> | |
| <module name="jk28_utils" target="1.7" /> | |
| <module name="jk28_web" target="1.7" /> | |
| </bytecodeTargetLevel> | |
| </component> | |
| </project> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <project version="4"> | |
| <component name="Encoding"> | |
| <file url="file://$PROJECT_DIR$/jk28_dao" charset="UTF-8" /> | |
| <file url="file://$PROJECT_DIR$/jk28_domain" charset="UTF-8" /> | |
| <file url="file://$PROJECT_DIR$/jk28_exception" charset="UTF-8" /> | |
| <file url="file://$PROJECT_DIR$/jk28_service" charset="UTF-8" /> | |
| <file url="file://$PROJECT_DIR$/jk28_utils" charset="UTF-8" /> | |
| <file url="file://$PROJECT_DIR$/jk28_web" charset="UTF-8" /> | |
| </component> | |
| </project> |
| <component name="InspectionProjectProfileManager"> | |
| <profile version="1.0"> | |
| <option name="myName" value="Project Default" /> | |
| <inspection_tool class="SpringFacetInspection" enabled="false" level="WARNING" enabled_by_default="false"> | |
| <option name="checkTestFiles" value="false" /> | |
| </inspection_tool> | |
| </profile> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: antlr:antlr:2.7.7"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/antlr/antlr/2.7.7/antlr-2.7.7.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/antlr/antlr/2.7.7/antlr-2.7.7-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/antlr/antlr/2.7.7/antlr-2.7.7-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: aopalliance:aopalliance:1.0"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/aopalliance/aopalliance/1.0/aopalliance-1.0.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/aopalliance/aopalliance/1.0/aopalliance-1.0-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/aopalliance/aopalliance/1.0/aopalliance-1.0-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: asm:asm:3.3.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/asm/asm/3.3.1/asm-3.3.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/asm/asm/3.3.1/asm-3.3.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/asm/asm/3.3.1/asm-3.3.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: asm:asm-commons:3.3"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/asm/asm-commons/3.3/asm-commons-3.3.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/asm/asm-commons/3.3/asm-commons-3.3-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/asm/asm-commons/3.3/asm-commons-3.3-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: asm:asm-tree:3.3"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/asm/asm-tree/3.3/asm-tree-3.3.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/asm/asm-tree/3.3/asm-tree-3.3-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/asm/asm-tree/3.3/asm-tree-3.3-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: c3p0:c3p0:0.9.1.2"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/c3p0/c3p0/0.9.1.2/c3p0-0.9.1.2.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/c3p0/c3p0/0.9.1.2/c3p0-0.9.1.2-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/c3p0/c3p0/0.9.1.2/c3p0-0.9.1.2-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: com.alibaba:fastjson:1.1.37"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.1.37/fastjson-1.1.37.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.1.37/fastjson-1.1.37-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/alibaba/fastjson/1.1.37/fastjson-1.1.37-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: com.fasterxml:classmate:1.1.0"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/classmate/1.1.0/classmate-1.1.0.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/classmate/1.1.0/classmate-1.1.0-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/fasterxml/classmate/1.1.0/classmate-1.1.0-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: com.oracle:ojdbc14:10.2.0.4.0"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/oracle/ojdbc14/10.2.0.4.0/ojdbc14-10.2.0.4.0.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/oracle/ojdbc14/10.2.0.4.0/ojdbc14-10.2.0.4.0-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/oracle/ojdbc14/10.2.0.4.0/ojdbc14-10.2.0.4.0-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/sun/xml/bind/jaxb-core/2.2.10-b140310.1920/jaxb-core-2.2.10-b140310.1920.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/sun/xml/bind/jaxb-core/2.2.10-b140310.1920/jaxb-core-2.2.10-b140310.1920-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/sun/xml/bind/jaxb-core/2.2.10-b140310.1920/jaxb-core-2.2.10-b140310.1920-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/sun/xml/bind/jaxb-impl/2.2.10-b140310.1920/jaxb-impl-2.2.10-b140310.1920.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/sun/xml/bind/jaxb-impl/2.2.10-b140310.1920/jaxb-impl-2.2.10-b140310.1920-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/com/sun/xml/bind/jaxb-impl/2.2.10-b140310.1920/jaxb-impl-2.2.10-b140310.1920-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: commons-beanutils:commons-beanutils:1.9.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-beanutils/commons-beanutils/1.9.1/commons-beanutils-1.9.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-beanutils/commons-beanutils/1.9.1/commons-beanutils-1.9.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-beanutils/commons-beanutils/1.9.1/commons-beanutils-1.9.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: commons-codec:commons-codec:1.9"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-codec/commons-codec/1.9/commons-codec-1.9.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-codec/commons-codec/1.9/commons-codec-1.9-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-codec/commons-codec/1.9/commons-codec-1.9-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: commons-collections:commons-collections:3.2.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: commons-fileupload:commons-fileupload:1.3.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-fileupload/commons-fileupload/1.3.1/commons-fileupload-1.3.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-fileupload/commons-fileupload/1.3.1/commons-fileupload-1.3.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-fileupload/commons-fileupload/1.3.1/commons-fileupload-1.3.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: commons-httpclient:commons-httpclient:3.0"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-httpclient/commons-httpclient/3.0/commons-httpclient-3.0.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-httpclient/commons-httpclient/3.0/commons-httpclient-3.0-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-httpclient/commons-httpclient/3.0/commons-httpclient-3.0-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: commons-io:commons-io:2.2"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.2/commons-io-2.2.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.2/commons-io-2.2-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.2/commons-io-2.2-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: commons-lang:commons-lang:2.6"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-lang/commons-lang/2.6/commons-lang-2.6.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-lang/commons-lang/2.6/commons-lang-2.6-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-lang/commons-lang/2.6/commons-lang-2.6-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: commons-logging:commons-logging:1.2"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-logging/commons-logging/1.2/commons-logging-1.2.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-logging/commons-logging/1.2/commons-logging-1.2-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/commons-logging/commons-logging/1.2/commons-logging-1.2-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: dom4j:dom4j:1.6"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/dom4j/dom4j/1.6/dom4j-1.6.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/dom4j/dom4j/1.6/dom4j-1.6-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/dom4j/dom4j/1.6/dom4j-1.6-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: javax.activation:activation:1.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/activation/activation/1.1/activation-1.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/activation/activation/1.1/activation-1.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/activation/activation/1.1/activation-1.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: javax.mail:mail:1.4.4"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/mail/mail/1.4.4/mail-1.4.4.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/mail/mail/1.4.4/mail-1.4.4-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/mail/mail/1.4.4/mail-1.4.4-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: javax.servlet.jsp:jsp-api:2.0"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/servlet/jsp/jsp-api/2.0/jsp-api-2.0.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/servlet/jsp/jsp-api/2.0/jsp-api-2.0-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/servlet/jsp/jsp-api/2.0/jsp-api-2.0-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: javax.servlet:servlet-api:2.5"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/servlet/servlet-api/2.5/servlet-api-2.5-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/servlet/servlet-api/2.5/servlet-api-2.5-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: javax.validation:validation-api:1.1.0.Final"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: jaxen:jaxen:1.1-beta-9"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/jaxen/jaxen/1.1-beta-9/jaxen-1.1-beta-9.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/jaxen/jaxen/1.1-beta-9/jaxen-1.1-beta-9-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/jaxen/jaxen/1.1-beta-9/jaxen-1.1-beta-9-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: jdom:jdom:1.0"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/jdom/jdom/1.0/jdom-1.0.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/jdom/jdom/1.0/jdom-1.0-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/jdom/jdom/1.0/jdom-1.0-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: jstl:jstl:1.2"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/jstl/jstl/1.2/jstl-1.2.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/jstl/jstl/1.2/jstl-1.2-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/jstl/jstl/1.2/jstl-1.2-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: junit:junit:3.8.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/junit/junit/3.8.1/junit-3.8.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/junit/junit/3.8.1/junit-3.8.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/junit/junit/3.8.1/junit-3.8.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: junit:junit:4.11"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.11/junit-4.11.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.11/junit-4.11-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.11/junit-4.11-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: log4j:log4j:1.2.12"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/log4j/log4j/1.2.12/log4j-1.2.12.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/log4j/log4j/1.2.12/log4j-1.2.12-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/log4j/log4j/1.2.12/log4j-1.2.12-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: net.sf.ehcache:ehcache-core:2.6.6"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/net/sf/ehcache/ehcache-core/2.6.6/ehcache-core-2.6.6.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/net/sf/ehcache/ehcache-core/2.6.6/ehcache-core-2.6.6-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/net/sf/ehcache/ehcache-core/2.6.6/ehcache-core-2.6.6-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: ognl:ognl:3.0.6"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/ognl/ognl/3.0.6/ognl-3.0.6.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/ognl/ognl/3.0.6/ognl-3.0.6-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/ognl/ognl/3.0.6/ognl-3.0.6-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.commons:commons-lang3:3.2"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/commons/commons-lang3/3.2/commons-lang3-3.2.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/commons/commons-lang3/3.2/commons-lang3-3.2-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/commons/commons-lang3/3.2/commons-lang3-3.2-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.cxf:cxf-core:3.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-core/3.0.1/cxf-core-3.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-core/3.0.1/cxf-core-3.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-core/3.0.1/cxf-core-3.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-bindings-soap/3.0.1/cxf-rt-bindings-soap-3.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-bindings-soap/3.0.1/cxf-rt-bindings-soap-3.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-bindings-soap/3.0.1/cxf-rt-bindings-soap-3.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-bindings-xml/3.0.1/cxf-rt-bindings-xml-3.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-bindings-xml/3.0.1/cxf-rt-bindings-xml-3.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-bindings-xml/3.0.1/cxf-rt-bindings-xml-3.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-databinding-jaxb/3.0.1/cxf-rt-databinding-jaxb-3.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-databinding-jaxb/3.0.1/cxf-rt-databinding-jaxb-3.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-databinding-jaxb/3.0.1/cxf-rt-databinding-jaxb-3.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-frontend-jaxws/3.0.1/cxf-rt-frontend-jaxws-3.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-frontend-jaxws/3.0.1/cxf-rt-frontend-jaxws-3.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-frontend-jaxws/3.0.1/cxf-rt-frontend-jaxws-3.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-frontend-simple/3.0.1/cxf-rt-frontend-simple-3.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-frontend-simple/3.0.1/cxf-rt-frontend-simple-3.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-frontend-simple/3.0.1/cxf-rt-frontend-simple-3.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-transports-http/3.0.1/cxf-rt-transports-http-3.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-transports-http/3.0.1/cxf-rt-transports-http-3.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-transports-http/3.0.1/cxf-rt-transports-http-3.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-ws-addr/3.0.1/cxf-rt-ws-addr-3.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-ws-addr/3.0.1/cxf-rt-ws-addr-3.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-ws-addr/3.0.1/cxf-rt-ws-addr-3.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-ws-policy/3.0.1/cxf-rt-ws-policy-3.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-ws-policy/3.0.1/cxf-rt-ws-policy-3.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-ws-policy/3.0.1/cxf-rt-ws-policy-3.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-wsdl/3.0.1/cxf-rt-wsdl-3.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-wsdl/3.0.1/cxf-rt-wsdl-3.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/cxf/cxf-rt-wsdl/3.0.1/cxf-rt-wsdl-3.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.geronimo.specs:geronimo-jta_1.1_spec:1.1.1"> | |
| <CLASSES> | |
| <root url="jar://$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://$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://$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> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.httpcomponents:httpclient:4.4"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpclient/4.4/httpclient-4.4.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpclient/4.4/httpclient-4.4-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpclient/4.4/httpclient-4.4-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.httpcomponents:httpcore:4.4"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpcore/4.4/httpcore-4.4.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpcore/4.4/httpcore-4.4-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/httpcomponents/httpcore/4.4/httpcore-4.4-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.neethi:neethi:3.0.3"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/neethi/neethi/3.0.3/neethi-3.0.3.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/neethi/neethi/3.0.3/neethi-3.0.3-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/neethi/neethi/3.0.3/neethi-3.0.3-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.poi:poi:3.11"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/poi/poi/3.11/poi-3.11.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/poi/poi/3.11/poi-3.11-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/poi/poi/3.11/poi-3.11-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.poi:poi-ooxml:3.11"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/poi/poi-ooxml/3.11/poi-ooxml-3.11.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/poi/poi-ooxml/3.11/poi-ooxml-3.11-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/poi/poi-ooxml/3.11/poi-ooxml-3.11-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.poi:poi-ooxml-schemas:3.11"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/poi/poi-ooxml-schemas/3.11/poi-ooxml-schemas-3.11.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/poi/poi-ooxml-schemas/3.11/poi-ooxml-schemas-3.11-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/poi/poi-ooxml-schemas/3.11/poi-ooxml-schemas-3.11-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.shiro:shiro-all:1.2.3"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/shiro/shiro-all/1.2.3/shiro-all-1.2.3.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/shiro/shiro-all/1.2.3/shiro-all-1.2.3-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/shiro/shiro-all/1.2.3/shiro-all-1.2.3-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-convention-plugin/2.3.24/struts2-convention-plugin-2.3.24.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-convention-plugin/2.3.24/struts2-convention-plugin-2.3.24-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-convention-plugin/2.3.24/struts2-convention-plugin-2.3.24-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.struts:struts2-core:2.3.24"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-core/2.3.24/struts2-core-2.3.24.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-core/2.3.24/struts2-core-2.3.24-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-core/2.3.24/struts2-core-2.3.24-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.struts:struts2-json-plugin:2.3.24"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-json-plugin/2.3.24/struts2-json-plugin-2.3.24.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-json-plugin/2.3.24/struts2-json-plugin-2.3.24-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-json-plugin/2.3.24/struts2-json-plugin-2.3.24-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-spring-plugin/2.3.24/struts2-spring-plugin-2.3.24.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-spring-plugin/2.3.24/struts2-spring-plugin-2.3.24-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/struts2-spring-plugin/2.3.24/struts2-spring-plugin-2.3.24-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.struts.xwork:xwork-core:2.3.24"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/xwork/xwork-core/2.3.24/xwork-core-2.3.24.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/xwork/xwork-core/2.3.24/xwork-core-2.3.24-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/struts/xwork/xwork-core/2.3.24/xwork-core-2.3.24-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.ws.commons:XmlSchema:1.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/ws/commons/XmlSchema/1.1/XmlSchema-1.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/ws/commons/XmlSchema/1.1/XmlSchema-1.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/ws/commons/XmlSchema/1.1/XmlSchema-1.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/ws/xmlschema/xmlschema-core/2.1.0/xmlschema-core-2.1.0.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/ws/xmlschema/xmlschema-core/2.1.0/xmlschema-core-2.1.0-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/ws/xmlschema/xmlschema-core/2.1.0/xmlschema-core-2.1.0-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/xmlbeans/xmlbeans/2.6.0/xmlbeans-2.6.0.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/xmlbeans/xmlbeans/2.6.0/xmlbeans-2.6.0-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/apache/xmlbeans/xmlbeans/2.6.0/xmlbeans-2.6.0-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.aspectj:aspectjweaver:1.6.8"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/aspectj/aspectjweaver/1.6.8/aspectjweaver-1.6.8.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/aspectj/aspectjweaver/1.6.8/aspectjweaver-1.6.8-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/aspectj/aspectjweaver/1.6.8/aspectjweaver-1.6.8-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.codehaus.woodstox:stax2-api:3.1.4"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/woodstox/stax2-api/3.1.4/stax2-api-3.1.4.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/woodstox/stax2-api/3.1.4/stax2-api-3.1.4-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/woodstox/stax2-api/3.1.4/stax2-api-3.1.4-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/woodstox/woodstox-core-asl/4.4.0/woodstox-core-asl-4.4.0.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/woodstox/woodstox-core-asl/4.4.0/woodstox-core-asl-4.4.0-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/woodstox/woodstox-core-asl/4.4.0/woodstox-core-asl-4.4.0-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/woodstox/wstx-asl/3.2.0/wstx-asl-3.2.0.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/woodstox/wstx-asl/3.2.0/wstx-asl-3.2.0-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/woodstox/wstx-asl/3.2.0/wstx-asl-3.2.0-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.codehaus.xfire:xfire-core:1.2.6"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/xfire/xfire-core/1.2.6/xfire-core-1.2.6.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/xfire/xfire-core/1.2.6/xfire-core-1.2.6-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/codehaus/xfire/xfire-core/1.2.6/xfire-core-1.2.6-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.freemarker:freemarker:2.3.22"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/freemarker/freemarker/2.3.22/freemarker-2.3.22.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/freemarker/freemarker/2.3.22/freemarker-2.3.22-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/freemarker/freemarker/2.3.22/freemarker-2.3.22-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.hamcrest:hamcrest-core:1.3"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final"> | |
| <CLASSES> | |
| <root url="jar://$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://$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://$MAVEN_REPOSITORY$/org/hibernate/common/hibernate-commons-annotations/5.0.1.Final/hibernate-commons-annotations-5.0.1.Final-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.hibernate:hibernate-core:5.0.7.Final"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-core/5.0.7.Final/hibernate-core-5.0.7.Final.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-core/5.0.7.Final/hibernate-core-5.0.7.Final-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-core/5.0.7.Final/hibernate-core-5.0.7.Final-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-entitymanager/5.0.7.Final/hibernate-entitymanager-5.0.7.Final.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-entitymanager/5.0.7.Final/hibernate-entitymanager-5.0.7.Final-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-entitymanager/5.0.7.Final/hibernate-entitymanager-5.0.7.Final-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.hibernate:hibernate-validator:5.2.1.Final"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-validator/5.2.1.Final/hibernate-validator-5.2.1.Final.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-validator/5.2.1.Final/hibernate-validator-5.2.1.Final-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/hibernate/hibernate-validator/5.2.1.Final/hibernate-validator-5.2.1.Final-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final"> | |
| <CLASSES> | |
| <root url="jar://$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://$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://$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> |
| <component name="libraryTable"> | |
| <library name="Maven: org.javassist:javassist:3.18.1-GA"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.18.1-GA/javassist-3.18.1-GA.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.18.1-GA/javassist-3.18.1-GA-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.18.1-GA/javassist-3.18.1-GA-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.jboss:jandex:2.0.0.Final"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/jboss/jandex/2.0.0.Final/jandex-2.0.0.Final.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/jboss/jandex/2.0.0.Final/jandex-2.0.0.Final-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/jboss/jandex/2.0.0.Final/jandex-2.0.0.Final-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.jboss.logging:jboss-logging:3.3.0.Final"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.quartz-scheduler:quartz:2.2.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/quartz-scheduler/quartz/2.2.1/quartz-2.2.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/quartz-scheduler/quartz/2.2.1/quartz-2.2.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/quartz-scheduler/quartz/2.2.1/quartz-2.2.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.slf4j:slf4j-api:1.6.6"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-api/1.6.6/slf4j-api-1.6.6-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.slf4j:slf4j-log4j12:1.6.6"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-log4j12/1.6.6/slf4j-log4j12-1.6.6.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-log4j12/1.6.6/slf4j-log4j12-1.6.6-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/slf4j/slf4j-log4j12/1.6.6/slf4j-log4j12-1.6.6-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.springframework:spring-aop:4.2.4.RELEASE"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-aop/4.2.4.RELEASE/spring-aop-4.2.4.RELEASE.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-aop/4.2.4.RELEASE/spring-aop-4.2.4.RELEASE-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-aop/4.2.4.RELEASE/spring-aop-4.2.4.RELEASE-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.springframework:spring-beans:4.2.4.RELEASE"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-beans/4.2.4.RELEASE/spring-beans-4.2.4.RELEASE.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-beans/4.2.4.RELEASE/spring-beans-4.2.4.RELEASE-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-beans/4.2.4.RELEASE/spring-beans-4.2.4.RELEASE-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.springframework:spring-context:4.2.4.RELEASE"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context/4.2.4.RELEASE/spring-context-4.2.4.RELEASE.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context/4.2.4.RELEASE/spring-context-4.2.4.RELEASE-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context/4.2.4.RELEASE/spring-context-4.2.4.RELEASE-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context-support/4.2.4.RELEASE/spring-context-support-4.2.4.RELEASE.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context-support/4.2.4.RELEASE/spring-context-support-4.2.4.RELEASE-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-context-support/4.2.4.RELEASE/spring-context-support-4.2.4.RELEASE-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.springframework:spring-core:4.2.4.RELEASE"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-core/4.2.4.RELEASE/spring-core-4.2.4.RELEASE.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-core/4.2.4.RELEASE/spring-core-4.2.4.RELEASE-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-core/4.2.4.RELEASE/spring-core-4.2.4.RELEASE-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.springframework:spring-expression:4.2.4.RELEASE"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-expression/4.2.4.RELEASE/spring-expression-4.2.4.RELEASE.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-expression/4.2.4.RELEASE/spring-expression-4.2.4.RELEASE-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-expression/4.2.4.RELEASE/spring-expression-4.2.4.RELEASE-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-jdbc/4.2.4.RELEASE/spring-jdbc-4.2.4.RELEASE.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-jdbc/4.2.4.RELEASE/spring-jdbc-4.2.4.RELEASE-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-jdbc/4.2.4.RELEASE/spring-jdbc-4.2.4.RELEASE-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.springframework:spring-orm:4.2.4.RELEASE"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-orm/4.2.4.RELEASE/spring-orm-4.2.4.RELEASE.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-orm/4.2.4.RELEASE/spring-orm-4.2.4.RELEASE-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-orm/4.2.4.RELEASE/spring-orm-4.2.4.RELEASE-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.springframework:spring-tx:4.2.4.RELEASE"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-tx/4.2.4.RELEASE/spring-tx-4.2.4.RELEASE.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-tx/4.2.4.RELEASE/spring-tx-4.2.4.RELEASE-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-tx/4.2.4.RELEASE/spring-tx-4.2.4.RELEASE-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: org.springframework:spring-web:4.2.4.RELEASE"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-web/4.2.4.RELEASE/spring-web-4.2.4.RELEASE.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-web/4.2.4.RELEASE/spring-web-4.2.4.RELEASE-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/org/springframework/spring-web/4.2.4.RELEASE/spring-web-4.2.4.RELEASE-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: stax:stax-api:1.0.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/stax/stax-api/1.0.1/stax-api-1.0.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/stax/stax-api/1.0.1/stax-api-1.0.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/stax/stax-api/1.0.1/stax-api-1.0.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: wsdl4j:wsdl4j:1.6.1"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/wsdl4j/wsdl4j/1.6.1/wsdl4j-1.6.1.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/wsdl4j/wsdl4j/1.6.1/wsdl4j-1.6.1-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/wsdl4j/wsdl4j/1.6.1/wsdl4j-1.6.1-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: xerces:xercesImpl:2.6.2"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/xerces/xercesImpl/2.6.2/xercesImpl-2.6.2.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/xerces/xercesImpl/2.6.2/xercesImpl-2.6.2-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/xerces/xercesImpl/2.6.2/xercesImpl-2.6.2-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: xerces:xmlParserAPIs:2.6.2"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/xerces/xmlParserAPIs/2.6.2/xmlParserAPIs-2.6.2.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/xerces/xmlParserAPIs/2.6.2/xmlParserAPIs-2.6.2-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/xerces/xmlParserAPIs/2.6.2/xmlParserAPIs-2.6.2-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: xml-apis:xml-apis:1.0.b2"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <component name="libraryTable"> | |
| <library name="Maven: xml-resolver:xml-resolver:1.2"> | |
| <CLASSES> | |
| <root url="jar://$MAVEN_REPOSITORY$/xml-resolver/xml-resolver/1.2/xml-resolver-1.2.jar!/" /> | |
| </CLASSES> | |
| <JAVADOC> | |
| <root url="jar://$MAVEN_REPOSITORY$/xml-resolver/xml-resolver/1.2/xml-resolver-1.2-javadoc.jar!/" /> | |
| </JAVADOC> | |
| <SOURCES> | |
| <root url="jar://$MAVEN_REPOSITORY$/xml-resolver/xml-resolver/1.2/xml-resolver-1.2-sources.jar!/" /> | |
| </SOURCES> | |
| </library> | |
| </component> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <project version="4"> | |
| <component name="FrameworkDetectionExcludesConfiguration"> | |
| <file type="web" url="file://$PROJECT_DIR$/jk28_dao" /> | |
| <file type="web" url="file://$PROJECT_DIR$/jk28_domain" /> | |
| <file type="web" url="file://$PROJECT_DIR$/jk28_exception" /> | |
| <file type="web" url="file://$PROJECT_DIR$/jk28_service" /> | |
| <file type="web" url="file://$PROJECT_DIR$/jk28_utils" /> | |
| <file type="web" url="file://$PROJECT_DIR$/jk28_web" /> | |
| </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 (1)" project-jdk-type="JavaSDK"> | |
| <output url="file://$PROJECT_DIR$/out" /> | |
| </component> | |
| </project> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <project version="4"> | |
| <component name="ProjectModuleManager"> | |
| <modules> | |
| <module fileurl="file://$PROJECT_DIR$/jk28_dao/jk28_dao.iml" filepath="$PROJECT_DIR$/jk28_dao/jk28_dao.iml" /> | |
| <module fileurl="file://$PROJECT_DIR$/jk28_domain/jk28_domain.iml" filepath="$PROJECT_DIR$/jk28_domain/jk28_domain.iml" /> | |
| <module fileurl="file://$PROJECT_DIR$/jk28_exception/jk28_exception.iml" filepath="$PROJECT_DIR$/jk28_exception/jk28_exception.iml" /> | |
| <module fileurl="file://$PROJECT_DIR$/jk28_parent.iml" filepath="$PROJECT_DIR$/jk28_parent.iml" /> | |
| <module fileurl="file://$PROJECT_DIR$/jk28_service/jk28_service.iml" filepath="$PROJECT_DIR$/jk28_service/jk28_service.iml" /> | |
| <module fileurl="file://$PROJECT_DIR$/jk28_utils/jk28_utils.iml" filepath="$PROJECT_DIR$/jk28_utils/jk28_utils.iml" /> | |
| <module fileurl="file://$PROJECT_DIR$/jk28_web/jk28_web.iml" filepath="$PROJECT_DIR$/jk28_web/jk28_web.iml" /> | |
| </modules> | |
| </component> | |
| </project> |
| <?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> |
| <?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="Spring" name="Spring"> | |
| <configuration /> | |
| </facet> | |
| <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> | |
| </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" /> | |
| <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> | |
| <excludeFolder url="file://$MODULE_DIR$/target" /> | |
| </content> | |
| <orderEntry type="inheritedJdk" /> | |
| <orderEntry type="sourceFolder" forTests="false" /> | |
| <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.11" level="project" /> | |
| <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" /> | |
| <orderEntry type="module" module-name="jk28_utils" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.9" level="project" /> | |
| <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.1.37" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-io:commons-io:2.2" level="project" /> | |
| <orderEntry type="library" name="Maven: jstl:jstl:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.shiro:shiro-all:1.2.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.6.8" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-commons:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-tree:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.22" level="project" /> | |
| <orderEntry type="library" name="Maven: ognl:ognl:3.0.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.javassist:javassist:3.18.1-GA" level="project" /> | |
| <orderEntry type="library" name="Maven: antlr:antlr:2.7.7" 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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.validation:validation-api:1.1.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: c3p0:c3p0:0.9.1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-resolver:xml-resolver:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm:3.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-core:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.neethi:neethi:3.0.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: log4j:log4j:1.2.12" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.mail:mail:1.4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: wsdl4j:wsdl4j:1.6.1" level="project" /> | |
| <orderEntry type="library" name="Maven: jaxen:jaxen:1.1-beta-9" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xmlParserAPIs:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xercesImpl:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.commons:XmlSchema:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: jdom:jdom:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.0" level="project" /> | |
| <orderEntry type="library" name="Maven: dom4j:dom4j:1.6" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" /> | |
| <orderEntry type="library" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:servlet-api:2.5" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet.jsp:jsp-api:2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" level="project" /> | |
| </component> | |
| </module> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <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"> | |
| <parent> | |
| <artifactId>jk28_parent</artifactId> | |
| <groupId>cn.itcast.jk</groupId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </parent> | |
| <modelVersion>4.0.0</modelVersion> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_dao</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| <packaging>war</packaging> | |
| <name>jk28_dao Maven Webapp</name> | |
| <!-- FIXME change it to the project's website --> | |
| <url>http://www.example.com</url> | |
| <properties> | |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | |
| <maven.compiler.source>1.7</maven.compiler.source> | |
| <maven.compiler.target>1.7</maven.compiler.target> | |
| </properties> | |
| <dependencies> | |
| <dependency> | |
| <groupId>junit</groupId> | |
| <artifactId>junit</artifactId> | |
| <version>4.11</version> | |
| <scope>test</scope> | |
| </dependency> | |
| <dependency> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_utils</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </dependency> | |
| </dependencies> | |
| <build> | |
| <finalName>jk28_dao</finalName> | |
| <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) --> | |
| <plugins> | |
| <plugin> | |
| <artifactId>maven-clean-plugin</artifactId> | |
| <version>3.0.0</version> | |
| </plugin> | |
| <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging --> | |
| <plugin> | |
| <artifactId>maven-resources-plugin</artifactId> | |
| <version>3.0.2</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-compiler-plugin</artifactId> | |
| <version>3.7.0</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-surefire-plugin</artifactId> | |
| <version>2.20.1</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-war-plugin</artifactId> | |
| <version>3.2.0</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-install-plugin</artifactId> | |
| <version>2.5.2</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-deploy-plugin</artifactId> | |
| <version>2.8.2</version> | |
| </plugin> | |
| </plugins> | |
| </pluginManagement> | |
| </build> | |
| </project> |
| package cn.itcast.jk.dao; | |
| import cn.itcast.jk.utils.Page; | |
| import java.io.Serializable; | |
| import java.util.Collection; | |
| import java.util.List; | |
| /** | |
| * @Description: | |
| * @Author: 传智播客 java学院 传智.宋江 | |
| * @Company: http://java.itcast.cn | |
| * @CreateDate: 2014年10月31日 | |
| */ | |
| public interface BaseDao { | |
| //查询所有,带条件查询 | |
| public <T> List<T> find(String hql, Class<T> entityClass, Object[] params); | |
| //获取一条记录 | |
| public <T> T get(Class<T> entityClass, Serializable id); | |
| //分页查询,将数据封装到一个page分页工具类对象 | |
| public <T> Page<T> findPage(String hql, Page<T> page, Class<T> entityClass, Object[] params); | |
| //新增和修改保存 | |
| public <T> void saveOrUpdate(T entity); | |
| //批量新增和修改保存 | |
| public <T> void saveOrUpdateAll(Collection<T> entitys); | |
| //单条删除,按id | |
| public <T> void deleteById(Class<T> entityClass, Serializable id); | |
| //批量删除 | |
| public <T> void delete(Class<T> entityClass, Serializable[] ids); | |
| } |
| package cn.itcast.jk.dao.impl; | |
| import java.io.Serializable; | |
| import java.util.Collection; | |
| import java.util.List; | |
| import cn.itcast.jk.utils.Page; | |
| import org.hibernate.Query; | |
| import org.hibernate.Session; | |
| import org.hibernate.SessionFactory; | |
| import cn.itcast.jk.dao.BaseDao; | |
| /** | |
| * @Description: | |
| * @Author: 传智播客 java学院 传智.宋江 | |
| * @Company: http://java.itcast.cn | |
| * @CreateDate: 2014年10月31日 | |
| */ | |
| public class BaseDaoImpl implements BaseDao{ | |
| private SessionFactory sessionFactory; | |
| public void setSessionFactory(SessionFactory sessionFactory) { | |
| this.sessionFactory = sessionFactory; | |
| } | |
| public Session getSession() { | |
| return sessionFactory.getCurrentSession(); | |
| } | |
| //带条件查询 | |
| public <T> List<T> find(String hql, Class<T> entityClass, Object[] params) { | |
| Query query = this.getSession().createQuery(hql); | |
| if(params!=null){ | |
| for (int i = 0; i < params.length; i++) { | |
| query.setParameter(i, params[i]); | |
| } | |
| } | |
| return (List<T>) query.list(); | |
| } | |
| //获取一条,根据主键id | |
| public <T> T get(Class<T> entityClass, Serializable id) { | |
| return (T) this.getSession().get(entityClass, id); | |
| } | |
| //分页查询,查询两次,一次查询总数,一次查询分页记录 | |
| public <T> Page<T> findPage(String hql, Page<T> page, Class<T> entityClass, Object[] params){ | |
| Query query = this.getSession().createQuery(hql); | |
| if(params!=null){ | |
| for (int i = 0; i < params.length; i++) { | |
| query.setParameter(i, params[i]); | |
| } | |
| } | |
| //查询一次,获取记录总数 | |
| int count = query.list().size(); | |
| page.setTotalRecord(count); | |
| //设置分页 | |
| query.setFirstResult((page.getPageNo()-1)*page.getPageSize()); //设置开始位置 | |
| query.setMaxResults(page.getPageSize()); //设置获取几条 | |
| page.setResults((List<T>)query.list()); | |
| return page; | |
| } | |
| //新增和修改,hibernate根据id是否为null自动判断 | |
| public <T> void saveOrUpdate(T entity) { | |
| this.getSession().saveOrUpdate(entity); | |
| } | |
| //集合保存,这时新增还是修改,就自动判断,调用时是否简洁。适合批量新增和修改时。(Mrecord控件) | |
| public <T> void saveOrUpdateAll(Collection<T> entitys){ | |
| for(T entity : entitys){ | |
| this.saveOrUpdate(entity);//为什么hibernate批量操作时,要用循环一条一条记录去更新? | |
| } | |
| } | |
| //按主键id删除 | |
| public <T> void deleteById(Class<T> entityClass, Serializable id) { | |
| this.getSession().delete(get(entityClass, id)); | |
| } | |
| //批量删除 | |
| public <T> void delete(Class<T> entityClass, Serializable[] ids) { | |
| for(Serializable s : ids){ | |
| deleteById(entityClass, s); | |
| } | |
| } | |
| } | |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <beans xmlns="http://www.springframework.org/schema/beans" | |
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
| xmlns:p="http://www.springframework.org/schema/p" | |
| xmlns:context="http://www.springframework.org/schema/context" | |
| xmlns:tx="http://www.springframework.org/schema/tx" | |
| xmlns:aop="http://www.springframework.org/schema/aop" | |
| xsi:schemaLocation="http://www.springframework.org/schema/beans | |
| http://www.springframework.org/schema/beans/spring-beans.xsd | |
| http://www.springframework.org/schema/aop | |
| http://www.springframework.org/schema/aop/spring-aop.xsd | |
| http://www.springframework.org/schema/tx | |
| http://www.springframework.org/schema/tx/spring-tx.xsd | |
| http://www.springframework.org/schema/context | |
| http://www.springframework.org/schema/context/spring-context.xsd"> | |
| <!-- BaseDao --> | |
| <bean id="baseDao" class="cn.itcast.jk.dao.impl.BaseDaoImpl"> | |
| <property name="sessionFactory" ref="sessionFactory"></property> | |
| </bean> | |
| </beans> |
| <html> | |
| <body> | |
| <h2>Hello World!</h2> | |
| </body> | |
| </html> |
| <!DOCTYPE web-app PUBLIC | |
| "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" | |
| "http://java.sun.com/dtd/web-app_2_3.dtd" > | |
| <web-app> | |
| <display-name>Archetype Created Web Application</display-name> | |
| </web-app> |
| <?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="Spring" name="Spring"> | |
| <configuration /> | |
| </facet> | |
| <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> | |
| </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" /> | |
| <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> | |
| <excludeFolder url="file://$MODULE_DIR$/target" /> | |
| </content> | |
| <orderEntry type="inheritedJdk" /> | |
| <orderEntry type="sourceFolder" forTests="false" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.9" level="project" /> | |
| <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.1.37" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-io:commons-io:2.2" level="project" /> | |
| <orderEntry type="library" name="Maven: jstl:jstl:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.shiro:shiro-all:1.2.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.6.8" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-commons:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-tree:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.22" level="project" /> | |
| <orderEntry type="library" name="Maven: ognl:ognl:3.0.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.javassist:javassist:3.18.1-GA" level="project" /> | |
| <orderEntry type="library" name="Maven: antlr:antlr:2.7.7" 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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.validation:validation-api:1.1.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: c3p0:c3p0:0.9.1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-resolver:xml-resolver:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm:3.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-core:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.neethi:neethi:3.0.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: log4j:log4j:1.2.12" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.mail:mail:1.4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: wsdl4j:wsdl4j:1.6.1" level="project" /> | |
| <orderEntry type="library" name="Maven: jaxen:jaxen:1.1-beta-9" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xmlParserAPIs:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xercesImpl:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.commons:XmlSchema:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: jdom:jdom:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.0" level="project" /> | |
| <orderEntry type="library" name="Maven: dom4j:dom4j:1.6" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" /> | |
| <orderEntry type="library" scope="TEST" name="Maven: junit:junit:3.8.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:servlet-api:2.5" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet.jsp:jsp-api:2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" level="project" /> | |
| </component> | |
| </module> |
| <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> | |
| <parent> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_parent</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </parent> | |
| <artifactId>jk28_domain</artifactId> | |
| </project> |
| package cn.itcast.jk.domain; | |
| import java.io.Serializable; | |
| /** | |
| * author: zzw5005 | |
| * date: 2018/6/8 14:21 | |
| */ | |
| public class Dept implements Serializable { | |
| private String id; //编号 | |
| private String deptName;//部门名称 | |
| private Dept parent;//父部门 自关联 | |
| private Integer state;//状态 | |
| public String getId() { | |
| return id; | |
| } | |
| public void setId(String id) { | |
| this.id = id; | |
| } | |
| public String getDeptName() { | |
| return deptName; | |
| } | |
| public void setDeptName(String deptName) { | |
| this.deptName = deptName; | |
| } | |
| public Dept getParent() { | |
| return parent; | |
| } | |
| public void setParent(Dept parent) { | |
| this.parent = parent; | |
| } | |
| public Integer getState() { | |
| return state; | |
| } | |
| public void setState(Integer state) { | |
| this.state = state; | |
| } | |
| } |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!DOCTYPE hibernate-mapping PUBLIC | |
| "-//Hibernate/Hibernate Mapping DTD 3.0//EN" | |
| "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> | |
| <hibernate-mapping package="cn.itcast.jk.domain"> | |
| <class name="Dept" table="DEPT_P"> | |
| <id name="id" column="DEPT_ID"> | |
| <generator class="uuid"></generator> | |
| </id> | |
| <property name="deptName" column="DEPT_NAME"></property> | |
| <property name="state" column="STATE"></property> | |
| <!-- 自关联 子部门与父部门 多对一 --> | |
| <many-to-one name="parent" class="Dept" column="PARENT_ID"></many-to-one> | |
| </class> | |
| </hibernate-mapping> | |
| <html> | |
| <body> | |
| <h2>Hello World!</h2> | |
| </body> | |
| </html> |
| <!DOCTYPE web-app PUBLIC | |
| "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" | |
| "http://java.sun.com/dtd/web-app_2_3.dtd" > | |
| <web-app> | |
| <display-name>Archetype Created Web Application</display-name> | |
| </web-app> |
| <?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="Spring" name="Spring"> | |
| <configuration /> | |
| </facet> | |
| <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 /> | |
| </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" /> | |
| <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> | |
| <excludeFolder url="file://$MODULE_DIR$/target" /> | |
| </content> | |
| <orderEntry type="inheritedJdk" /> | |
| <orderEntry type="sourceFolder" forTests="false" /> | |
| <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.11" level="project" /> | |
| <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.9" level="project" /> | |
| <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.1.37" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-io:commons-io:2.2" level="project" /> | |
| <orderEntry type="library" name="Maven: jstl:jstl:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.shiro:shiro-all:1.2.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.6.8" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-commons:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-tree:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.22" level="project" /> | |
| <orderEntry type="library" name="Maven: ognl:ognl:3.0.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.javassist:javassist:3.18.1-GA" level="project" /> | |
| <orderEntry type="library" name="Maven: antlr:antlr:2.7.7" 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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.validation:validation-api:1.1.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: c3p0:c3p0:0.9.1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-resolver:xml-resolver:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm:3.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-core:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.neethi:neethi:3.0.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: log4j:log4j:1.2.12" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.mail:mail:1.4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: wsdl4j:wsdl4j:1.6.1" level="project" /> | |
| <orderEntry type="library" name="Maven: jaxen:jaxen:1.1-beta-9" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xmlParserAPIs:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xercesImpl:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.commons:XmlSchema:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: jdom:jdom:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.0" level="project" /> | |
| <orderEntry type="library" name="Maven: dom4j:dom4j:1.6" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" /> | |
| <orderEntry type="library" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:servlet-api:2.5" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet.jsp:jsp-api:2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" level="project" /> | |
| </component> | |
| </module> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <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"> | |
| <parent> | |
| <artifactId>jk28_parent</artifactId> | |
| <groupId>cn.itcast.jk</groupId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </parent> | |
| <modelVersion>4.0.0</modelVersion> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_exception</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| <packaging>war</packaging> | |
| <name>jk28_exception Maven Webapp</name> | |
| <!-- FIXME change it to the project's website --> | |
| <url>http://www.example.com</url> | |
| <properties> | |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | |
| <maven.compiler.source>1.7</maven.compiler.source> | |
| <maven.compiler.target>1.7</maven.compiler.target> | |
| </properties> | |
| <dependencies> | |
| <dependency> | |
| <groupId>junit</groupId> | |
| <artifactId>junit</artifactId> | |
| <version>4.11</version> | |
| <scope>test</scope> | |
| </dependency> | |
| </dependencies> | |
| <build> | |
| <finalName>jk28_exception</finalName> | |
| <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) --> | |
| <plugins> | |
| <plugin> | |
| <artifactId>maven-clean-plugin</artifactId> | |
| <version>3.0.0</version> | |
| </plugin> | |
| <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging --> | |
| <plugin> | |
| <artifactId>maven-resources-plugin</artifactId> | |
| <version>3.0.2</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-compiler-plugin</artifactId> | |
| <version>3.7.0</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-surefire-plugin</artifactId> | |
| <version>2.20.1</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-war-plugin</artifactId> | |
| <version>3.2.0</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-install-plugin</artifactId> | |
| <version>2.5.2</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-deploy-plugin</artifactId> | |
| <version>2.8.2</version> | |
| </plugin> | |
| </plugins> | |
| </pluginManagement> | |
| </build> | |
| </project> |
| <html> | |
| <body> | |
| <h2>Hello World!</h2> | |
| </body> | |
| </html> |
| <!DOCTYPE web-app PUBLIC | |
| "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" | |
| "http://java.sun.com/dtd/web-app_2_3.dtd" > | |
| <web-app> | |
| <display-name>Archetype Created Web Application</display-name> | |
| </web-app> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4"> | |
| <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5"> | |
| <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.apache.httpcomponents:httpclient:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.9" level="project" /> | |
| <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.1.37" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-io:commons-io:2.2" level="project" /> | |
| <orderEntry type="library" name="Maven: jstl:jstl:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.shiro:shiro-all:1.2.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.6.8" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-commons:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-tree:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.22" level="project" /> | |
| <orderEntry type="library" name="Maven: ognl:ognl:3.0.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.javassist:javassist:3.18.1-GA" level="project" /> | |
| <orderEntry type="library" name="Maven: antlr:antlr:2.7.7" 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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.validation:validation-api:1.1.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: c3p0:c3p0:0.9.1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-resolver:xml-resolver:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm:3.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-core:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.neethi:neethi:3.0.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: log4j:log4j:1.2.12" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.mail:mail:1.4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: wsdl4j:wsdl4j:1.6.1" level="project" /> | |
| <orderEntry type="library" name="Maven: jaxen:jaxen:1.1-beta-9" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xmlParserAPIs:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xercesImpl:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.commons:XmlSchema:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: jdom:jdom:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.0" level="project" /> | |
| <orderEntry type="library" name="Maven: dom4j:dom4j:1.6" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" /> | |
| <orderEntry type="library" scope="TEST" name="Maven: junit:junit:3.8.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:servlet-api:2.5" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet.jsp:jsp-api:2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" level="project" /> | |
| </component> | |
| </module> |
| <?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="Spring" name="Spring"> | |
| <configuration /> | |
| </facet> | |
| <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> | |
| </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" /> | |
| <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> | |
| <excludeFolder url="file://$MODULE_DIR$/target" /> | |
| </content> | |
| <orderEntry type="inheritedJdk" /> | |
| <orderEntry type="sourceFolder" forTests="false" /> | |
| <orderEntry type="module" module-name="jk28_dao" /> | |
| <orderEntry type="module" module-name="jk28_utils" /> | |
| <orderEntry type="module" module-name="jk28_domain" /> | |
| <orderEntry type="module" module-name="jk28_exception" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.9" level="project" /> | |
| <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.1.37" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-io:commons-io:2.2" level="project" /> | |
| <orderEntry type="library" name="Maven: jstl:jstl:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.shiro:shiro-all:1.2.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.6.8" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-commons:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-tree:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.22" level="project" /> | |
| <orderEntry type="library" name="Maven: ognl:ognl:3.0.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.javassist:javassist:3.18.1-GA" level="project" /> | |
| <orderEntry type="library" name="Maven: antlr:antlr:2.7.7" 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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.validation:validation-api:1.1.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: c3p0:c3p0:0.9.1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-resolver:xml-resolver:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm:3.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-core:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.neethi:neethi:3.0.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: log4j:log4j:1.2.12" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.mail:mail:1.4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: wsdl4j:wsdl4j:1.6.1" level="project" /> | |
| <orderEntry type="library" name="Maven: jaxen:jaxen:1.1-beta-9" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xmlParserAPIs:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xercesImpl:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.commons:XmlSchema:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: jdom:jdom:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.0" level="project" /> | |
| <orderEntry type="library" name="Maven: dom4j:dom4j:1.6" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" /> | |
| <orderEntry type="library" scope="TEST" name="Maven: junit:junit:3.8.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:servlet-api:2.5" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet.jsp:jsp-api:2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" level="project" /> | |
| </component> | |
| </module> |
| <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> | |
| <parent> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_parent</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </parent> | |
| <artifactId>jk28_service</artifactId> | |
| <dependencies> | |
| <dependency> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_dao</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </dependency> | |
| <dependency> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_domain</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </dependency> | |
| <dependency> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_exception</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </dependency> | |
| </dependencies> | |
| </project> |
| package cn.itcast.jk.service; | |
| import cn.itcast.jk.domain.Dept; | |
| import cn.itcast.jk.utils.Page; | |
| import java.io.Serializable; | |
| import java.util.Collection; | |
| import java.util.List; | |
| /** | |
| * author: zzw5005 | |
| * date: 2018/6/8 21:24 | |
| */ | |
| public interface DeptService { | |
| //查询所有,带条件查询 | |
| public List<Dept> find(String hql, Class<Dept> entityClass, Object[] params); | |
| //获取一条记录 | |
| public Dept get(Class<Dept> entityClass, Serializable id); | |
| //分页查询,将数据封装到一个page分页工具类对象 | |
| public Page<Dept> findPage(String hql, Page<Dept> page, Class<Dept> entityClass, Object[] params); | |
| //新增和修改保存 | |
| public void saveOrUpdate(Dept entity); | |
| //批量新增和修改保存 | |
| public void saveOrUpdateAll(Collection<Dept> entitys); | |
| //单条删除,按id | |
| public void deleteById(Class<Dept> entityClass, Serializable id); | |
| //批量删除 | |
| public void delete(Class<Dept> entityClass, Serializable[] ids); | |
| } |
| package cn.itcast.jk.service.impl; | |
| import java.io.Serializable; | |
| import java.util.Collection; | |
| import java.util.List; | |
| import cn.itcast.jk.dao.BaseDao; | |
| import cn.itcast.jk.domain.Dept; | |
| import cn.itcast.jk.service.DeptService; | |
| import cn.itcast.jk.utils.Page; | |
| import cn.itcast.jk.utils.UtilFuns; | |
| public class DeptServiceImpl implements DeptService { | |
| private BaseDao baseDao; | |
| public void setBaseDao(BaseDao baseDao) { | |
| this.baseDao = baseDao; | |
| } | |
| public List<Dept> find(String hql, Class<Dept> entityClass, Object[] params) { | |
| return baseDao.find(hql, entityClass, params); | |
| } | |
| public Dept get(Class<Dept> entityClass, Serializable id) { | |
| return baseDao.get(entityClass, id); | |
| } | |
| public Page<Dept> findPage(String hql, Page<Dept> page, Class<Dept> entityClass, Object[] params) { | |
| return baseDao.findPage(hql, page, entityClass, params); | |
| } | |
| public void saveOrUpdate(Dept entity) { | |
| if(UtilFuns.isEmpty(entity.getId())){ | |
| //新增 | |
| entity.setState(1);//1启用 0停用 默认为启用 | |
| } | |
| baseDao.saveOrUpdate(entity); | |
| } | |
| public void saveOrUpdateAll(Collection<Dept> entitys) { | |
| baseDao.saveOrUpdateAll(entitys); | |
| } | |
| public void deleteById(Class<Dept> entityClass, Serializable id) { | |
| baseDao.deleteById(entityClass, id); | |
| } | |
| public void delete(Class<Dept> entityClass, Serializable[] ids) { | |
| baseDao.delete(entityClass, ids); | |
| } | |
| } |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <beans xmlns="http://www.springframework.org/schema/beans" | |
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
| xmlns:p="http://www.springframework.org/schema/p" | |
| xmlns:context="http://www.springframework.org/schema/context" | |
| xmlns:tx="http://www.springframework.org/schema/tx" | |
| xmlns:aop="http://www.springframework.org/schema/aop" | |
| xsi:schemaLocation="http://www.springframework.org/schema/beans | |
| http://www.springframework.org/schema/beans/spring-beans.xsd | |
| http://www.springframework.org/schema/aop | |
| http://www.springframework.org/schema/aop/spring-aop.xsd | |
| http://www.springframework.org/schema/tx | |
| http://www.springframework.org/schema/tx/spring-tx.xsd | |
| http://www.springframework.org/schema/context | |
| http://www.springframework.org/schema/context/spring-context.xsd"> | |
| <!-- service --> | |
| <!--<bean id="customerService" class="cn.itcast.crm.service.CustomerServiceImpl"> | |
| <property name="customerDao" ref="customerDao"></property> | |
| </bean>--> | |
| <bean id="deptService" class="cn.itcast.jk.service.impl.DeptServiceImpl"> | |
| <property name="baseDao" ref="baseDao"></property> | |
| </bean> | |
| </beans> | |
| <html> | |
| <body> | |
| <h2>Hello World!</h2> | |
| </body> | |
| </html> |
| <!DOCTYPE web-app PUBLIC | |
| "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" | |
| "http://java.sun.com/dtd/web-app_2_3.dtd" > | |
| <web-app> | |
| <display-name>Archetype Created Web Application</display-name> | |
| </web-app> |
| <?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="Spring" name="Spring"> | |
| <configuration /> | |
| </facet> | |
| <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 /> | |
| </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" /> | |
| <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> | |
| <excludeFolder url="file://$MODULE_DIR$/target" /> | |
| </content> | |
| <orderEntry type="inheritedJdk" /> | |
| <orderEntry type="sourceFolder" forTests="false" /> | |
| <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.11" level="project" /> | |
| <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.9" level="project" /> | |
| <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.1.37" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-io:commons-io:2.2" level="project" /> | |
| <orderEntry type="library" name="Maven: jstl:jstl:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.shiro:shiro-all:1.2.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.6.8" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-commons:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-tree:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.22" level="project" /> | |
| <orderEntry type="library" name="Maven: ognl:ognl:3.0.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.javassist:javassist:3.18.1-GA" level="project" /> | |
| <orderEntry type="library" name="Maven: antlr:antlr:2.7.7" 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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.validation:validation-api:1.1.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: c3p0:c3p0:0.9.1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-resolver:xml-resolver:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm:3.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-core:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.neethi:neethi:3.0.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: log4j:log4j:1.2.12" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.mail:mail:1.4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: wsdl4j:wsdl4j:1.6.1" level="project" /> | |
| <orderEntry type="library" name="Maven: jaxen:jaxen:1.1-beta-9" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xmlParserAPIs:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xercesImpl:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.commons:XmlSchema:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: jdom:jdom:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.0" level="project" /> | |
| <orderEntry type="library" name="Maven: dom4j:dom4j:1.6" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" /> | |
| <orderEntry type="library" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:servlet-api:2.5" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet.jsp:jsp-api:2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" level="project" /> | |
| </component> | |
| </module> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <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"> | |
| <parent> | |
| <artifactId>jk28_parent</artifactId> | |
| <groupId>cn.itcast.jk</groupId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </parent> | |
| <modelVersion>4.0.0</modelVersion> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_utils</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| <packaging>war</packaging> | |
| <name>jk28_utils Maven Webapp</name> | |
| <!-- FIXME change it to the project's website --> | |
| <url>http://www.example.com</url> | |
| <properties> | |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | |
| <maven.compiler.source>1.7</maven.compiler.source> | |
| <maven.compiler.target>1.7</maven.compiler.target> | |
| </properties> | |
| <dependencies> | |
| <dependency> | |
| <groupId>junit</groupId> | |
| <artifactId>junit</artifactId> | |
| <version>4.11</version> | |
| <scope>test</scope> | |
| </dependency> | |
| </dependencies> | |
| <build> | |
| <finalName>jk28_utils</finalName> | |
| <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) --> | |
| <plugins> | |
| <plugin> | |
| <artifactId>maven-clean-plugin</artifactId> | |
| <version>3.0.0</version> | |
| </plugin> | |
| <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging --> | |
| <plugin> | |
| <artifactId>maven-resources-plugin</artifactId> | |
| <version>3.0.2</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-compiler-plugin</artifactId> | |
| <version>3.7.0</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-surefire-plugin</artifactId> | |
| <version>2.20.1</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-war-plugin</artifactId> | |
| <version>3.2.0</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-install-plugin</artifactId> | |
| <version>2.5.2</version> | |
| </plugin> | |
| <plugin> | |
| <artifactId>maven-deploy-plugin</artifactId> | |
| <version>2.8.2</version> | |
| </plugin> | |
| </plugins> | |
| </pluginManagement> | |
| </build> | |
| </project> |
| package cn.itcast.jk.utils; | |
| // 这是一个数数学计算的class 缩略图生成的时候需要用到。 | |
| import java.math.BigDecimal; | |
| import java.util.Random; | |
| public class Arith { | |
| //默认除法运算精度 | |
| private static final int DEF_DIV_SCALE = 10; | |
| /** | |
| * 提供精确的加法运算。 | |
| * @param v1 被加数 | |
| * @param v2 加数 | |
| * @return 两个参数的和 | |
| */ | |
| public static double add(double v1,double v2){ | |
| BigDecimal b1 = new BigDecimal(Double.toString(v1)); | |
| BigDecimal b2 = new BigDecimal(Double.toString(v2)); | |
| return b1.add(b2).doubleValue(); | |
| } | |
| /** | |
| * 提供精确的减法运算。 | |
| * @param v1 被减数 | |
| * @param v2 减数 | |
| * @return 两个参数的差 | |
| */ | |
| public static double sub(double v1,double v2){ | |
| BigDecimal b1 = new BigDecimal(Double.toString(v1)); | |
| BigDecimal b2 = new BigDecimal(Double.toString(v2)); | |
| return b1.subtract(b2).doubleValue(); | |
| } | |
| /** | |
| * 提供精确的乘法运算。 | |
| * @param v1 被乘数 | |
| * @param v2 乘数 | |
| * @return 两个参数的积 | |
| */ | |
| public static double mul(double v1,double v2){ | |
| BigDecimal b1 = new BigDecimal(Double.toString(v1)); | |
| BigDecimal b2 = new BigDecimal(Double.toString(v2)); | |
| return b1.multiply(b2).doubleValue(); | |
| } | |
| /** | |
| * 提供(相对)精确的除法运算,当发生除不尽的情况时,精确到 | |
| * 小数点以后10位,以后的数字四舍五入。 | |
| * @param v1 被除数 | |
| * @param v2 除数 | |
| * @return 两个参数的商 | |
| */ | |
| public static double div(double v1,double v2){ | |
| return div(v1,v2,DEF_DIV_SCALE); | |
| } | |
| /** | |
| * 提供(相对)精确的除法运算。当发生除不尽的情况时,由scale参数指 | |
| * 定精度,以后的数字四舍五入。 | |
| * @param v1 被除数 | |
| * @param v2 除数 | |
| * @param scale 表示表示需要精确到小数点以后几位。 | |
| * @return 两个参数的商 | |
| */ | |
| public static double div(double v1,double v2,int scale){ | |
| if(scale<0){ | |
| throw new IllegalArgumentException( | |
| "The scale must be a positive integer or zero"); | |
| } | |
| BigDecimal b1 = new BigDecimal(Double.toString(v1)); | |
| BigDecimal b2 = new BigDecimal(Double.toString(v2)); | |
| return b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue(); | |
| } | |
| /** | |
| * 提供精确的小数位四舍五入处理。 | |
| * @param v 需要四舍五入的数字 | |
| * @param scale 小数点后保留几位 | |
| * @return 四舍五入后的结果 | |
| */ | |
| public static double round(double v,int scale){ | |
| if(scale<0){ | |
| throw new IllegalArgumentException( | |
| "The scale must be a positive integer or zero"); | |
| } | |
| BigDecimal b = new BigDecimal(Double.toString(v)); | |
| BigDecimal one = new BigDecimal("1"); | |
| return b.divide(one,scale,BigDecimal.ROUND_HALF_UP).doubleValue(); | |
| } | |
| //非整除则进位 by tony 20111006 | |
| public int round(int i1,int i2){ | |
| int modi = 0; | |
| modi = i1 % i2; | |
| int i = i1/i2; | |
| if(modi==0){ | |
| return i; | |
| }else{ | |
| return i+1; | |
| } | |
| } | |
| //使用时一定要注意其大小,不可超出范围 | |
| public int pow(int i1,int i2){ | |
| double d1 = (double)i1; | |
| double d2 = (double)i2; | |
| return (int) Math.pow(d1, d2); | |
| } | |
| //对给定数目的自0开始步长为1的数字序列进行乱序 | |
| public static int[] getSequence(int maxnum) { | |
| int[] sequence = new int[maxnum]; | |
| for(int i = 0; i < maxnum; i++){ | |
| sequence[i] = i; | |
| } | |
| Random random = new Random(); | |
| for(int i = 0; i < maxnum; i++){ | |
| int p = random.nextInt(maxnum); | |
| int tmp = sequence[i]; | |
| sequence[i] = sequence[p]; | |
| sequence[p] = tmp; | |
| } | |
| random = null; | |
| return sequence; | |
| } | |
| public static void main(String[] agrs){ | |
| Arith arith = new Arith(); | |
| int[] i = arith.getSequence(300); | |
| for(int n=0;n<i.length;n++){ | |
| System.out.println(i[n]); | |
| } | |
| } | |
| } |
| package cn.itcast.jk.utils; | |
| import java.sql.Date; | |
| import java.sql.Timestamp; | |
| import java.text.SimpleDateFormat; | |
| import org.springframework.beans.propertyeditors.CustomDateEditor; | |
| import org.springframework.web.bind.WebDataBinder; | |
| import org.springframework.web.bind.support.WebBindingInitializer; | |
| import org.springframework.web.context.request.WebRequest; | |
| /* | |
| * 实现自定义日期格式转换,格式为:yyyy-MM-dd | |
| * | |
| * | |
| * 为何在springmvc-servlet.xml中配置不起作用,直接controller中声明起作用 | |
| <!-- 拦截器 --> | |
| <bean id="annotationMethodHandlerAdapter" class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> | |
| <!-- 日期格式转换 --> | |
| <property name="webBindingInitializer"> | |
| <bean class="cn.itcast.jk.util.DateConverter"/> | |
| </property> | |
| </bean> | |
| */ | |
| public class DateConverter implements WebBindingInitializer { | |
| public void initBinder(WebDataBinder binder, WebRequest request) { | |
| SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); | |
| binder.registerCustomEditor(Date.class, new CustomDateEditor(df, true)); | |
| binder.registerCustomEditor(Timestamp.class, new CustomDateEditor(df, true)); | |
| } | |
| } |
| package cn.itcast.jk.utils; | |
| import java.io.ByteArrayOutputStream; | |
| import java.io.File; | |
| import java.io.FileInputStream; | |
| import java.io.IOException; | |
| import javax.servlet.ServletOutputStream; | |
| import javax.servlet.http.HttpServletResponse; | |
| public class DownloadUtil { | |
| /** | |
| * @param filePath 要下载的文件路径 | |
| * @param returnName 返回的文件名 | |
| * @param response HttpServletResponse | |
| * @param delFlag 是否删除文件 | |
| */ | |
| protected void download(String filePath,String returnName,HttpServletResponse response,boolean delFlag){ | |
| this.prototypeDownload(new File(filePath), returnName, response, delFlag); | |
| } | |
| /** | |
| * @param file 要下载的文件 | |
| * @param returnName 返回的文件名 | |
| * @param response HttpServletResponse | |
| * @param delFlag 是否删除文件 | |
| */ | |
| protected void download(File file,String returnName,HttpServletResponse response,boolean delFlag){ | |
| this.prototypeDownload(file, returnName, response, delFlag); | |
| } | |
| /** | |
| * @param file 要下载的文件 | |
| * @param returnName 返回的文件名 | |
| * @param response HttpServletResponse | |
| * @param delFlag 是否删除文件 | |
| */ | |
| public void prototypeDownload(File file,String returnName,HttpServletResponse response,boolean delFlag){ | |
| // 下载文件 | |
| FileInputStream inputStream = null; | |
| ServletOutputStream outputStream = null; | |
| try { | |
| if(!file.exists()) return; | |
| response.reset(); | |
| //设置响应类型 PDF文件为"application/pdf",WORD文件为:"application/msword", EXCEL文件为:"application/vnd.ms-excel"。 | |
| response.setContentType("application/octet-stream;charset=utf-8"); | |
| //设置响应的文件名称,并转换成中文编码 | |
| //returnName = URLEncoder.encode(returnName,"UTF-8"); | |
| returnName = response.encodeURL(new String(returnName.getBytes(),"iso8859-1")); //保存的文件名,必须和页面编码一致,否则乱码 | |
| //attachment作为附件下载;inline客户端机器有安装匹配程序,则直接打开;注意改变配置,清除缓存,否则可能不能看到效果 | |
| response.addHeader("Content-Disposition", "attachment;filename="+returnName); | |
| //将文件读入响应流 | |
| inputStream = new FileInputStream(file); | |
| outputStream = response.getOutputStream(); | |
| int length = 1024; | |
| int readLength=0; | |
| byte buf[] = new byte[1024]; | |
| readLength = inputStream.read(buf, 0, length); | |
| while (readLength != -1) { | |
| outputStream.write(buf, 0, readLength); | |
| readLength = inputStream.read(buf, 0, length); | |
| } | |
| } catch (Exception e) { | |
| e.printStackTrace(); | |
| } finally { | |
| try { | |
| outputStream.flush(); | |
| } catch (IOException e) { | |
| e.printStackTrace(); | |
| } | |
| try { | |
| outputStream.close(); | |
| } catch (IOException e) { | |
| e.printStackTrace(); | |
| } | |
| try { | |
| inputStream.close(); | |
| } catch (IOException e) { | |
| e.printStackTrace(); | |
| } | |
| //删除原文件 | |
| if(delFlag) { | |
| file.delete(); | |
| } | |
| } | |
| } | |
| /** | |
| * by tony 2013-10-17 | |
| * @param byteArrayOutputStream 将文件内容写入ByteArrayOutputStream | |
| * @param response HttpServletResponse 写入response | |
| * @param returnName 返回的文件名 | |
| */ | |
| public void download(ByteArrayOutputStream byteArrayOutputStream, HttpServletResponse response, String returnName) throws IOException{ | |
| response.setContentType("application/octet-stream;charset=utf-8"); | |
| returnName = response.encodeURL(new String(returnName.getBytes(),"iso8859-1")); //保存的文件名,必须和页面编码一致,否则乱码 | |
| response.addHeader("Content-Disposition", "attachment;filename=" + returnName); | |
| response.setContentLength(byteArrayOutputStream.size()); | |
| ServletOutputStream outputstream = response.getOutputStream(); //取得输出流 | |
| byteArrayOutputStream.writeTo(outputstream); //写到输出流 | |
| byteArrayOutputStream.close(); //关闭 | |
| outputstream.flush(); //刷数据 | |
| } | |
| } |
| package cn.itcast.jk.utils.file; | |
| import cn.itcast.jk.utils.FormatStyle; | |
| import cn.itcast.jk.utils.UtilFuns; | |
| import java.io.BufferedInputStream; | |
| import java.io.BufferedReader; | |
| import java.io.BufferedWriter; | |
| import java.io.File; | |
| import java.io.FileInputStream; | |
| import java.io.FileNotFoundException; | |
| import java.io.FileOutputStream; | |
| import java.io.FileReader; | |
| import java.io.FileWriter; | |
| import java.io.IOException; | |
| import java.io.InputStream; | |
| import java.io.OutputStream; | |
| import java.io.OutputStreamWriter; | |
| import java.nio.channels.FileChannel; | |
| import java.util.ArrayList; | |
| import java.util.List; | |
| public class FileUtil { | |
| /* ======================================== * | |
| * Class Methods | |
| * ======================================== */ | |
| public String getFileExt(String s){ | |
| String s1 = new String(); | |
| int i = 0; | |
| int j = 0; | |
| if(s == null) | |
| return null; | |
| i = s.lastIndexOf(46) + 1; | |
| j = s.length(); | |
| s1 = s.substring(i, j); | |
| if(s.lastIndexOf(46) > 0) | |
| return s1.toLowerCase(); | |
| else | |
| return ""; | |
| } | |
| private String getNameWithoutExtension(String fileName){ | |
| return fileName.substring(0, fileName.lastIndexOf(".")); | |
| } | |
| public boolean isImgFile(String file) | |
| { | |
| if(UtilFuns.isNotEmpty(file)){ | |
| String s1 = "."+this.getFileExt(file); | |
| if(".jpg.jpeg.bmp.gif.png".indexOf(s1)>-1){ | |
| return true; | |
| } | |
| } | |
| return false; | |
| } | |
| public String getFileName(String s){ | |
| try{ | |
| s = s.replaceAll("/", "\\\\"); | |
| int fileIndex= s.lastIndexOf("\\")+1; | |
| return s.substring(fileIndex,s.length()); | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| public String getFilePath(String s){ | |
| try{ | |
| s = s.replaceAll("/", "\\\\"); | |
| int fileIndex= s.lastIndexOf("\\"); | |
| return s.substring(0,fileIndex); | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| /* 目录下已经有同名文件,则文件重命名,增加文件序号 add by tony 20110712 */ | |
| public String newFile(String sPath, String sFile){ | |
| String newFileName = new String(); | |
| String withoutExt = new String(); | |
| File curFile = new File(sPath + "\\" + sFile); | |
| if (curFile.exists()) { | |
| for(int counter = 1; curFile.exists(); counter++){ | |
| withoutExt = this.getNameWithoutExtension(curFile.getName()); | |
| if(withoutExt.endsWith(counter-1 + ")")){ | |
| withoutExt = withoutExt.substring(0,withoutExt.indexOf("(")); //idea | |
| } | |
| newFileName = withoutExt + "(" + counter + ")" + "." + getFileExt(curFile.getName()); | |
| curFile = new File(sPath + "\\" + newFileName); | |
| } | |
| }else{ | |
| newFileName = curFile.getName(); | |
| } | |
| return newFileName; | |
| } | |
| /* 只清空文件夹,不删除文件夹 */ | |
| public static synchronized void clearDir(String dir_path) | |
| throws FileNotFoundException { | |
| File file = new File(dir_path); | |
| if (!file.exists()) { | |
| throw new FileNotFoundException(); | |
| } | |
| if (file.isDirectory()) { | |
| File[] fe = file.listFiles(); | |
| for (int i = 0; i < fe.length; i++) { | |
| deleteFiles(fe[i].toString()); | |
| fe[i].delete(); //删除已经是空的子目录 | |
| } | |
| } | |
| } | |
| //ex: deleteDir(new File("c://aaa")); | |
| /* 清空文件夹,并删除文件夹 */ | |
| public static synchronized void deleteDir(String dir_path) | |
| throws FileNotFoundException,IOException { | |
| deleteDir(new File(dir_path)); | |
| } | |
| //ex: deleteDir(new File("c://aaa")); | |
| /* 清空文件夹,并删除文件夹 */ | |
| public static synchronized void deleteDir(File f) | |
| throws FileNotFoundException,IOException { | |
| if(!f.exists()){//文件夹不存在不存在 | |
| throw new IOException("指定目录不存在:"+f.getName()); | |
| } | |
| boolean rslt=true;//保存中间结果 | |
| if(!(rslt=f.delete())){//先尝试直接删除 | |
| //若文件夹非空。枚举、递归删除里面内容 | |
| File subs[] = f.listFiles(); | |
| for (int i = 0; i <= subs.length - 1; i++) { | |
| if (subs[i].isDirectory()) | |
| deleteDir(subs[i]);//递归删除子文件夹内容 | |
| rslt = subs[i].delete();//删除子文件夹本身 | |
| } | |
| rslt = f.delete();//删除此文件夹本身 | |
| } | |
| //if(!rslt) | |
| // throw new IOException("无法删除:"+f.getName()); | |
| //return; | |
| } | |
| //路径中的多层目录,如果不存在,则建立(mkdir-只可建最后一层目录) | |
| public static synchronized void makeDir(String dirPath) | |
| throws FileNotFoundException { | |
| String s = ""; | |
| dirPath = dirPath.replaceAll("\\t","/t"); //replace tab key | |
| dirPath = dirPath.replaceAll("\\\\","/"); | |
| String[] aPath = dirPath.split("/"); | |
| for (int i=0;i<aPath.length;i++){ | |
| s = s + aPath[i] + "/"; | |
| //System.out.println(s); | |
| File d = new File(s); | |
| if(!d.exists()){ | |
| d.mkdir(); | |
| } | |
| } | |
| } | |
| //修改目录名称或文件名称 dir and file | |
| public static synchronized void rename(String sOld,String sNew) | |
| throws FileNotFoundException { | |
| boolean b = false; | |
| File d = new File(sOld); | |
| if(d.exists()){ | |
| b = d.renameTo(new File(sNew)); | |
| } | |
| } | |
| public static synchronized String formulaDirName(String dirName){ | |
| dirName = dirName.replaceAll("/","\\\\"); | |
| return dirName; | |
| } | |
| public static synchronized String formulaPath(String dirName){ | |
| dirName = dirName.replaceAll("\\\\","/"); | |
| return dirName; | |
| } | |
| public static synchronized String lastDir(String dir_path){ | |
| if(dir_path.trim().compareTo("")==0){ | |
| return ""; | |
| }else{ | |
| //两个位置,谁后取谁。因为路径中常包含这两种标识 | |
| int i= dir_path.lastIndexOf("\\")>dir_path.lastIndexOf("/")?dir_path.lastIndexOf("\\"):dir_path.lastIndexOf("/"); | |
| if(i>0){ | |
| return dir_path.substring(i); | |
| }else{ | |
| return ""; | |
| } | |
| } | |
| } | |
| //删除给定的文件 | |
| public static void deleteFile(String FileName) { | |
| File f2 = new File(FileName); | |
| f2.delete(); //del file | |
| f2 = null; | |
| } | |
| /* | |
| *删除目录下的所有文件 | |
| **/ | |
| public static boolean deleteFiles(String dir) { | |
| if(dir==null || "".equals(dir)) | |
| return true; | |
| File f0 = new File(dir); | |
| if( !f0.isDirectory() ) | |
| return false; | |
| File[] files = f0.listFiles(); | |
| boolean status = true; | |
| for(int i=0; i<files.length; i++) { | |
| File f = files[i]; | |
| if( !f.isFile() ) | |
| continue; | |
| boolean b = f.delete(); | |
| status = ( status && b ); | |
| } | |
| return status; | |
| } | |
| /** Deletes each file in <tt>files</tt> which is under <tt>path</tt>. | |
| * It does not delete directory. | |
| * | |
| * @param path | |
| * @param files | |
| * @return <tt>true</tt> if and only if all the files are successfully | |
| * deleted; <tt>false</tt> otherwise. | |
| */ | |
| public static boolean deleteFiles(String path, String[] files) { | |
| if(path==null || files==null) | |
| return true; | |
| boolean status = true; | |
| for(int i=0; i<files.length; i++) { | |
| File f = new File(path, files[i]); | |
| if( !f.isFile() ) | |
| continue; | |
| //? (f.getAbsoluteFile()). | |
| boolean b = f.delete(); | |
| status = ( status && b ); | |
| } | |
| return status; | |
| } | |
| public static boolean deleteFiles(List files) { | |
| if(files==null || files.size()<=0) | |
| return true; | |
| String fileName = ""; | |
| boolean status = true; | |
| for(int i=0; i<files.size(); i++) { | |
| fileName = (String)files.get(i); | |
| File f = new File(fileName); | |
| if( !f.isFile() ) | |
| continue; | |
| //? (f.getAbsoluteFile()). | |
| boolean b = f.delete(); | |
| status = ( status && b ); | |
| } | |
| return status; | |
| } | |
| /** Copies byte-content of <tt>f</tt> to <tt>os</tt>. | |
| * | |
| * @param f | |
| * @param os | |
| * @throws IOException | |
| */ | |
| public static void fileToOutputStream(File f, OutputStream os) | |
| throws IOException { | |
| // | |
| InputStream is = new BufferedInputStream( new FileInputStream(f) ); | |
| byte[] barr = new byte[1024]; | |
| int count; | |
| while(true) { | |
| count = is.read(barr); | |
| if(count == -1) | |
| break; | |
| os.write(barr, 0, count); | |
| } | |
| is.close(); | |
| return; | |
| } | |
| //读日志文件 "c:\\Log.txt" | |
| //输入参数:sFile = Path + FileName 文件路径+文件名称 | |
| public List<String> readTxtFile(String sFile) { | |
| String str = ""; | |
| List<String> sList = new ArrayList<String>(); | |
| try { | |
| FileReader fr = new FileReader(sFile); | |
| BufferedReader bfr = new BufferedReader(fr); | |
| while((str = bfr.readLine())!=null){ | |
| sList.add(str); | |
| } | |
| fr.close(); | |
| }catch (IOException ex){System.out.println("readTxtFile IOException Error."+ex.getMessage()); | |
| }catch (Exception ex) {System.out.println("readTxtFile Exception Error."+ex.getMessage());} | |
| return sList; | |
| } | |
| public String WriteTxt(String sPath,String sFile,String sContent) { | |
| String s = ""; | |
| File d=new File(sPath);//建立代表Sub目录的File对象,并得到它的一个引用 | |
| if(!d.exists()){//检查Sub目录是否存在 | |
| d.mkdir();//建立Sub目录 | |
| } | |
| try { | |
| FileWriter fw = new FileWriter(sPath + "\\" + sFile,true); | |
| BufferedWriter bfw = new BufferedWriter(fw); | |
| bfw.write(sContent); | |
| bfw.flush(); | |
| fw.close(); | |
| }catch (IOException ex){ s = "WriteTxt IOException Error."; | |
| }catch (Exception ex) { s = "WriteTxt Exception Error.";} | |
| return s; | |
| } | |
| /* 创建新文本文件,如果文件已经存在则覆盖 */ | |
| public String createTxt(String sPathFile,String sContent) throws FileNotFoundException { | |
| String s = ""; | |
| String sPath = this.getFilePath(sPathFile); | |
| String sFile = this.getFileName(sPathFile); | |
| File d=new File(sPath); //建立代表Sub目录的File对象,并得到它的一个引用 | |
| if(!d.exists()){ //检查Sub目录是否存在 | |
| this.makeDir(sPath); //建立Sub目录 | |
| } | |
| try { | |
| FileWriter fw = new FileWriter(sPath + "\\" + sFile,false); | |
| BufferedWriter bfw = new BufferedWriter(fw); | |
| bfw.write(sContent); | |
| bfw.flush(); | |
| fw.close(); | |
| }catch (IOException ex){ s = "createTxt IOException Error."; | |
| }catch (Exception ex) { s = "createTxt Exception Error.";} | |
| return s; | |
| } | |
| /* 创建新文本文件,如果文件已经存在则覆盖 */ | |
| public String createTxt(String sPath,String sFile,String sContent) throws FileNotFoundException { | |
| String s = ""; | |
| File d=new File(sPath); //建立代表Sub目录的File对象,并得到它的一个引用 | |
| if(!d.exists()){ //检查Sub目录是否存在 | |
| this.makeDir(sPath); //建立Sub目录 | |
| } | |
| try { | |
| FileWriter fw = new FileWriter(sPath + "\\" + sFile,false); | |
| BufferedWriter bfw = new BufferedWriter(fw); | |
| bfw.write(sContent); | |
| bfw.flush(); | |
| fw.close(); | |
| }catch (IOException ex){ s = "createTxt IOException Error."; | |
| }catch (Exception ex) { s = "createTxt Exception Error.";} | |
| return s; | |
| } | |
| /* 创建新文本文件,如果文件已经存在则覆盖,在文件后追加内容 文件格式:encode:UTF-8 add by tony 20100118 */ | |
| public String createTxt(String sPath,String sFile,String sContent,String enCoding) throws FileNotFoundException { | |
| String s = ""; | |
| File d=new File(sPath); //建立代表Sub目录的File对象,并得到它的一个引用 | |
| if(!d.exists()){ //检查Sub目录是否存在 | |
| this.makeDir(sPath); //建立Sub目录 | |
| } | |
| try { | |
| OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(sPath + "\\" + sFile), enCoding); | |
| out.write(sContent); | |
| out.flush(); | |
| out.close(); | |
| }catch (IOException ex){ s = "createTxt IOException Error."; | |
| }catch (Exception ex) { s = "createTxt Exception Error."; } | |
| return s; | |
| } | |
| /* 创建新文本文件,如果文件已经存在则覆盖,只覆盖不追加 文件格式:encode:UTF-8 add by tony 20100118 */ | |
| public String newTxt(String sPath,String sFile,String sContent,String enCoding) throws FileNotFoundException { | |
| String s = ""; | |
| File d=new File(sPath); //建立代表Sub目录的File对象,并得到它的一个引用 | |
| if(!d.exists()){ //检查Sub目录是否存在 | |
| this.makeDir(sPath); //建立Sub目录 | |
| } | |
| try { | |
| OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(sPath + "\\" + sFile, false), enCoding); | |
| out.write(sContent); | |
| out.flush(); | |
| out.close(); | |
| }catch (IOException ex){ s = "createTxt IOException Error."; | |
| }catch (Exception ex) { s = "createTxt Exception Error."; } | |
| return s; | |
| } | |
| /* | |
| s = "c:\\ex.txt"; | |
| String[] aTitle = null; //表示没有标题 | |
| String[] aContent = {"a","b","c","a1","a2","a3"}; | |
| sMsg = fileUtil.WriteTxt(s,aTitle,aContent,"\t",3); //\t TAB键 | |
| */ | |
| public String WriteTxt(String sFile,String[] aTitle,String[] aContent,String sSplitFlag,int iColumns) { | |
| String sMsg = ""; | |
| long lTime = System.currentTimeMillis(); | |
| try { | |
| if (aTitle!=null){ | |
| if (aTitle.length!=iColumns){ | |
| throw new Exception("Title Length is not right!"); | |
| } | |
| } | |
| File f = new File(sFile); | |
| if(f.exists()) | |
| { | |
| f.delete(); //if exist then delete() | |
| } | |
| FileWriter fw = new FileWriter(sFile,true); | |
| BufferedWriter bfw = new BufferedWriter(fw); | |
| //write Title | |
| if (aTitle!=null){ | |
| for(int i=0;i<aTitle.length;i++){ | |
| bfw.write(aTitle[i] + sSplitFlag); | |
| } | |
| bfw.newLine(); //插入换行符号 | |
| } | |
| //write content | |
| for(int i=0;i<aContent.length;i++){ | |
| bfw.write(aContent[i] + sSplitFlag); | |
| if ((i+1)%iColumns==0){ | |
| bfw.newLine(); //插入换行符号 | |
| } | |
| } | |
| bfw.flush(); //将缓冲区内的数据写入文件中 | |
| fw.close(); | |
| }catch (IOException ex){ | |
| sMsg = "WriteTxt IOException Error."+ex.getMessage(); | |
| }catch (Exception ex) { | |
| sMsg = "WriteTxt Exception Error."+ex.getMessage(); | |
| } | |
| return sMsg; | |
| } | |
| //边生成边写XML文件 对单表结构 | |
| public String WriteXML(String sFile,String indent,String root,String[] aTrunk,String[] aLeaf,String[] aContent) { | |
| int i=0,j=0,k=0; | |
| String sIndent = ""; | |
| String[] aTrunkSuffix = new String[aTrunk.length]; | |
| String[] aLeafSuffix = new String[aLeaf.length]; | |
| String sMsg = ""; | |
| long lTime = System.currentTimeMillis(); | |
| try { | |
| File f = new File(sFile); | |
| if(f.exists()) | |
| { | |
| f.delete(); //if exist then delete() | |
| } | |
| //inital array | |
| for(i=0;i<aTrunk.length;i++){ | |
| for(j=0;j<i;j++){ | |
| sIndent = indent + sIndent; //add space | |
| } | |
| aTrunk[i] = sIndent + "<" + aTrunk[i] + ">"; | |
| aTrunkSuffix[i] = aTrunk[i].replaceFirst("<","</"); | |
| //System.out.println(i + " " + aTrunk[i]+aTrunkSuffix[i]); | |
| } | |
| sIndent = indent + sIndent; //add space | |
| for(i=0;i<aLeaf.length;i++){ | |
| aLeafSuffix[i] = "</" + aLeaf[i] + ">"; | |
| aLeaf[i] = sIndent + "<" + aLeaf[i] + ">"; | |
| } | |
| FileWriter fw = new FileWriter(sFile,true); | |
| BufferedWriter bfw = new BufferedWriter(fw); | |
| bfw.write("<?xml version=\"1.0\" ?>");bfw.newLine(); | |
| if(root.length()>0){ | |
| bfw.write("<"+root+">");bfw.newLine(); | |
| } | |
| while(k<aContent.length){ | |
| for(i=0;i<aTrunk.length;i++){ | |
| bfw.write(aTrunk[i]);bfw.newLine(); | |
| } | |
| for(i=0;i<aLeaf.length;i++){ | |
| bfw.write(aLeaf[i] + aContent[k++] + aLeafSuffix[i]);bfw.newLine(); | |
| } | |
| for(i=aTrunkSuffix.length-1;i>-1;i--){ | |
| bfw.write(aTrunkSuffix[i]);bfw.newLine(); | |
| } | |
| }//end while | |
| if(root.length()>0){ | |
| bfw.write("</"+root+">");bfw.newLine(); | |
| } | |
| bfw.flush(); //将缓冲区内的数据写入文件中 | |
| fw.close(); | |
| }catch (IOException ex){ | |
| sMsg = this.getClass().getName()+ " WriteXML IOException Error."+ex.getMessage(); | |
| }catch (Exception ex) { | |
| sMsg = this.getClass().getName()+ " WriteXML Exception Error."+ex.getMessage(); | |
| } | |
| return sMsg; | |
| } | |
| //create xml lines to ArrayList | |
| public ArrayList CreateXML(String StartIndent,String indent,String[] aTrunk,String[] aLeaf,String[] aContent) { | |
| ArrayList aList = new ArrayList(); | |
| int i=0,j=0,k=0; | |
| String sIndent = StartIndent; | |
| String[] aTrunkSuffix = new String[aTrunk.length]; | |
| String[] aLeafSuffix = new String[aLeaf.length]; | |
| String sMsg = ""; | |
| long lTime = System.currentTimeMillis(); | |
| try { | |
| //inital array | |
| for(i=0;i<aTrunk.length;i++){ | |
| for(j=0;j<i;j++){ | |
| sIndent = indent + sIndent; //add space | |
| } | |
| aTrunk[i] = sIndent + "<" + aTrunk[i] + ">"; | |
| aTrunkSuffix[i] = aTrunk[i].replaceFirst("<","</"); | |
| } | |
| sIndent = indent + sIndent; //add space | |
| for(i=0;i<aLeaf.length;i++){ | |
| aLeafSuffix[i] = "</" + aLeaf[i] + ">"; | |
| aLeaf[i] = sIndent + "<" + aLeaf[i] + ">"; | |
| } | |
| while(k<aContent.length){ | |
| for(i=0;i<aTrunk.length;i++){ | |
| aList.add(aTrunk[i]); | |
| } | |
| for(i=0;i<aLeaf.length;i++){ | |
| aList.add(aLeaf[i] + aContent[k++] + aLeafSuffix[i]); | |
| } | |
| for(i=aTrunkSuffix.length-1;i>-1;i--){ | |
| aList.add(aTrunkSuffix[i]); | |
| } | |
| }//end while | |
| return aList; | |
| }catch (Exception ex) { | |
| sMsg = this.getClass().getName()+ " CreateXML Exception Error."+ex.getMessage(); | |
| } | |
| return null; | |
| } | |
| //边生成边写XML文件 | |
| public String WriteXML(String sFile,String sXmlVer,String root,ArrayList aList) { | |
| String sMsg = ""; | |
| long lTime = System.currentTimeMillis(); | |
| try { | |
| File f = new File(sFile); | |
| if(f.exists()) | |
| { | |
| f.delete(); //if exist then delete() | |
| } | |
| FileWriter fw = new FileWriter(sFile,true); | |
| BufferedWriter bfw = new BufferedWriter(fw); | |
| bfw.write("<?"+sXmlVer+"?>");bfw.newLine(); | |
| if(root.length()>0){ | |
| bfw.write("<"+root+">");bfw.newLine(); | |
| } | |
| //write txt | |
| for(int i=0;i<aList.size();i++){ | |
| bfw.write((String)aList.get(i));bfw.newLine(); | |
| } | |
| if(root.length()>0){ | |
| //去掉元素后面的属性 | |
| bfw.write("</"+root.substring(0,root.indexOf(" "))+">"); | |
| } | |
| bfw.flush(); //将缓冲区内的数据写入文件中 | |
| fw.close(); | |
| }catch (IOException ex){ | |
| sMsg = this.getClass().getName()+ " WriteXML IOException Error."+ex.getMessage(); | |
| }catch (Exception ex) { | |
| sMsg = this.getClass().getName()+ " WriteXML Exception Error."+ex.getMessage(); | |
| } | |
| return sMsg; | |
| } | |
| public boolean isExist(String filename){ | |
| try{ | |
| File file = new File(filename); | |
| if(!file.exists()){ | |
| return false; | |
| }else{ | |
| return true; | |
| } | |
| }catch(Exception e){ | |
| return false; | |
| } | |
| } | |
| //用于判断是绝对路径还是相对路径 add by tony 20100413 | |
| public boolean isAbsolutePath(String path){ | |
| if(path.indexOf(":")>0){ | |
| return true; | |
| } | |
| return false; | |
| } | |
| /** * 功能:利用nio来快速复制文件 */ | |
| public void copyFile(String srcFile, String destFile) | |
| throws FileNotFoundException, IOException { | |
| FileInputStream fis = new FileInputStream(srcFile); | |
| FileOutputStream fos = new FileOutputStream(destFile); | |
| FileChannel fcin = fis.getChannel(); | |
| FileChannel fcout = fos.getChannel(); | |
| fcin.transferTo(0, fcin.size(), fcout); | |
| fcin.close(); | |
| fcout.close(); | |
| fis.close(); | |
| fos.close(); | |
| } | |
| /** 忽略拷贝文件时发生的错误,可能是文件不存在 */ | |
| public boolean copyFileIgnore(String file1,String file2){ | |
| try{ | |
| File file_in = new File(file1); | |
| File file_out = new File(file2); | |
| FileInputStream in1 = new FileInputStream(file_in); | |
| FileOutputStream out1 = new FileOutputStream(file_out); | |
| byte[] bytes = new byte[1024]; | |
| int c; | |
| while((c=in1.read(bytes))!=-1){ | |
| out1.write(bytes,0,c); | |
| } | |
| in1.close(); | |
| out1.close(); | |
| return true; //if sucess then return true | |
| }catch(Exception e){ | |
| return false; //if fail then return false | |
| } | |
| } | |
| /* create by czs 2006-08-08 */ | |
| public void copyDir(String dir1,String dir2) throws FileNotFoundException, IOException{ | |
| (new File(dir2)).mkdir(); | |
| File[] file = (new File(dir1)).listFiles(); | |
| for(int i=0;i<file.length;i++){ | |
| if(file[i].getName().compareTo("Thumbs.db")!=0){ | |
| if(file[i].isFile()){ | |
| copyFile(dir1+"\\"+file[i].getName(),dir2+"\\"+file[i].getName()); | |
| }else if(file[i].isDirectory()){ | |
| copyDir(dir1+"\\"+file[i].getName(),dir2+"\\"+file[i].getName()); | |
| } | |
| } | |
| } | |
| } | |
| /** * 功能:利用nio快速复制目录 */ | |
| public void copyDirectory(String srcDirectory, String destDirectory) | |
| throws FileNotFoundException, IOException { // 得到目录下的文件和目录数组 | |
| File srcDir = new File(srcDirectory); | |
| File[] fileList = srcDir.listFiles(); | |
| // 循环处理数组 | |
| if(fileList==null){ | |
| throw new FileNotFoundException(); | |
| } | |
| (new File(destDirectory)).mkdir(); | |
| for (int i = 0; i < fileList.length; i++) { | |
| if (fileList[i].isFile()) { | |
| // 数组中的对象为文件 | |
| // 如果目标目录不存在,创建目标目录 | |
| File descDir = new File(destDirectory); | |
| if (!descDir.exists()) { | |
| descDir.mkdir(); | |
| } // 复制文件到目标目录 | |
| if(fileList[i].getName().compareTo("Thumbs.db")!=0){ //windows bug | |
| copyFile(srcDirectory + "/" + fileList[i].getName(), | |
| destDirectory + "/" + fileList[i].getName()); | |
| } | |
| } else { | |
| // 数组中的对象为目录 | |
| // 如果该子目录不存在就创建(其中也包含了对多级目录的处理) | |
| File subDir = new File(destDirectory + "/" | |
| + fileList[i].getName()); | |
| if (!subDir.exists()) { | |
| subDir.mkdir(); | |
| } | |
| // 递归处理子目录 | |
| copyDirectory(srcDirectory + "/" + fileList[i].getName(), | |
| destDirectory + "/" + fileList[i].getName()); | |
| } | |
| } | |
| } | |
| /* 列出目录下的所有文件 */ | |
| public List fileList(String dir){ | |
| File f = new File(dir); | |
| File[] files = f.listFiles(); | |
| if (files==null){ | |
| return null; | |
| } | |
| int count = files.length; | |
| List list = new ArrayList(count); | |
| for (int i=0;i<count;i++){ | |
| if (!files[i].isDirectory()){ | |
| list.add(files[i]); | |
| } | |
| } | |
| return list; | |
| } | |
| /* 列出目录下的所有文件,去除prefix路径~虚拟路径 */ | |
| public List fileList(String dir, String prefix){ | |
| FormatStyle formatStyle = new FormatStyle(); | |
| File f = new File(dir); | |
| File[] files = f.listFiles(); | |
| if (files==null){ | |
| return null; | |
| } | |
| int count = files.length; | |
| List list = new ArrayList(count); | |
| for (int i=0;i<count;i++){ | |
| if (!files[i].isDirectory()){ | |
| list.add(String.valueOf(files[i]).substring(prefix.length())); | |
| list.add(formatStyle.fileSize(String.valueOf(files[i].length()))); | |
| } | |
| } | |
| return list; | |
| } | |
| /* 列出目录下前缀为prefix,后缀为suffix的文件 by tony 20110930 */ | |
| public List<String> fileList(String dir, String prefix, String suffix){ | |
| FormatStyle formatStyle = new FormatStyle(); | |
| File f = new File(dir); | |
| File[] files = f.listFiles(); | |
| if (files==null){ | |
| return null; | |
| } | |
| int count = files.length; | |
| List _list = new ArrayList(count); | |
| for (int i=0;i<count;i++){ | |
| if (!files[i].isDirectory()){ | |
| if(files[i].getName().startsWith(prefix) && files[i].getName().endsWith(suffix)){ | |
| _list.add(dir+"/"+files[i].getName()); | |
| } | |
| } | |
| } | |
| return _list; | |
| } | |
| /* 列出目录下的所有目录 */ | |
| public List fileDir(String dir){ | |
| File f = new File(dir); | |
| File[] files = f.listFiles(); | |
| if (files==null){ | |
| return null; | |
| } | |
| int count = files.length; | |
| List list = new ArrayList(count); | |
| for (int i=0;i<count;i++){ | |
| if (files[i].isDirectory()){ | |
| list.add(files[i]); | |
| } | |
| } | |
| return list; | |
| } | |
| /* 列出目录下的所有目录,去除prefix路径~虚拟路径 */ | |
| public List fileDir(String dir, String prefix){ | |
| FormatStyle formatStyle = new FormatStyle(); | |
| File f = new File(dir); | |
| File[] files = f.listFiles(); | |
| if (files==null){ | |
| return null; | |
| } | |
| int count = files.length; | |
| List list = new ArrayList(count); | |
| for (int i=0;i<count;i++){ | |
| if (files[i].isDirectory()){ | |
| list.add(String.valueOf(files[i]).substring(prefix.length())); | |
| list.add(String.valueOf(files[i].listFiles().length)); | |
| } | |
| } | |
| return list; | |
| } | |
| public List dirfileList(String dir){ | |
| File f = new File(dir); | |
| File[] files = f.listFiles(); | |
| if (files==null){ | |
| return null; | |
| } | |
| int count = files.length; | |
| List list = new ArrayList(count); | |
| for (int i=0;i<count;i++){ | |
| list.add(files[i]); | |
| } | |
| return list; | |
| } | |
| /** | |
| * Moving a File to Another Directory | |
| * @param srcFile eg: c:\windows\abc.txt | |
| * @param destPath eg: c:\temp | |
| * @return success | |
| */ | |
| public boolean moveFile(String srcFile, String destPath){ | |
| // File (or directory) to be moved | |
| File file = new File(srcFile); | |
| // Destination directory | |
| File dir = new File(destPath); | |
| // Move file to new directory | |
| boolean success = file.renameTo(new File(dir, file.getName())); | |
| return success; | |
| } | |
| /* ======================================== * | |
| * Tests Methods | |
| * ======================================== */ | |
| public static void main(String[] args) throws IOException { | |
| FileUtil fu = new FileUtil(); | |
| //fu.copyDir("E:\\WorkSpace\\java\\pan\\userstyle\\one","E:\\WorkSpace\\java\\pan\\user\\test"); | |
| fu.rename("c:\\t","c:\\a"); | |
| //fu.fileList("E:\\WorkSpace\\java\\pan\\21pan"); | |
| //fu.copyDirectory("c:\\123","c:\\456"); | |
| //String dir = "D:\tmp\t/t"; | |
| //makeDir(dir); | |
| /** FileUtil fu = new FileUtil(); | |
| boolean copy_ok=fu.copyFile("E://WorkSpace//java//eCargo//comm//uploadfile//do_upload.jsp","E://WorkSpace//java//eCargo//comm//uploadfile//hello_backup.jsp"); | |
| System.out.print(copy_ok); | |
| fu.copyDir("c:/eclog","c:/ec"); | |
| String path = "d:/tmp"; | |
| String f1 = "links.txt"; | |
| boolean b = deleteFiles(path, new String[]{f1}); | |
| System.out.println(b); | |
| FileUtil fileUtil = new FileUtil(); | |
| String[] aTrunk = {"gaosin","ex"}; | |
| String[] aLeaf = {"编号","姓名","标题","价格"}; | |
| String[] aContent = {"a","b","c","d","a1","a2","a3","a4"}; | |
| //String[] aContent = sqlDAO.CNRecordToStrings(sql); | |
| String sMsg = fileUtil.WriteXML("c:\\ex.xml"," ","gaosin-info",aTrunk,aLeaf,aContent); | |
| System.out.print(sMsg); | |
| try{ | |
| DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); | |
| DocumentBuilder builder=factory.newDocumentBuilder(); | |
| Document doc=builder.parse("links.xml"); | |
| doc.normalize(); | |
| //---取得变量---- | |
| String text="Wudong's Homepage"; | |
| String url="www.wudong.com"; | |
| String author="Wudong Liu"; | |
| String discription="A site from Wudong Liu, give u lots of suprise!!!"; | |
| //------------- | |
| Text textseg; | |
| Element link=doc.createElement("link"); | |
| Element linktext=doc.createElement("text"); | |
| textseg=doc.createTextNode(text); | |
| linktext.appendChild(textseg); | |
| link.appendChild(linktext); | |
| Element linkurl=doc.createElement("url"); | |
| textseg=doc.createTextNode(url); | |
| linkurl.appendChild(textseg); | |
| link.appendChild(linkurl); | |
| Element linkauthor=doc.createElement("author"); | |
| textseg=doc.createTextNode(author); | |
| linkauthor.appendChild(textseg); | |
| link.appendChild(linkauthor); | |
| java.util.Calendar rightNow = java.util.Calendar.getInstance(); | |
| String day=Integer.toString(rightNow.get(java.util.Calendar.DAY_OF_MONTH)); | |
| String month=Integer.toString(rightNow.get(java.util.Calendar.MONTH)); | |
| String year=Integer.toString(rightNow.get(java.util.Calendar.YEAR)); | |
| Element linkdate=doc.createElement("date"); | |
| Element linkdateday=doc.createElement("day"); | |
| textseg=doc.createTextNode(day); | |
| linkdateday.appendChild(textseg); | |
| Element linkdatemonth=doc.createElement("month"); | |
| textseg=doc.createTextNode(month); | |
| linkdatemonth.appendChild(textseg); | |
| Element linkdateyear=doc.createElement("year"); | |
| textseg=doc.createTextNode(year); | |
| linkdateyear.appendChild(textseg); | |
| linkdate.appendChild(linkdateday); | |
| linkdate.appendChild(linkdatemonth); | |
| linkdate.appendChild(linkdateyear); | |
| link.appendChild(linkdate); | |
| Element linkdiscription=doc.createElement("description"); | |
| textseg=doc.createTextNode(discription); | |
| linkdiscription.appendChild(textseg); | |
| link.appendChild(linkdiscription); | |
| doc.getDocumentElement().appendChild(link); | |
| TransformerFactory tFactory =TransformerFactory.newInstance(); | |
| Transformer transformer = tFactory.newTransformer(); | |
| DOMSource source = new DOMSource(doc); | |
| StreamResult result = new StreamResult(new java.io.File("links.xml")); | |
| transformer.transform(source, result); | |
| }catch(Exception e){ | |
| e.printStackTrace(); | |
| } | |
| */ | |
| } | |
| } |
| package cn.itcast.jk.utils.file; | |
| import java.awt.image.BufferedImage; | |
| import java.io.*; | |
| import java.util.regex.Pattern; | |
| import org.apache.poi.hssf.usermodel.*; | |
| import org.apache.poi.hssf.util.HSSFColor; | |
| import javax.imageio.ImageIO; | |
| public class PoiUtil { | |
| private static final String ENFONT = "Times New Roman"; | |
| public HSSFFont defaultFont10(HSSFWorkbook wb) { | |
| HSSFFont curFont = wb.createFont(); // 设置字体 | |
| curFont.setFontName(this.ENFONT); | |
| curFont.setCharSet(HSSFFont.DEFAULT_CHARSET); // 设置中文字体,那必须还要再对单元格进行编码设置 | |
| curFont.setFontHeightInPoints((short) 10); | |
| return curFont; | |
| } | |
| public HSSFFont defaultFont10Blod(HSSFWorkbook wb) { | |
| HSSFFont curFont = wb.createFont(); // 设置字体 | |
| curFont.setFontName(this.ENFONT); | |
| curFont.setCharSet(HSSFFont.DEFAULT_CHARSET); // 设置中文字体,那必须还要再对单元格进行编码设置 | |
| curFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); // 加粗 | |
| curFont.setFontHeightInPoints((short) 10); | |
| return curFont; | |
| } | |
| public HSSFFont defaultFont12(HSSFWorkbook wb) { | |
| HSSFFont curFont = wb.createFont(); // 设置字体 | |
| curFont.setFontName(this.ENFONT); | |
| curFont.setCharSet(HSSFFont.DEFAULT_CHARSET); // 设置中文字体,那必须还要再对单元格进行编码设置 | |
| curFont.setFontHeightInPoints((short) 12); | |
| return curFont; | |
| } | |
| public HSSFFont blackFont12(HSSFWorkbook wb) { | |
| HSSFFont theFont = wb.createFont(); // 设置字体 | |
| theFont.setFontName("黑体"); | |
| theFont.setCharSet(HSSFFont.DEFAULT_CHARSET); // 设置中文字体,那必须还要再对单元格进行编码设置 | |
| theFont.setFontHeightInPoints((short) 12); | |
| return theFont; | |
| } | |
| public HSSFFont songBoldFont16(HSSFWorkbook wb) { | |
| HSSFFont curFont = wb.createFont(); // 设置字体 | |
| curFont.setFontName("宋体"); | |
| curFont.setCharSet(HSSFFont.DEFAULT_CHARSET); // 设置中文字体,那必须还要再对单元格进行编码设置 | |
| curFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); // 加粗 | |
| curFont.setFontHeightInPoints((short) 16); | |
| return curFont; | |
| } | |
| public short money1Format(HSSFWorkbook wb) { | |
| HSSFDataFormat format = wb.createDataFormat(); | |
| return format.getFormat("#,###,###.0"); // 设置格式 | |
| } | |
| public short money2Format(HSSFWorkbook wb) { | |
| HSSFDataFormat format = wb.createDataFormat(); | |
| return format.getFormat("#,###,###.00"); // 设置格式 | |
| } | |
| public short rmb2Format(HSSFWorkbook wb) { | |
| HSSFDataFormat format = wb.createDataFormat(); | |
| return format.getFormat("\"¥\"#,###,###.00"); // 设置格式 | |
| } | |
| public short rmb4Format(HSSFWorkbook wb) { | |
| HSSFDataFormat format = wb.createDataFormat(); | |
| return format.getFormat("\"¥\"#,###,##0.00"); // 设置格式 | |
| } | |
| public short datevENFormat(HSSFWorkbook wb) { | |
| HSSFDataFormat format = wb.createDataFormat(); | |
| return format.getBuiltinFormat("m/d/yy"); // 设置格式 | |
| } | |
| // 指定图片类型为jpg | |
| public void setPicture(HSSFWorkbook wb, HSSFPatriarch patriarch, String pic, int iRow, int iCol) throws IOException { | |
| // 判断文件是否存在 | |
| File imgFile = new File(pic); | |
| if (imgFile.exists()) { | |
| // 图片处理 | |
| ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream(); | |
| BufferedImage bufferImg = ImageIO.read(imgFile); | |
| ImageIO.write(bufferImg, "jpg", byteArrayOut); | |
| HSSFClientAnchor anchor = new HSSFClientAnchor(190, 0, 1000, 0, (short) (iCol), iRow - 1, (short) (iCol + 1), iRow); | |
| patriarch.createPicture(anchor, wb.addPicture(byteArrayOut.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG)); | |
| } | |
| } | |
| // 指定图片类型为jpg | |
| public void setPicture(HSSFWorkbook wb, HSSFPatriarch patriarch, String pic, int iRowStart, int iColStart, int iRowStop, int iColStop) throws IOException { | |
| // 判断文件是否存在 | |
| File imgFile = new File(pic); | |
| if (imgFile.exists()) { | |
| // 图片处理 | |
| ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream(); | |
| BufferedImage bufferImg = ImageIO.read(imgFile); | |
| ImageIO.write(bufferImg, "jpg", byteArrayOut); | |
| // 左,上(0-255),右(0-1023),下 | |
| HSSFClientAnchor anchor = new HSSFClientAnchor(20, 1, 1018, 0, (short) (iColStart), iRowStart, (short) (iColStop), iRowStop); | |
| patriarch.createPicture(anchor, wb.addPicture(byteArrayOut.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG)); | |
| } | |
| } | |
| // 画线 | |
| public void setLine(HSSFWorkbook wb, HSSFPatriarch patriarch, int iRowStart, int iColStart, int iRowStop, int iColStop) { | |
| HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 350, 0, (short) (iColStart), iRowStart, (short) (iColStop), iRowStop); | |
| HSSFSimpleShape lineShape = patriarch.createSimpleShape(anchor); | |
| lineShape.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE); | |
| } | |
| // 计算行高度,实现行自动适应高度 defaultRowHeight = 12.00f; //每一行的高度指定 目前只实现根据回车多行来判断,不能根据单元格宽度自动回行来判断 | |
| public float getCellAutoHeight(String str, float defaultRowHeight) { | |
| if (str == null) { | |
| return defaultRowHeight; | |
| } | |
| float height = 0.00f; | |
| int n = 0; | |
| if (str.endsWith("\n")) { | |
| n = str.split("\n").length; // 回车个数 | |
| } else { | |
| n = str.split("\n").length + 1; // 回车个数 | |
| } | |
| height = defaultRowHeight * n; | |
| return height; // 计算 | |
| } | |
| //计算字符串高度 | |
| public float getregex(String charStr) { | |
| if (charStr.equals(" ")) { | |
| return 0.5f; | |
| } | |
| if (Pattern.compile("^[A-Za-z0-9]+$").matcher(charStr).matches()) { | |
| return 0.5f; | |
| } | |
| // 判断是否为全角 | |
| if (Pattern.compile("^[\u4e00-\u9fa5]+$").matcher(charStr).matches()) { | |
| return 1.00f; | |
| } | |
| if (Pattern.compile("^x00-xff]+$").matcher(charStr).matches()) { | |
| return 1.00f; | |
| } | |
| return 0.5f; | |
| } | |
| public HSSFCellStyle titlev12(HSSFWorkbook wb, HSSFFont blackFont) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setFont(blackFont); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle nobox(HSSFWorkbook wb) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setBorderTop(HSSFCellStyle.BORDER_NONE); // 实线右边框 | |
| curStyle.setBorderRight(HSSFCellStyle.BORDER_NONE); // 实线右边框 | |
| curStyle.setBorderBottom(HSSFCellStyle.BORDER_NONE); // 实线右边框 | |
| curStyle.setBorderLeft(HSSFCellStyle.BORDER_NONE); // 实线右边框 | |
| curStyle.setTopBorderColor((short) 0); | |
| return curStyle; | |
| } | |
| // 实现打印时为白框,目的就是实现涂去上行的下边框线 by tony 20110709 | |
| public HSSFCellStyle whiteBox(HSSFWorkbook wb) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setTopBorderColor(HSSFColor.WHITE.index); | |
| curStyle.setRightBorderColor(HSSFColor.WHITE.index); | |
| curStyle.setBottomBorderColor(HSSFColor.WHITE.index); | |
| curStyle.setLeftBorderColor(HSSFColor.WHITE.index); | |
| curStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle normalv12(HSSFWorkbook wb, HSSFFont defaultFont12) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setFont(defaultFont12); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle normalv10(HSSFWorkbook wb, HSSFFont defaultFont10) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle bnormalv12(HSSFWorkbook wb, HSSFFont defaultFont12) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setFont(defaultFont12); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle moneyrv10_BorderThin(HSSFWorkbook wb, HSSFFont defaultFont10, short rmb4Format) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setDataFormat(rmb4Format); | |
| curStyle.setAlignment(HSSFCellStyle.ALIGN_RIGHT); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| curStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle numberrv10_BorderThin(HSSFWorkbook wb, HSSFFont defaultFont10) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setAlignment(HSSFCellStyle.ALIGN_RIGHT); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| curStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle moneyrv12_BorderThin(HSSFWorkbook wb, HSSFFont defaultFont12, short rmb2Format) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setFont(defaultFont12); | |
| curStyle.setDataFormat(rmb2Format); | |
| curStyle.setAlignment(HSSFCellStyle.ALIGN_RIGHT); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| curStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle money1(HSSFWorkbook wb, HSSFFont defaultFont10, short money1Format) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setDataFormat(money1Format); | |
| curStyle.setAlignment(HSSFCellStyle.ALIGN_RIGHT); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle money2(HSSFWorkbook wb, HSSFFont defaultFont10, short money2Format) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setDataFormat(money2Format); | |
| curStyle.setAlignment(HSSFCellStyle.ALIGN_RIGHT); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle datevEN(HSSFWorkbook wb, HSSFFont defaultFont10, short datevENFormat) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setDataFormat(datevENFormat); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle notet10(HSSFWorkbook wb) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setWrapText(true); // 换行 | |
| curStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle notevt10(HSSFWorkbook wb, HSSFFont defaultFont10) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setWrapText(true); // 换行 | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle noterv10(HSSFWorkbook wb, HSSFFont defaultFont10) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setWrapText(true); // 换行 | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle noterv10NoWrap(HSSFWorkbook wb, HSSFFont defaultFont10) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setWrapText(false); //换行 | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); //单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle notehv10(HSSFWorkbook wb, HSSFFont defaultFont10) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setWrapText(true); // 换行 | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| // 横向居左,垂直居中 | |
| public HSSFCellStyle notehlv10(HSSFWorkbook wb, HSSFFont defaultFont10) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setWrapText(true); // 换行 | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setAlignment(HSSFCellStyle.ALIGN_LEFT); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| // 横向居右,垂直居中 | |
| public HSSFCellStyle notehrv10(HSSFWorkbook wb, HSSFFont defaultFont10) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setWrapText(true); // 换行 | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setAlignment(HSSFCellStyle.ALIGN_RIGHT); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle notehv10_BorderThin(HSSFWorkbook wb, HSSFFont defaultFont10) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setWrapText(true); // 换行 | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| curStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| return curStyle; | |
| } | |
| public HSSFCellStyle notecv10_BorderThin(HSSFWorkbook wb, HSSFFont defaultFont10) { | |
| HSSFCellStyle curStyle = wb.createCellStyle(); | |
| curStyle.setWrapText(true); // 换行 | |
| curStyle.setFont(defaultFont10); | |
| curStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); | |
| curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); // 单元格垂直居中 | |
| curStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| curStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); // 实线右边框 | |
| return curStyle; | |
| } | |
| } |
| package cn.itcast.jk.utils; | |
| public class FormatStyle { | |
| public static void main(String[] args) { | |
| // TODO: Add your code here | |
| FormatStyle formatStyle = new FormatStyle(); | |
| System.out.println(formatStyle.fileSize("10737418240")); | |
| } | |
| public String fileSize(String s1) { | |
| int iPos = 0; | |
| String s =""; | |
| StringBuffer sBuf = new StringBuffer(); | |
| try{ | |
| if(s1.trim().compareTo("")==0){ | |
| return ""; | |
| } | |
| long g = Long.parseLong("1099511627776");//数字太大,JAVA直接写会无法识别,会引起下面比较失败 | |
| //int i = Integer.parseInt(s1); | |
| double i = Double.parseDouble(s1); | |
| if(i<=0){ | |
| sBuf.append(""); | |
| }else if(i<1024){ | |
| sBuf.append(i).append(" B"); //四舍五入 | |
| iPos = sBuf.lastIndexOf(".00 B"); | |
| if(iPos>0){ | |
| sBuf.delete(iPos,sBuf.length()-2); | |
| } | |
| }else if(i<1024*1024){ | |
| sBuf.append(new java.text.DecimalFormat(".00").format(i/1024)).append(" KB"); //四舍五入 | |
| iPos = sBuf.lastIndexOf(".00 KB"); | |
| if(iPos>0){ | |
| sBuf.delete(iPos,sBuf.length()-3); | |
| } | |
| }else if(i<1024*1024*1024){ | |
| sBuf.append(new java.text.DecimalFormat(".00").format(i/(1024*1024))).append(" M"); //四舍五入 | |
| iPos = sBuf.lastIndexOf(".00 M"); | |
| if(iPos>0){ | |
| sBuf.delete(iPos,sBuf.length()-2); | |
| } | |
| }else{ | |
| sBuf.append(new java.text.DecimalFormat(".00").format(i/(1024*1024*1024))).append(" G"); //四舍五入 | |
| iPos = sBuf.lastIndexOf(".00 G"); | |
| if(iPos>0){ | |
| sBuf.delete(iPos,sBuf.length()-2); | |
| } | |
| } | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| return sBuf.toString(); | |
| } | |
| } |
| package cn.itcast.jk.utils; | |
| import java.util.HashMap; | |
| import java.util.List; | |
| import java.util.Map; | |
| /** | |
| * 分页辅助类:对分页的基本数据进行一个简单的封装 | |
| * 用来传递分页参数和查询参数params | |
| */ | |
| public class Page<T> { | |
| private int pageNo = 1; //页码,默认是第一页 | |
| private int pageSize = SysConstant.PAGE_SIZE; //每页显示的记录数,默认是10 | |
| private int totalRecord; //总记录数 | |
| private int totalPage; //总页数 | |
| private List<T> results; //对应的当前页记录 | |
| private Map<String, Object> params = new HashMap<String, Object>(); //其他的参数我们把它分装成一个Map对象 | |
| public int getPageNo() { | |
| return pageNo; | |
| } | |
| public void setPageNo(int pageNo) { | |
| this.pageNo = pageNo; | |
| } | |
| public int getPageSize() { | |
| return pageSize; | |
| } | |
| public void setPageSize(int pageSize) { | |
| this.pageSize = pageSize; | |
| } | |
| public int getTotalRecord() { | |
| return totalRecord; | |
| } | |
| public void setTotalRecord(int totalRecord) { | |
| this.totalRecord = totalRecord; | |
| //在设置总页数的时候计算出对应的总页数,在下面的三目运算中加法拥有更高的优先级,所以最后可以不加括号。 | |
| int totalPage = totalRecord%pageSize==0 ? totalRecord/pageSize : totalRecord/pageSize + 1; | |
| this.setTotalPage(totalPage); | |
| } | |
| public int getTotalPage() { | |
| return totalPage; | |
| } | |
| public void setTotalPage(int totalPage) { | |
| this.totalPage = totalPage; | |
| } | |
| public List<T> getResults() { | |
| return results; | |
| } | |
| public void setResults(List<T> results) { | |
| this.results = results; | |
| } | |
| public Map<String, Object> getParams() { | |
| return params; | |
| } | |
| public void setParams(Map<String, Object> params) { | |
| this.params = params; | |
| } | |
| public String toString() { | |
| StringBuilder builder = new StringBuilder(); | |
| builder.append("Page [pageNo=").append(pageNo).append(", pageSize=").append(pageSize).append(", results=").append(results).append(", totalPage=").append(totalPage).append(", totalRecord=").append(totalRecord).append("]"); | |
| return builder.toString(); | |
| } | |
| /* 页面链接 */ | |
| public String url; //分页按钮中的转向链接 | |
| public void setUrl(String url) { | |
| this.url = url; | |
| } | |
| public String links; | |
| public String getLinks() { | |
| StringBuffer sBuf = new StringBuffer(); | |
| int curPageNo = this.pageNo; //当前页 | |
| sBuf.append("<span class=\"noprint\" style=\"padding:5px;\">"); | |
| //利用js动态设置分页页码 | |
| sBuf.append("<script language=\"javascript\">"); | |
| sBuf.append(" function setPageNo( value ){"); | |
| sBuf.append(" document.getElementById(\"page.pageNo\").value = value;"); | |
| //sBuf.append(" alert(document.getElementById(\"pageNo\").value);"); | |
| sBuf.append(" }"); | |
| sBuf.append("</script>"); | |
| sBuf.append("<input type=\"hidden\" id=\"page.pageNo\" name=\"page.pageNo\" value=\"").append(curPageNo).append("\">"); //分页参数:当前页隐藏域 | |
| sBuf.append(" 第").append(curPageNo).append("页 / 共").append(this.totalPage).append("页 "); | |
| sBuf.append(" 总共").append(this.totalRecord).append("条记录 每页").append(this.pageSize).append("条记录 "); | |
| sBuf.append("<a href=\"#").append("\" onclick=\"setPageNo(1);formSubmit('").append(url).append("','_self')"); | |
| sBuf.append("\">[首页]"); | |
| sBuf.append("</a> "); | |
| if(this.pageNo<=1){ | |
| curPageNo = 1; | |
| }else{ | |
| curPageNo = this.pageNo - 1; | |
| } | |
| sBuf.append("<a href=\"#").append("\" onclick=\"setPageNo(").append(curPageNo).append(");formSubmit('").append(url).append("','_self')"); | |
| sBuf.append("\">[上一页]"); | |
| sBuf.append("</a> "); | |
| if(this.pageNo>=this.totalPage){ | |
| curPageNo = this.totalPage; | |
| }else{ | |
| curPageNo = this.pageNo + 1; | |
| } | |
| sBuf.append("<a href=\"#").append("\" onclick=\"setPageNo(").append(curPageNo).append(");formSubmit('").append(url).append("','_self')"); | |
| sBuf.append("\">[下一页]"); | |
| sBuf.append("</a> "); | |
| sBuf.append("<a href=\"#").append("\" onclick=\"setPageNo(").append(this.totalPage).append(");formSubmit('").append(url).append("','_self')"); | |
| sBuf.append("\">[末页]"); | |
| sBuf.append("</a> "); | |
| sBuf.append("</span>"); | |
| return sBuf.toString(); | |
| } | |
| } |
| package cn.itcast.jk.utils; | |
| import org.apache.log4j.Logger; | |
| /** | |
| * @Description: | |
| * @Author: 传智播客 java学院 传智.宋江 | |
| * @Company: http://java.itcast.cn | |
| * @CreateDate: 2014年10月31日 | |
| */ | |
| /* | |
| * 系统全局常量配置类 | |
| */ | |
| public class SysConstant { | |
| private static Logger log = Logger.getLogger(SysConstant.class); | |
| public static String CURRENT_USER_INFO = "_CURRENT_USER"; //当前用户session name | |
| public static String USE_DATABASE = "MySql"; //使用的数据库 Oracle/SQLServer | |
| public static String USE_DATABASE_VER = "5.0"; //使用的数据库版本 10g/2000 | |
| public static String DEFAULT_PASS = "123456"; //默认密码 | |
| public static int PAGE_SIZE = 5; //分页时一页显示多少条记录 | |
| } |
| package cn.itcast.jk.utils; | |
| import java.sql.Timestamp; | |
| import java.text.SimpleDateFormat; | |
| import java.text.ParseException; | |
| import java.util.Iterator; | |
| import java.util.List; | |
| import java.util.Set; | |
| import java.util.StringTokenizer; | |
| import java.util.ArrayList; | |
| import java.text.DecimalFormat; | |
| import java.net.URLEncoder; | |
| import java.net.URLDecoder; | |
| import java.util.Date; | |
| /** UtilFuns is a JavaBean. */ | |
| public class UtilFuns { | |
| static public String newLine(){ | |
| return System.getProperty("line.separator"); | |
| } | |
| /* 验证数组是否为空 */ | |
| public static boolean arrayValid(Object[] objects) { | |
| if (objects != null && objects.length > 0) { | |
| return true; | |
| } else { | |
| return false; | |
| } | |
| } | |
| /* 验证list是否为空 */ | |
| public boolean listValid(List list) { | |
| if (list != null && list.size() > 0) { | |
| return true; | |
| } else { | |
| return false; | |
| } | |
| } | |
| //获得年龄 | |
| public int age(String dateStart, String dateEnd) throws Exception{ | |
| int yearStart = Integer.parseInt(dateStart.substring(0,4)); | |
| int yearEnd = Integer.parseInt(dateEnd.substring(0,4)); | |
| return yearEnd-yearStart; | |
| } | |
| //是否为奇数 | |
| public boolean isOdd(int i){ | |
| if(i%2==0){ | |
| return false; | |
| }else{ | |
| return true; | |
| } | |
| } | |
| public String cutStr(String str,int len){ | |
| try{ | |
| str = str.substring(0,len); | |
| }catch(Exception e){ | |
| return str; | |
| } | |
| return str; | |
| } | |
| //返回固定长度串,空白地方用空格填充 by tony 20110926 | |
| public String fixSpaceStr(String str,int len){ | |
| StringBuffer sBuf = new StringBuffer(); | |
| try{ | |
| if(str.length()>len){ | |
| return str; | |
| }else{ | |
| sBuf.append(str); | |
| for(int i=0;i<(len-str.length());i++){ | |
| sBuf.append(" "); | |
| } | |
| return sBuf.toString(); | |
| } | |
| }catch(Exception e){ | |
| return str; | |
| } | |
| } | |
| public String fixSpaceStr(int number,int len){ | |
| return fixSpaceStr(String.valueOf(number),len); | |
| } | |
| //前缀空格 | |
| public String prefixSpaceStr(String str,int len){ | |
| StringBuffer sBuf = new StringBuffer(); | |
| try{ | |
| if(str.length()>len){ | |
| return str; | |
| }else{ | |
| for(int i=0;i<(len-str.length());i++){ | |
| sBuf.append(" "); | |
| } | |
| sBuf.append(str); | |
| return sBuf.toString(); | |
| } | |
| }catch(Exception e){ | |
| return str; | |
| } | |
| } | |
| //截取字符,如果超过长度,截取并加省略号 by tony 20101108 | |
| public String suspensionStr(String str,int len){ | |
| try{ | |
| str = str.substring(0,len) + "..."; | |
| }catch(Exception e){ | |
| return str; | |
| } | |
| return str; | |
| } | |
| //url get方式传递参数 by tony 20110328 | |
| public static String joinUrlParameter(List<String> sList){ | |
| StringBuffer sBuf = new StringBuffer(); | |
| for(Iterator it = sList.iterator(); it.hasNext();){ | |
| sBuf.append("&").append(it.next()).append("=").append(it.next()); | |
| } | |
| return sBuf.substring(1, sBuf.length()); //去掉第一个&符号 | |
| } | |
| /** SplitStr 功能:返回分割后的数组 | |
| * <br>输入参数:String str 设置返回系统时间样式 | |
| * <br>输入参数:String SplitFlag 设置分割字符 | |
| * <br>输出参数:string[] 返回分割后的数组 | |
| * <br>作者:宋江 | |
| * <br>时间:2003-9-7 | |
| * <br>用法: | |
| */ | |
| /* | |
| String s[] = SplitStr("asd asd we sd"," "); | |
| for (int i=0;i<s.length;i++){ | |
| System.out.println(s[i]); | |
| } | |
| */ | |
| static public String[] splitStr(String str,String SplitFlag){ | |
| int i =0; | |
| try{ | |
| StringTokenizer st = new StringTokenizer(str, SplitFlag); | |
| String tokens[] = new String[st.countTokens()]; | |
| //System.out.println(st.countTokens()); | |
| while (st.hasMoreElements()) { | |
| tokens[i] = st.nextToken(); | |
| //System.out.println(tokens[i]); | |
| i++; | |
| } | |
| return tokens; | |
| }catch(Exception e){ | |
| return null; | |
| } | |
| } | |
| //类似google那样实现多个关键字的查询,关键字之间用空格或逗号隔开 by tony 20110523 | |
| //支持的分隔符 英文逗号,中文逗号,空格 | |
| public String[] splitFindStr(String str){ | |
| if(str==null){ | |
| return null; | |
| } | |
| String[] aStr = null; | |
| str = str.replaceAll(",", " "); //英文逗号 | |
| str = str.replaceAll(",", " "); //中文逗号 | |
| aStr = this.splitStr(str, " "); //空格 | |
| return aStr; | |
| } | |
| /* 阶梯函数,例如,a,b,c 返回 a;a,b;a,b,c by tony 20110330 */ | |
| static public String[] splitStair(String str,String SplitFlag){ | |
| try{ | |
| String[] _temp = splitStr(str, SplitFlag); | |
| for(int i=1;i<_temp.length;i++){ | |
| _temp[i] = _temp[i-1]+SplitFlag+_temp[i]; | |
| } | |
| return _temp; | |
| }catch(Exception e){ | |
| return null; | |
| } | |
| } | |
| /** SplitStr 功能:将数组合并为一个字符串 | |
| * <br>输入参数:String aStr 要合并数组 | |
| * <br>输入参数:String SplitFlag 设置分割字符 | |
| * <br>输出参数:String 要合并数组 | |
| * <br>作者:宋江 | |
| * <br>时间:2004-1-9 | |
| * <br>用法: | |
| */ | |
| static public String joinStr(String[] aStr,String SplitFlag){ | |
| StringBuffer sBuffer = new StringBuffer(); | |
| if (aStr != null){ | |
| for (int i=0;i<aStr.length;i++){ | |
| sBuffer.append(aStr[i]).append(SplitFlag); | |
| } | |
| sBuffer.delete(sBuffer.length() - 1, sBuffer.length()); //去掉最后的分隔符 SplitFlag | |
| }else{ | |
| sBuffer = sBuffer.append(""); | |
| } | |
| return sBuffer.toString(); | |
| } | |
| /* 链接,但中间无链接符号 add by tony 20100322 */ | |
| static public String joinStr(String[] aStr){ | |
| StringBuffer sBuffer = new StringBuffer(); | |
| if (aStr != null){ | |
| for (int i=0;i<aStr.length;i++){ | |
| sBuffer.append(aStr[i]); | |
| } | |
| }else{ | |
| sBuffer = sBuffer.append(""); | |
| } | |
| return sBuffer.toString(); | |
| } | |
| /** JoinStr | |
| * <br>功能:将数组合并为一个字符串 | |
| * <br>输入参数:String sPrefix 数组元素加的前缀 | |
| * <br>输入参数:String sSuffix 数组元素加的后缀 | |
| * <br>输入参数:String SplitFlag 设置分割字符 | |
| * <br>输出参数:String 合并后的字符串 | |
| * <br>作者:宋江 | |
| * <br>时间:2005-3-17 | |
| * <br>用法: | |
| */ | |
| static public String joinStr(String[] aStr,String sPrefix,String sSuffix,String SplitFlag){ | |
| StringBuffer sBuffer = new StringBuffer(); | |
| if (aStr != null){ | |
| for (int i=0;i<aStr.length;i++){ | |
| sBuffer.append(sPrefix).append(aStr[i]).append(sSuffix).append(SplitFlag); | |
| } | |
| sBuffer.delete(sBuffer.length() - SplitFlag.length(), sBuffer.length()); //去掉最后的分隔符 SplitFlag | |
| }else{ | |
| sBuffer = sBuffer.append(""); | |
| } | |
| return sBuffer.toString(); | |
| } | |
| /* 返回用于in查询的串 'x','y' */ | |
| static public String joinInStr(String[] aStr){ | |
| StringBuffer sBuffer = new StringBuffer(); | |
| if (aStr != null){ | |
| for (int i=0;i<aStr.length;i++){ | |
| sBuffer.append("'").append(aStr[i]).append("'").append(","); | |
| } | |
| sBuffer.delete(sBuffer.length() - 1, sBuffer.length()); | |
| }else{ | |
| sBuffer = sBuffer.append(""); | |
| } | |
| return sBuffer.toString(); | |
| } | |
| /* 链接,但中间无链接符号 add by tony 20100322 */ | |
| static public String joinStr(String[] aStr,String sPrefix,String sSuffix){ | |
| StringBuffer sBuffer = new StringBuffer(); | |
| if (aStr != null){ | |
| for (int i=0;i<aStr.length;i++){ | |
| sBuffer.append(sPrefix).append(aStr[i]).append(sSuffix); | |
| } | |
| }else{ | |
| sBuffer = sBuffer.append(""); | |
| } | |
| return sBuffer.toString(); | |
| } | |
| /* 链接len(s)个symbol符号 add by tony 20100407 */ | |
| static public String joinStr(String s, String symbol){ | |
| StringBuffer sBuf = new StringBuffer(); | |
| for (int i=0;i<s.length();i++){ | |
| sBuf.append(symbol); | |
| } | |
| return sBuf.toString(); | |
| } | |
| static public String joinStr(int len, String symbol){ | |
| StringBuffer sBuf = new StringBuffer(); | |
| for (int i=0;i<len;i++){ | |
| sBuf.append(symbol); | |
| } | |
| return sBuf.toString(); | |
| } | |
| /** SysTime 功能:返回系统时间 | |
| * <br>输入参数:int style 设置返回系统时间样式 | |
| * <br>输出参数:string 返回系统时间样式 | |
| * <br>作者:宋江 | |
| * <br>时间:2003-6-24 | |
| * <br>存在问题:中文乱码,但JSP中显示正常。 | |
| */ | |
| static public String SysTime(String strStyle){ | |
| String s = ""; | |
| if (strStyle.compareTo("")==0){ | |
| strStyle = "yyyy-MM-dd HH:mm:ss"; //default | |
| } | |
| Date date=new Date(); | |
| SimpleDateFormat dformat=new SimpleDateFormat(strStyle); | |
| s = dformat.format(date); | |
| return s; | |
| } | |
| static public String sysTime(){ | |
| String s = ""; | |
| Date date=new Date(); | |
| SimpleDateFormat dformat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); | |
| s = dformat.format(date); | |
| return s; | |
| } | |
| static public String sysDate(){ | |
| String s = ""; | |
| Date date=new Date(); | |
| SimpleDateFormat dformat=new SimpleDateFormat("yyyy-MM-dd"); | |
| s = dformat.format(date); | |
| return s; | |
| } | |
| /* add by tony 20091113 */ | |
| public static boolean isNull(Object obj){ | |
| try{ | |
| if(obj==null){ | |
| return true; | |
| } | |
| return false; | |
| }catch(Exception e){ | |
| return false; | |
| } | |
| } | |
| public static boolean isNotNull(Object obj){ | |
| try{ | |
| if(obj==null){ | |
| return false; | |
| } | |
| return true; | |
| }catch(Exception e){ | |
| return true; | |
| } | |
| } | |
| public static boolean isEmpty(String str){ | |
| try{ | |
| if(str==null || str.equals("null") || str.equals("")){ | |
| return true; | |
| } | |
| return false; | |
| }catch(Exception e){ | |
| return false; | |
| } | |
| } | |
| public static boolean isEmpty(String strs[]){ | |
| try{ | |
| if(strs==null || strs.length<=0){ | |
| return true; | |
| } | |
| return false; | |
| }catch(Exception e){ | |
| return false; | |
| } | |
| } | |
| public static boolean isNotEmpty(String str){ | |
| try{ | |
| if(str==null || str.equals("null") || str.equals("")){ | |
| return false; | |
| } | |
| return true; | |
| }catch(Exception e){ | |
| return true; | |
| } | |
| } | |
| public static boolean isNotEmpty(Object obj){ | |
| try{ | |
| if(obj==null || obj.toString().equals("null") || obj.toString().equals("")){ | |
| return false; | |
| } | |
| return true; | |
| }catch(Exception e){ | |
| return true; | |
| } | |
| } | |
| public static boolean isNotEmpty(List obj){ | |
| try{ | |
| if(obj==null || obj.size()<=0){ | |
| return false; | |
| } | |
| return true; | |
| }catch(Exception e){ | |
| return true; | |
| } | |
| } | |
| /** 功能:用于转换为null的字段。 | |
| * <br>入参:String strvalue 设置要转换的字符串 | |
| * <br>出参:不为“null”的返回原串;为“null”返回""。 | |
| * <br>作者:宋江 | |
| * <br>时间:2003-9-16 | |
| * <p>用法:optionFuns.convertNull(String.valueOf(oi.next()))</p> | |
| */ | |
| public static String convertNull(String strvalue) | |
| { | |
| try{ | |
| if(strvalue.equals("null") || strvalue.length()==0){ | |
| return ""; | |
| }else{ | |
| return strvalue.trim(); | |
| } | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| public static String[] convertNull(String[] aContent) | |
| { | |
| try{ | |
| for(int i=0;i<aContent.length;i++){ | |
| if(aContent[i].toLowerCase().compareTo("null")==0){ | |
| aContent[i] = ""; | |
| } | |
| } | |
| return aContent; | |
| }catch(Exception e){ | |
| return null; | |
| } | |
| } | |
| public static String convertNull(Object o) | |
| { | |
| try{ | |
| String strvalue = String.valueOf(o); | |
| if(strvalue.equals(null) || strvalue.equals("null") || strvalue.length()==0){ | |
| return ""; | |
| }else{ | |
| return strvalue.trim(); | |
| } | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| //将为null的数据转为0,用在数值的值从数据库中读出的情况 | |
| public static int ConvertZero(Object o) | |
| { | |
| try{ | |
| String s = convertNull(o); | |
| if(s==""){ | |
| return 0; | |
| }else{ | |
| return Integer.parseInt(s); | |
| } | |
| }catch(Exception e){ | |
| return 0; | |
| } | |
| } | |
| //将为null的数据转为0,用在数值的值从数据库中读出的情况 | |
| public static int cvtPecrent(Object o) | |
| { | |
| try{ | |
| String s = convertNull(o); | |
| if(s==""){ | |
| return 0; | |
| }else{ | |
| return Integer.parseInt(s); | |
| } | |
| }catch(Exception e){ | |
| return 0; | |
| } | |
| } | |
| //if 0 then return ""; | |
| public static String FormatZero(Object o) | |
| { | |
| try{ | |
| String s = convertNull(o); | |
| if(s.compareTo("")==0){ | |
| return ""; | |
| }else{ | |
| return String.valueOf(s); | |
| } | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| //if 0 then return ""; | |
| public static String FormatZero(String s) | |
| { | |
| try{ | |
| if(s.compareTo("0")==0){ | |
| return ""; | |
| }else{ | |
| return s; | |
| } | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| //patter="####.000" | |
| public static String FormatNumber(Object o,String patter) | |
| { | |
| double d = 0; | |
| try { | |
| d = Double.parseDouble(String.valueOf(o)); | |
| DecimalFormat df = new DecimalFormat(patter); | |
| return df.format(d); | |
| } | |
| catch (Exception e) { | |
| System.out.println(e.getMessage()); | |
| return ""; | |
| } | |
| } | |
| //patter="####.00" | |
| public static String FormatNumber(String s) | |
| { | |
| double d = 0; | |
| try { | |
| d = Double.parseDouble(s); | |
| DecimalFormat df = new DecimalFormat(",###.00"); | |
| return df.format(d); | |
| } | |
| catch (Exception e) { | |
| System.out.println(e.getMessage()); | |
| return ""; | |
| } | |
| } | |
| //只用在表格的输出 | |
| public static String ConvertTD(String strvalue) | |
| { | |
| try{ | |
| strvalue = strvalue.trim(); | |
| if(strvalue.equals("null") || strvalue.length()==0){ | |
| return " "; | |
| }else{ | |
| return strvalue; | |
| } | |
| }catch(Exception e){ | |
| return " "; | |
| } | |
| } | |
| public static String ConvertSpaceTD(Object o) | |
| { | |
| try{ | |
| String strvalue = String.valueOf(o); | |
| strvalue = strvalue.trim(); | |
| if(strvalue.equals("null") || strvalue.length()==0){ | |
| return " "; | |
| }else{ | |
| return " " + strvalue.trim(); | |
| } | |
| }catch(Exception e){ | |
| return " "; | |
| } | |
| } | |
| /* | |
| 只转中文,不处理null | |
| 读取记录时去掉数据两边的空格;而录入数据时,维持用户的输入,哪怕用户多输入了空格 | |
| 原因在于有时可能用户有意输入空格。例如:备注字段原来有内容,现在用户想清空。 | |
| */ | |
| public static String ConvertCH(String strvalue) | |
| { | |
| System.out.println("ConvertCH:"+strvalue); | |
| try{ | |
| if(strvalue==null){ | |
| return "null"; | |
| }else if(strvalue.length()==0){ | |
| return ""; | |
| }else{ | |
| strvalue = new String(strvalue.getBytes("ISO8859_1"), "GB2312"); | |
| return strvalue; | |
| } | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| public static String ConvertCStr(String strvalue) | |
| { | |
| try{ | |
| strvalue = convertNull(strvalue); | |
| if(strvalue.equals("")){ | |
| return ""; | |
| }else{ | |
| strvalue = new String(strvalue.getBytes("ISO8859_1"), "GB2312"); | |
| return strvalue; | |
| } | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| public static String ConvertCStr(Object o) | |
| { | |
| String strvalue = ""; | |
| try{ | |
| strvalue = String.valueOf(o); | |
| strvalue = convertNull(strvalue); | |
| if(strvalue.equals("")){ | |
| return ""; | |
| }else{ | |
| strvalue = new String(strvalue.getBytes("ISO8859_1"), "GB2312"); | |
| return strvalue; | |
| } | |
| }catch(Exception e){ | |
| System.out.println("ConvertCStr:" + e.toString()); | |
| return ""; | |
| } | |
| } | |
| /** | |
| *UrlEncoder 进行URL编码 | |
| */ | |
| public String UrlEncoder(String s) | |
| { | |
| String s1 = ""; | |
| if(s == null) | |
| return ""; | |
| try | |
| { | |
| s1 = URLEncoder.encode(s); | |
| } | |
| catch(Exception e) | |
| { | |
| System.out.println("URL Encoder :" + e.toString()); | |
| s1 = ""; | |
| } | |
| return s1; | |
| } | |
| /** | |
| *URLDecoder 进行URL解码 | |
| */ | |
| public String UrlDecoder(String s) | |
| { | |
| String s1 = ""; | |
| if(s == null) | |
| return ""; | |
| try | |
| { | |
| s1 = URLDecoder.decode(s); | |
| } | |
| catch(Exception e) | |
| { | |
| System.out.println("URL Encoder :" + e.toString()); | |
| s1 = ""; | |
| } | |
| return s1; | |
| } | |
| /** | |
| * 将字符串转化成首字母大写,其余字母小写的格式 | |
| * @param source 传入字符串 | |
| * @return String | |
| */ | |
| public static String format_Aaa(String source) { | |
| if (source==null) return null; | |
| if (source.equals("")) return ""; | |
| String a; | |
| a = source.substring(0, 1); | |
| a = a.toUpperCase(); | |
| return a + source.substring(1); | |
| } | |
| /** | |
| * 将字符串转换成Long型 | |
| * @param param 传入字符串 | |
| * @return 长整形 | |
| */ | |
| public static long parseLong(String param) { | |
| long l=0; | |
| try { | |
| l = Long.parseLong(param); | |
| } | |
| catch (Exception e) { | |
| } | |
| return l; | |
| } | |
| /** | |
| * 将字符串转换成Float型 | |
| * @param param 传入字符串 | |
| * @return 浮点型 | |
| */ | |
| public static float parseFloat(String param) { | |
| float l=0; | |
| try { | |
| l = Float.parseFloat(param); | |
| } | |
| catch (Exception e) { | |
| } | |
| return l; | |
| } | |
| /** | |
| * 将字符串转换成Integer型 | |
| * @param param 传入字符串 | |
| * @return 整形 | |
| */ | |
| public static int parseInt(String param) { | |
| int l=0; | |
| try { | |
| l = Integer.parseInt(param); | |
| } | |
| catch (Exception e) { | |
| } | |
| return l; | |
| } | |
| public static Date parseDate(String currDate, String format) { | |
| SimpleDateFormat dtFormatdB = null; | |
| try { | |
| dtFormatdB = new SimpleDateFormat(format); | |
| return dtFormatdB.parse(currDate); | |
| }catch (Exception e){ | |
| dtFormatdB = new SimpleDateFormat("yyyy-MM-dd"); | |
| try { | |
| return dtFormatdB.parse(currDate); | |
| }catch (Exception ex){} | |
| } | |
| return null; | |
| } | |
| public static Date parseDate(String currDate) { | |
| SimpleDateFormat dtFormatdB = null; | |
| dtFormatdB = new SimpleDateFormat("yyyy-MM-dd"); | |
| try { | |
| return dtFormatdB.parse(currDate); | |
| }catch (Exception e){ | |
| try { | |
| return dtFormatdB.parse(currDate); | |
| }catch (Exception ex){} | |
| } | |
| return null; | |
| } | |
| public static Date parseTime(String currDate, String format) { | |
| SimpleDateFormat dtFormatdB = null; | |
| try { | |
| dtFormatdB = new SimpleDateFormat(format); | |
| return dtFormatdB.parse(currDate); | |
| }catch (Exception e){ | |
| dtFormatdB = new SimpleDateFormat("HH:mm:ss"); | |
| try { | |
| return dtFormatdB.parse(currDate); | |
| }catch (Exception ex){} | |
| } | |
| return null; | |
| } | |
| public static Date parseDateTime(String currDate, String format) { | |
| SimpleDateFormat dtFormatdB = null; | |
| try { | |
| dtFormatdB = new SimpleDateFormat(format); | |
| return dtFormatdB.parse(currDate); | |
| }catch (Exception e){ | |
| dtFormatdB = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); | |
| try { | |
| return dtFormatdB.parse(currDate); | |
| }catch (Exception ex){} | |
| } | |
| return null; | |
| } | |
| /** | |
| * 将字符串转换成Double型 | |
| * @param param 传入字符串 | |
| * @return double型 | |
| */ | |
| public static double parseDouble(String param) { | |
| double l=0; | |
| try { | |
| l = Double.parseDouble(param); | |
| } | |
| catch (Exception e) { | |
| } | |
| return l; | |
| } | |
| /** | |
| * s是否存在ArrayList中,存在返回数组下标,不存在返回-1 | |
| */ | |
| public static int existElements(String s,ArrayList aList) { | |
| try{ | |
| for (int i = 0; i < aList.size(); i ++) { | |
| if (s.equals(aList.get(i))){ | |
| return i; | |
| } | |
| } | |
| }catch(Exception e){ } | |
| return -1; | |
| } | |
| /** | |
| * s是否存在String数组中,存在返回数组下标,不存在返回-1 | |
| */ | |
| public static int existElements(String s,String[] a) { | |
| try{ | |
| for (int i = 0; i < a.length; i ++) { | |
| if (s.compareTo((a[i].trim()))==0){ | |
| return i; | |
| } | |
| } | |
| }catch(Exception e){ } | |
| return -1; | |
| } | |
| /** | |
| * 判断对象o是否存在于set对象集合中 create by tony 20090611 | |
| */ | |
| public static boolean existElements(Object o, Set set) { | |
| boolean isExists = false; | |
| Iterator it = set.iterator(); | |
| while(it.hasNext()) | |
| { | |
| Object obj = it.next(); | |
| if(o.equals(obj)) | |
| { | |
| isExists=true; | |
| break; | |
| } | |
| } | |
| return isExists; | |
| } | |
| /** | |
| * s是否存在ArrayList中,存在返回数组下标,不存在返回-1 | |
| */ | |
| public static int IsIndexOfElements(String s,ArrayList aList) { | |
| try{ | |
| String s1 = ""; | |
| for (int i = 0; i < aList.size(); i ++) { | |
| s1 = String.valueOf(aList.get(i)); | |
| if (s1.indexOf(s)!=-1){ | |
| return i; | |
| } | |
| } | |
| }catch(Exception e){ } | |
| return -1; | |
| } | |
| /** | |
| * 将ArrayList转换为一维String数组,并把其中的null换成空字符串 | |
| * @param aList 传入的Arraylist | |
| */ | |
| public String[] ArrayListToString(ArrayList aList) { | |
| String[] s = new String[aList.size()]; | |
| for (int i = 0; i < aList.size(); i ++) { | |
| s[i] = this.convertNull(aList.get(i)); | |
| } | |
| return s; | |
| } | |
| /** | |
| * 将数组中的null换成空字符串 | |
| * @param al 传入的Arraylist,同时也是输出结果 | |
| */ | |
| public static void formatArrayList(ArrayList al) { | |
| for (int i = 0; i < al.size(); i ++) { | |
| if (al.get(i) == null) | |
| al.set(i, ""); | |
| } | |
| } | |
| /** ComboList 功能:选定在下拉列表框中与查找到数据,相符的那一项内容 | |
| * <br>输入参数:String CurrentValue 查找出的数据库中的数据 | |
| * String[] content 需要输出的所有下拉列表框的内容 | |
| * <br>输出参数:返回下拉列表 | |
| * <br>注意事项:values为0开始,而且中间不能断开 | |
| */ | |
| public String ComboList(String CurrentValue, String[] content) { | |
| int i = 0; | |
| StringBuffer sBuf = new StringBuffer(); | |
| String selected = " selected"; | |
| try{ | |
| sBuf.append("<option value='' selected>--请选择--</option>"); | |
| for (i = 0; i < content.length; i++) { | |
| sBuf.append("\n<option value='").append(i).append("'"); | |
| if (CurrentValue.compareTo(String.valueOf(i)) == 0) { | |
| sBuf.append(selected); | |
| } | |
| sBuf.append(">").append(content[i]).append("</option>"); | |
| } | |
| return sBuf.toString(); | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| public String ComboListMust(String CurrentValue, String[] content) { | |
| int i = 0; | |
| StringBuffer sBuf = new StringBuffer(); | |
| String selected = " selected"; | |
| try{ | |
| for (i = 0; i < content.length; i++) { | |
| sBuf.append("\n<option value='").append(i).append("'"); | |
| if (CurrentValue.compareTo(String.valueOf(i)) == 0) { | |
| sBuf.append(selected); | |
| } | |
| sBuf.append(">").append(content[i]).append("</option>"); | |
| } | |
| return sBuf.toString(); | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| /** ComboList 功能:选定在下拉列表框中与查找到数据,相符的那一项内容 | |
| * <br>输入参数:String CurrentValue 查找出的数据库中的数据 | |
| * String[] values 需要输出的所有下拉列表框的内容所对应的值 | |
| * String[] content 需要输出的所有下拉列表框的内容 | |
| * <br>输出参数:返回下拉列表 | |
| * <br>修改:宋江 | |
| * <br>修改时间:2003-9-4 | |
| * <br>注意事项:values和content数组个数必须相同.适合从数据库中取值 | |
| <% | |
| String[] aContextOPERATE_TYPE = {"定检","轮换","抽检"}; | |
| out.print(optionFuns.ComboList("",aContextOPERATE_TYPE,aContextOPERATE_TYPE)); | |
| %> | |
| */ | |
| public String ComboList(String CurrentValue,String[] values, String[] content) { | |
| int i = 0; | |
| StringBuffer sBuf = new StringBuffer(); | |
| String selected = " selected"; | |
| try{ | |
| if(CurrentValue==null){ | |
| CurrentValue = ""; | |
| } | |
| sBuf.append("<option value='' selected>--请选择--</option>"); | |
| for (i = 0; i < content.length; i++) { | |
| sBuf.append("<option value='").append(values[i]).append("'"); | |
| if (CurrentValue.compareTo(values[i]) == 0) { | |
| sBuf.append(selected); | |
| } | |
| sBuf.append(">").append(content[i]).append("</option>"); | |
| } | |
| return sBuf.toString(); | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| public String ComboListMust(String CurrentValue,String[] values, String[] content) { | |
| int i = 0; | |
| StringBuffer sBuf = new StringBuffer(); | |
| String selected = " selected"; | |
| try{ | |
| for (i = 0; i < content.length; i++) { | |
| sBuf.append("<option value='").append(values[i]).append("'"); | |
| if (CurrentValue.compareTo(values[i]) == 0) { | |
| sBuf.append(selected); | |
| } | |
| sBuf.append(">").append(content[i]).append("</option>"); | |
| } | |
| return sBuf.toString(); | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| /** StrToTimestamp 功能:将字符串转换为Timestamp 。 | |
| * <br>输入参数:String timestampStr 设置要转换的字符串 | |
| * String pattern 要转换的format | |
| * <br>输出参数:如果格式正确返回格式后的字符串。 | |
| * 不正确返回系统日期。 | |
| * <br>作者:宋江 | |
| * <br>时间:2003-8-26 | |
| */ | |
| public static Timestamp StrToTimestamp(String timestampStr,String pattern) throws ParseException { | |
| Date date = null; | |
| SimpleDateFormat format = new SimpleDateFormat(pattern); | |
| try { | |
| date = format.parse(timestampStr); | |
| } catch (ParseException ex) { | |
| throw ex; | |
| } | |
| return date == null ? null : new Timestamp(date.getTime()); | |
| } | |
| //ex:utilFuns.StrToDateTimeFormat("2005-12-01 00:00:00.0,"yyyy-MM-dd") | |
| public static String StrToDateTimeFormat(String timestampStr,String pattern) throws ParseException { | |
| String s =""; | |
| try{ | |
| s = String.valueOf(StrToTimestamp(timestampStr, pattern)); | |
| s = s.substring(0,pattern.length()); | |
| }catch(Exception e){ } | |
| return s; | |
| } | |
| //ex:utilFuns.StrToDateTimeFormat("2005-12-01 00:00:00.0,"yyyy-MM-dd") | |
| public static String dateTimeFormat(Date date,String pattern) throws ParseException { | |
| String s =""; | |
| try{ | |
| SimpleDateFormat dformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); | |
| s = dformat.format(date); | |
| s = String.valueOf(StrToTimestamp(s, pattern)); | |
| s = s.substring(0,pattern.length()); | |
| }catch(Exception e){ } | |
| return s; | |
| } | |
| public static String dateTimeFormat(Date date) throws ParseException { | |
| String s =""; | |
| try{ | |
| SimpleDateFormat dformat = new SimpleDateFormat("yyyy-MM-dd"); | |
| s = dformat.format(date); | |
| s = String.valueOf(StrToTimestamp(s, "yyyy-MM-dd")); | |
| s = s.substring(0,"yyyy-MM-dd".length()); | |
| }catch(Exception e){ } | |
| return s; | |
| } | |
| //add by tony 20100228 转换中文 格式必须为:"yyyy-MM-dd HH:mm:ss"的一部分 | |
| public static String formatDateTimeCN(String date) throws ParseException { | |
| String s =""; | |
| try{ | |
| if(UtilFuns.isEmpty(date)){ | |
| return ""; | |
| } | |
| if(date.indexOf(".")>-1){ | |
| date = date.substring(0, date.indexOf(".")); | |
| } | |
| if(date.length()==4){ //yyyy | |
| s = date+"年"; | |
| }else if(date.length()==7){ //yyyy-MM | |
| s = date.replaceAll("-0", "-").replaceFirst("-", "年")+"月"; | |
| }else if(date.length()==10){ //yyyy-MM-dd | |
| s = date.replaceAll("-0", "-").replaceFirst("-", "年").replaceFirst("-", "月")+"日"; | |
| }else if(date.length()==2){ //HH | |
| s = date+"时"; | |
| }else if(date.length()==5){ //HH:mm | |
| s = date.replaceAll(":0", ":").replaceFirst(":", "时")+"分"; | |
| }else if(date.length()==8){ //HH:mm:ss | |
| s = date.replaceAll(":0", ":").replaceFirst(":", "时").replaceFirst(":", "分")+"秒"; | |
| }else if(date.length()==13){ //yyyy-MM-dd HH | |
| s = date.replaceAll("-0", "-").replaceFirst("-", "年").replaceFirst("-", "月").replaceAll(" 0", " ").replaceFirst(" ", "日")+"时"; | |
| }else if(date.length()==16){ //yyyy-MM-dd HH:mm | |
| s = date.replaceAll("-0", "-").replaceFirst("-", "年").replaceFirst("-", "月").replaceAll(" 0", " ").replaceFirst(" ", "日").replaceAll(":0", ":").replaceFirst(":", "时")+"分"; | |
| }else if(date.length()==19){ //yyyy-MM-dd HH:mm:ss | |
| s = date.replaceAll("-0", "-").replaceFirst("-", "年").replaceFirst("-", "月").replaceAll(" 0", " ").replaceFirst(" ", "日").replaceAll(":0", ":").replaceFirst(":", "时").replaceFirst(":", "分")+"秒"; | |
| } | |
| s = s.replaceAll("0[时分秒]", ""); //正则 0时0分0秒的都替换为空 | |
| }catch(Exception e){ } | |
| return s; | |
| } | |
| //add by tony 2011-07-26 返回英文格式日期 oct.10.2011 | |
| public static String formatDateEN(String date) throws ParseException { | |
| String s =""; | |
| int whichMonth = 1; | |
| try{ | |
| if(UtilFuns.isEmpty(date)){ | |
| return ""; | |
| } | |
| String[] aString = date.replaceAll("-0", "-").split("-"); | |
| whichMonth = Integer.parseInt(aString[1]); | |
| if(whichMonth==1){ | |
| s = "Jan"; | |
| }else if(whichMonth==2){ | |
| s = "Feb"; | |
| }else if(whichMonth==3){ | |
| s = "Mar"; | |
| }else if(whichMonth==4){ | |
| s = "Apr"; | |
| }else if(whichMonth==5){ | |
| s = "May"; | |
| }else if(whichMonth==6){ | |
| s = "Jun"; | |
| }else if(whichMonth==7){ | |
| s = "Jul"; | |
| }else if(whichMonth==8){ | |
| s = "Aug"; | |
| }else if(whichMonth==9){ | |
| s = "Sept"; | |
| }else if(whichMonth==10){ | |
| s = "Oct"; | |
| }else if(whichMonth==11){ | |
| s = "Nov"; | |
| }else if(whichMonth==12){ | |
| s = "Dec"; | |
| } | |
| s = s+"."+aString[2]+","+aString[0]; | |
| }catch(Exception e){ } | |
| return s; | |
| } | |
| //返回年月格式 2010-7 | |
| public String formatShortMonth(String strDate){ | |
| return strDate.substring(0,7).replaceAll("-0", "-"); | |
| } | |
| //返回年月格式 2010-07 | |
| public String formatMonth(String strDate){ | |
| return strDate.substring(0,7); | |
| } | |
| //删除最后1个字符 | |
| public static String delLastChar(String s){ | |
| try{ | |
| if(s.length()>0){ | |
| s = s.substring(0,s.length()-1); | |
| } | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| return s; | |
| } | |
| //删除最后len个字符 | |
| public static String delLastChars(String s,int len){ | |
| try{ | |
| if(s.length()>0){ | |
| s = s.substring(0,s.length()-len); | |
| } | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| return s; | |
| } | |
| //替换网页用字符-配合FCKEditor使用 .replaceAll("'","'") //for viewpage | |
| public String htmlReplaceAll(String s){ | |
| try{ | |
| StringBuffer sBuf = new StringBuffer(); | |
| //.replaceAll("\\\\","\\\\\\\\").replaceAll("&","&") | |
| sBuf.append(s.replaceAll(" "," ").replaceAll("<","<").replaceAll(">",">").replaceAll("\"",""").replaceAll("\n","<br\\>")); | |
| return sBuf.toString(); | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| //for viewpage by jstl/make html | |
| public static String htmlNewline(String s){ | |
| try{ | |
| //如不替换空格,html解释时会自动把多个空格显示为一个空格,这样当我们通过空格来布局时就出现textarea中和html页面展现不一致的情况 tony | |
| //s.replaceAll(" "," ") 不能进行空格的替换,否则页面内容中如果有<img src="xxx.jpg" \>等标签,内容就会显示乱;<img src="xxx.jpg"nbsp;\> | |
| return s.replaceAll(" "," ").replaceAll("\n","<br\\>"); | |
| }catch(Exception e){ | |
| return ""; | |
| } | |
| } | |
| /** getPassString 功能:用于转换为后几位的为*。 | |
| * <br>输入参数:String strvalue 设置要转换的字符串 | |
| * int Flag 位数。 | |
| * <br>输出参数:。 | |
| * <br>作者:范波 | |
| * <br>时间:2006-8-7 | |
| * <br>存在问题: | |
| * <br>用法: | |
| * <%=utilFuns.ConvertString("abcdef",3)%> | |
| */ | |
| public static String getPassString( String strvalue, int Flag ) { | |
| try { | |
| if ( strvalue.equals("null") || strvalue.compareTo("")==0){ | |
| return ""; | |
| } else { | |
| int intStrvalue = strvalue.length(); | |
| if ( intStrvalue > Flag ) { | |
| strvalue = strvalue.substring( 0, intStrvalue - Flag ); | |
| } | |
| for ( int i = 0; i < Flag; i++ ) { | |
| strvalue = strvalue + "*"; | |
| } | |
| //System.out.print( "strvalue:" + strvalue ); | |
| return strvalue; | |
| } | |
| } | |
| catch (Exception e) { | |
| return strvalue; | |
| } | |
| } | |
| /** getPassString 功能:用于转换为后几位的为*。 | |
| * <br>输入参数:String strvalue 设置要转换的字符串 | |
| * int Flag 起位数。 | |
| * int sFlag 末位数。 | |
| * <br>输出参数:。 | |
| * <br>作者:范波 | |
| * <br>时间:2006-8-7 | |
| * <br>存在问题: | |
| * <br>用法: | |
| * <%=optionFuns.getPassString(String.valueOf(oi.next()),3)%> | |
| */ | |
| public static String getPassString( String strvalue, int Flag, int sFlag ,int iPassLen ) { | |
| try { | |
| if ( strvalue.equals( "null" ) ) { | |
| return ""; | |
| } else { | |
| String strvalue1=""; | |
| String strvalue2=""; | |
| int intStrvalue = strvalue.length(); | |
| if(sFlag>=Flag){ | |
| if ( intStrvalue > Flag ) { | |
| strvalue1 = strvalue.substring( 0, Flag ); | |
| strvalue2 = strvalue.substring( sFlag, intStrvalue ); | |
| } else { | |
| strvalue1 = ""; | |
| strvalue2 = ""; | |
| } | |
| for ( int i = 0; i < iPassLen; i++ ) { | |
| strvalue1 = strvalue1 + "*"; | |
| } | |
| strvalue=strvalue1+strvalue2; | |
| } | |
| //System.out.print( "strvalue:" + strvalue ); | |
| return strvalue; | |
| } | |
| } | |
| catch (Exception e) { | |
| return strvalue; | |
| } | |
| } | |
| /* | |
| by czs 2006-8-17 | |
| OPTION: | |
| 取得字符串iStartPos位置到iEndPos位置,将中间这部分转换iPatternLen个sPattern | |
| EXSAMPLE: | |
| getPatternString("CHEN ZISHU",5,7,"*",3) | |
| RESULT: CHEN ***SHU | |
| getPatternString("CHEN ZISHU",10,0,".",3) | |
| RESULT: CHEN****** | |
| */ | |
| public static String getPatternString( String s, int iStartPos, int iEndPos, String sPattern, int iPatternLen ) { | |
| try { | |
| if (iEndPos==0) { | |
| iEndPos = s.length(); | |
| } | |
| String sStartStr = ""; | |
| String sCenterStr = ""; | |
| String sEndStr = ""; | |
| if ( s.equals("null")){ | |
| return ""; | |
| } else { | |
| int ints = s.length(); | |
| if ( ints > iStartPos ) { | |
| sStartStr = s.substring( 0, iStartPos ); | |
| }else{ | |
| return s; | |
| } | |
| if ( ints > iEndPos) { | |
| sEndStr = s.substring( iEndPos, ints ); | |
| } | |
| for ( int i = 0; i < iPatternLen; i++ ) { | |
| sCenterStr = sCenterStr + sPattern; | |
| } | |
| return sStartStr + sCenterStr + sEndStr; | |
| } | |
| } | |
| catch (Exception e) { | |
| System.out.println(e); | |
| return s; | |
| } | |
| } | |
| public static String getPatternString( String s, int iStartPos, String sPattern, int iPatternLen ) { | |
| return getPatternString(s,iStartPos,0,sPattern,iPatternLen); | |
| } | |
| public static String getPatternString( String s, int iStartPos, String sPattern ) { | |
| return getPatternString(s,iStartPos,0,sPattern,3); | |
| } | |
| /** getQQString 功能:用于转换为后几位的为*。 | |
| * <br>输入参数:String strvalue 设置要转换的字符串 | |
| * | |
| * <br>输出参数:。 | |
| * <br>作者:范波 | |
| * <br>时间:2006-8-7 | |
| * <br>存在问题: | |
| * <br>用法: | |
| * <%=optionFuns.getQQString(String.valueOf(oi.next()))%> | |
| */ | |
| public static String getQQString( String strvalue ) { | |
| try { | |
| String QQ=""; | |
| if ( strvalue.equals("") ) { | |
| return ""; | |
| } else { | |
| QQ="<img src=\"http://wpa.qq.com/pa?p=1:"+strvalue | |
| +":4\">" | |
| +" <SPAN title=\"有事叫我!\" style=\"CURSOR: hand\"" | |
| +" onclick=\"window.open('http://wpa.qq.com/msgrd?V=1&Uin="+strvalue | |
| +"&Site=21pan&Menu=yes')\">"+strvalue+"</SPAN>"; | |
| } | |
| strvalue=QQ; | |
| //System.out.print( "strvalue:" + strvalue ); | |
| return strvalue; | |
| } | |
| catch (Exception e) { | |
| return strvalue; | |
| } | |
| } | |
| public String getNoExistString(String allString, String existString){ | |
| return this.getNoExistString(this.splitStr(allString, ","), existString); | |
| } | |
| /* 返回existString中的每个字串不在allString中的 */ | |
| public String getNoExistString(String[] allString, String existString){ | |
| existString = existString + ","; | |
| if(allString==null&&allString.length==0){ | |
| return ""; | |
| } | |
| StringBuffer sBuf = new StringBuffer(); | |
| for(int i=0;i<allString.length;i++){ | |
| if(existString.indexOf(allString[i])==-1){ | |
| sBuf.append(allString[i]).append(","); | |
| } | |
| } | |
| if(sBuf.length()>1){ | |
| sBuf.delete(sBuf.length()-1, sBuf.length()); | |
| } | |
| return sBuf.toString(); | |
| } | |
| public static void main(String[] args) throws Exception { | |
| // | |
| // | |
| // java.util.List aList = new ArrayList(); | |
| // System.out.println(UtilFuns.isNotEmpty(aList)); | |
| // | |
| // System.out.println(uf.formatDateTimeCN("2011")); | |
| // System.out.println(uf.formatDateTimeCN("2011-01")); | |
| // System.out.println(uf.formatDateTimeCN("2011-01-02")); | |
| // System.out.println(uf.formatDateTimeCN("2011-01-02 03")); | |
| // System.out.println(uf.formatDateTimeCN("2011-01-02 13:05")); | |
| // System.out.println(uf.formatDateTimeCN("2011-01-02 13:05:05")); | |
| // System.out.println(uf.formatDateTimeCN("03")); | |
| // System.out.println(uf.formatDateTimeCN("13:05")); | |
| // System.out.println(uf.formatDateTimeCN("13:05:05")); | |
| // UtilFuns uf = new UtilFuns(); | |
| // System.out.println(uf.getNoExistString("1,2,3", "1,2,3,4")); | |
| // System.out.println(uf.getNoExistString("安全,生产,营销", "生产,营销")); | |
| // System.out.println("finish!"); | |
| // Set<String> set = new HashSet<String>(); | |
| // set.add("abc"); | |
| // set.add("xyz"); | |
| // set.add("abc"); | |
| // for(Iterator<String> it = set.iterator();it.hasNext();){ | |
| // System.out.println(it.next()); | |
| // } | |
| /* | |
| System.out.println(SysTime("yyyy-MM-dd")); | |
| System.out.println(SysTime("yyyy-MM-dd HH:mm:ss")); | |
| System.out.println(Double.parseDouble("12.11")); | |
| System.out.println(FormatNumber("12.11000000000f")); | |
| System.out.println(getPatternString("CHEN ZISHU",8,0,".",3)); | |
| */ | |
| //System.out.println(SysTime("yyyy年MM月")); | |
| //System.out.println(SysTime("yyyyMM")); | |
| //System.out.println(ConvertSpaceTD("")); | |
| //System.out.println(ConvertTD("")); | |
| /* process the stat data Start | |
| Statement stmt1 = conn.createStatement(); | |
| String sTableName = find_Type; | |
| String sUserName = findName; | |
| StringBuffer sBuffer = new StringBuffer(); | |
| //Step 1 clear Table userState | |
| sBuffer.append("delete * from userStat;"); | |
| //Step 2 read username from User_P and write inputnum in it | |
| sBuffer.append("select User_P.loginname,").append(sTableName).append(".createby,count(").append(sTableName).append(".createby)") | |
| .append(" from ").append(sTableName).append("") | |
| .append(" right join") | |
| .append(" User_P") | |
| .append(" on User_P.loginname=").append(sTableName).append(".createby") | |
| .append(" where 1=1"); | |
| if (find_Name.compareTo("")!=0){ | |
| sBuffer.append(" and ").append(sTableName).append(".createby='").append(sTableName).append("'"); | |
| } | |
| if (find_DateStart.compareTo("")!=0){ | |
| sBuffer.append(" and createdate<='").append(find_DateStart).append(" 00:00:00'"); | |
| } | |
| if (find_DateStart.compareTo("")!=0){ | |
| sBuffer.append(" and createdate>='").append(find_DateEnd).append(" 23:59:59'"); | |
| } | |
| sBuffer.append(" group by ").append(sTableName).append(".createby") | |
| .append(";"); | |
| //Step 3 read updatenum | |
| sBuffer.append("select count(updateby) from ").append(sTableName).append("") | |
| .append(" where ").append(sTableName).append(".updateby=''") | |
| .append(" and updatedate<='").append(find_DateStart).append(" 00:00:00'") | |
| .append(" and updatedate>='").append(find_DateEnd).append(" 23:59:59'") | |
| .append(";"); | |
| //Step 4 update the userStat.updatenum value | |
| sBuffer.append("update userStat set updatenum='3' where updateby='").append(sTableName).append("'") | |
| .append(";"); | |
| sBuffer.toString(); | |
| process the stat data End */ | |
| /* | |
| try{ | |
| System.out.println(SysDate()); | |
| System.out.println(StrToDateTimeFormat("2003-08-21 18:28:47", "yyyy-MM-")); | |
| }catch(Exception e){ | |
| } | |
| String s[] = SplitStr("asd,asd,we,sd",","); | |
| for (int curLayNum=0;curLayNum<s.length;curLayNum++){ | |
| System.out.println(s[curLayNum]); | |
| } | |
| System.out.println(JoinStr(s,",")); | |
| System.out.println(ReturnSysTime("yyyy-MM-dd")); | |
| //System.out.println(CoverDate(ReturnSysTime("yyyy-MM-dd HH:mm:ss"),"yyyy-MM-dd")); | |
| try { | |
| System.out.println(StrToTimestamp("2003-08-21 18:28:47", "yyyy-MM")); | |
| System.out.println(StrToDateTimeFormat("2003-08-21 18:28:47", "yyyy-MM")); | |
| } | |
| catch (ParseException ex) { | |
| } | |
| try { | |
| System.out.println(StrToTimestamp("2003-08-26", "yyyy-MM-dd")); | |
| } | |
| catch (ParseException ex) { | |
| System.out.println("StrToTimestamp error."); | |
| }*/ | |
| System.out.println("finish!"); | |
| } | |
| /* | |
| <script language=JavaScript> | |
| var today = new Date(); | |
| var strDate = (today.getFullYear() + "年" + | |
| (today.getMonth() + 1) + "月" + today.getDate() + "日 "); | |
| var n_day = today.getDay(); | |
| switch (n_day) | |
| { | |
| case 0:{ | |
| strDate = strDate + "星期日" | |
| }break; | |
| case 1:{ | |
| strDate = strDate + "星期一" | |
| }break; | |
| case 2:{ | |
| strDate = strDate + "星期二" | |
| }break; | |
| case 3:{ | |
| strDate = strDate + "星期三" | |
| }break; | |
| case 4:{ | |
| strDate = strDate + "星期四" | |
| }break; | |
| case 5:{ | |
| strDate = strDate + "星期五" | |
| }break; | |
| case 6:{ | |
| strDate = strDate + "星期六" | |
| }break; | |
| case 7:{ | |
| strDate = strDate + "星期日" | |
| }break; | |
| } | |
| document.write(strDate); | |
| </script> | |
| */ | |
| public String replaceLast(String string, String toReplace, String replacement) { | |
| int pos = string.lastIndexOf(toReplace); | |
| if (pos > -1) { | |
| return string.substring(0, pos) + replacement + string.substring(pos + toReplace.length(), string.length()); | |
| } else { | |
| return string; | |
| } | |
| } | |
| public static String getROOTPath(){ | |
| UtilFuns uf = new UtilFuns(); | |
| return uf.getClass().getResource("/").getPath().replace("/WEB-INF/classes/", "/").substring(1); | |
| } | |
| public String getClassRootPath(){ | |
| return this.getClass().getResource("/").getPath(); | |
| } | |
| } |
| <html> | |
| <body> | |
| <h2>Hello World!</h2> | |
| </body> | |
| </html> |
| <!DOCTYPE web-app PUBLIC | |
| "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" | |
| "http://java.sun.com/dtd/web-app_2_3.dtd" > | |
| <web-app> | |
| <display-name>Archetype Created Web Application</display-name> | |
| </web-app> |
| <?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="Spring" name="Spring"> | |
| <configuration /> | |
| </facet> | |
| <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 type="Struts2" name="Struts 2"> | |
| <configuration> | |
| <propertiesKeys disabled="false" /> | |
| </configuration> | |
| </facet> | |
| </facet> | |
| <facet type="hibernate" name="Hibernate"> | |
| <configuration> | |
| <datasource-map> | |
| <unit-entry name="hibernate.cfg.xml" /> | |
| </datasource-map> | |
| <naming-strategy-map /> | |
| <deploymentDescriptor name="hibernate.cfg.xml" url="file://$MODULE_DIR$/src/main/resources/hibernate.cfg.xml" /> | |
| </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" /> | |
| <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> | |
| <excludeFolder url="file://$MODULE_DIR$/target" /> | |
| </content> | |
| <orderEntry type="inheritedJdk" /> | |
| <orderEntry type="sourceFolder" forTests="false" /> | |
| <orderEntry type="module" module-name="jk28_service" /> | |
| <orderEntry type="module" module-name="jk28_dao" /> | |
| <orderEntry type="module" module-name="jk28_utils" /> | |
| <orderEntry type="module" module-name="jk28_domain" /> | |
| <orderEntry type="module" module-name="jk28_exception" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.9" level="project" /> | |
| <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.1.37" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.2.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-io:commons-io:2.2" level="project" /> | |
| <orderEntry type="library" name="Maven: jstl:jstl:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.shiro:shiro-all:1.2.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.6.8" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-aop:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-expression:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-context-support:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-web:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-orm:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-tx:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-beans:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.springframework:spring-core:4.2.4.RELEASE" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts.xwork:xwork-core:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-commons:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm-tree:3.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.22" level="project" /> | |
| <orderEntry type="library" name="Maven: ognl:ognl:3.0.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-spring-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-json-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.struts:struts2-convention-plugin:2.3.24" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.0.7.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.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.javassist:javassist:3.18.1-GA" level="project" /> | |
| <orderEntry type="library" name="Maven: antlr:antlr:2.7.7" 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: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-entitymanager:5.0.7.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: org.hibernate:hibernate-validator:5.2.1.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.validation:validation-api:1.1.0.Final" level="project" /> | |
| <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: c3p0:c3p0:0.9.1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-jaxws:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-resolver:xml-resolver:1.2" level="project" /> | |
| <orderEntry type="library" name="Maven: asm:asm:3.3.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-core:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.xmlschema:xmlschema-core:2.1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-soap:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-wsdl:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-databinding-jaxb:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-core:2.2.10-b140310.1920" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-bindings-xml:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-frontend-simple:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-addr:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-ws-policy:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.neethi:neethi:3.0.3" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.cxf:cxf-rt-transports-http:3.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: log4j:log4j:1.2.12" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.slf4j:slf4j-log4j12:1.6.6" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.mail:mail:1.4.4" level="project" /> | |
| <orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.xfire:xfire-core:1.2.6" level="project" /> | |
| <orderEntry type="library" name="Maven: wsdl4j:wsdl4j:1.6.1" level="project" /> | |
| <orderEntry type="library" name="Maven: jaxen:jaxen:1.1-beta-9" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xmlParserAPIs:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: xerces:xercesImpl:2.6.2" level="project" /> | |
| <orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.ws.commons:XmlSchema:1.1" level="project" /> | |
| <orderEntry type="library" name="Maven: org.codehaus.woodstox:wstx-asl:3.2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: jdom:jdom:1.0" level="project" /> | |
| <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.0" level="project" /> | |
| <orderEntry type="library" name="Maven: dom4j:dom4j:1.6" level="project" /> | |
| <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.11" level="project" /> | |
| <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" /> | |
| <orderEntry type="library" scope="TEST" name="Maven: junit:junit:3.8.1" level="project" /> | |
| <orderEntry type="library" name="Maven: com.oracle:ojdbc14:10.2.0.4.0" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:servlet-api:2.5" level="project" /> | |
| <orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet.jsp:jsp-api:2.0" level="project" /> | |
| <orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.6" level="project" /> | |
| </component> | |
| </module> |
| <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> | |
| <parent> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_parent</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </parent> | |
| <artifactId>jk28_web</artifactId> | |
| <packaging>war</packaging> | |
| <dependencies> | |
| <dependency> | |
| <groupId>cn.itcast.jk</groupId> | |
| <artifactId>jk28_service</artifactId> | |
| <version>0.0.1-SNAPSHOT</version> | |
| </dependency> | |
| </dependencies> | |
| </project> |
| package cn.itcast.jk.action; | |
| import java.util.Map; | |
| import com.opensymphony.xwork2.ActionContext; | |
| import org.apache.log4j.Logger; | |
| import org.apache.struts2.interceptor.ApplicationAware; | |
| import org.apache.struts2.interceptor.RequestAware; | |
| import org.apache.struts2.interceptor.SessionAware; | |
| import com.opensymphony.xwork2.ActionSupport; | |
| /** | |
| * @Description: | |
| * @Author: 传智播客 java学院 传智.宋江 | |
| * @Company: http://java.itcast.cn | |
| * @CreateDate: 2014年10月31日 | |
| */ | |
| //通过RequestAware, SessionAware, ApplicationAware实行接口获得request,session,application对象,action中就可直接调用 | |
| public class BaseAction extends ActionSupport implements RequestAware, SessionAware, ApplicationAware{ | |
| private static Logger log = Logger.getLogger(BaseAction.class); | |
| private static final long serialVersionUID = 1L; | |
| protected Map<String, Object> request; | |
| protected Map<String, Object> session; | |
| protected Map<String, Object> application; | |
| public Map<String, Object> getRequest() { | |
| return request; | |
| } | |
| public Map<String, Object> getSession() { | |
| return session; | |
| } | |
| public Map<String, Object> getApplication() { | |
| return application; | |
| } | |
| @Override | |
| public void setRequest(Map<String, Object> request) { | |
| this.request = request; | |
| } | |
| @Override | |
| public void setSession(Map<String, Object> session) { | |
| this.session = session; | |
| } | |
| @Override | |
| public void setApplication(Map<String, Object> application) { | |
| this.application = application; | |
| } | |
| /* | |
| * 将对象放入值栈的栈顶 | |
| * */ | |
| public void push(Object obj){ | |
| ActionContext.getContext().getValueStack().push(obj); | |
| } | |
| /* | |
| * 将key-value对放入支站的context中 | |
| * */ | |
| } |
| package cn.itcast.jk.action; | |
| /** | |
| * @Description: | |
| * @Author: 传智播客 java学院 传智.宋江 | |
| * @Company: http://java.itcast.cn | |
| * @CreateDate: 2014年10月31日 | |
| */ | |
| public class HomeAction extends BaseAction{ | |
| private String moduleName; //动态指定跳转的模块,在struts.xml中配置动态的result | |
| public String getModuleName() { | |
| return moduleName; | |
| } | |
| public void setModuleName(String moduleName) { | |
| this.moduleName = moduleName; | |
| } | |
| public String fmain(){ | |
| return "fmain"; | |
| } | |
| public String title(){ | |
| //获取session | |
| //User curUser = (User)session.get(SysConstant.CURRENT_USER_INFO); | |
| //ActionContext.getContext().getValueStack().push(curUser); | |
| return "title"; | |
| } | |
| //转向moduleName指向的模块 | |
| public String tomain(){ | |
| //获取request | |
| String moduleName = (String)request.get("moduleName"); | |
| this.setModuleName(moduleName); | |
| return "tomain"; | |
| } | |
| public String toleft(){ | |
| //获取request | |
| String moduleName = (String)request.get("moduleName"); | |
| this.setModuleName(moduleName); | |
| return "toleft"; | |
| } | |
| } |
| package cn.itcast.jk.action; | |
| import cn.itcast.jk.utils.SysConstant; | |
| /** | |
| * @Description: 登录和退出类 | |
| * @Author: 传智播客 java学院 传智.宋江 | |
| * @Company: http://java.itcast.cn | |
| * @CreateDate: 2014年10月31日 | |
| */ | |
| public class LoginAction extends BaseAction { | |
| private static final long serialVersionUID = 1L; | |
| private String username; | |
| private String password; | |
| //SSH传统登录方式 | |
| public String login() throws Exception { | |
| // if(true){ | |
| // String msg = "登录错误,请重新填写用户名密码!"; | |
| // this.addActionError(msg); | |
| // throw new Exception(msg); | |
| // } | |
| // User user = new User(username, password); | |
| // User login = userService.login(user); | |
| // if (login != null) { | |
| // ActionContext.getContext().getValueStack().push(user); | |
| // session.put(SysConstant.CURRENT_USER_INFO, login); //记录session | |
| // return SUCCESS; | |
| // } | |
| // return "login"; | |
| return SUCCESS; | |
| } | |
| //退出 | |
| public String logout(){ | |
| session.remove(SysConstant.CURRENT_USER_INFO); //删除session | |
| return "logout"; | |
| } | |
| public String getUsername() { | |
| return username; | |
| } | |
| public void setUsername(String username) { | |
| this.username = username; | |
| } | |
| public String getPassword() { | |
| return password; | |
| } | |
| public void setPassword(String password) { | |
| this.password = password; | |
| } | |
| } | |
| package cn.itcast.jk.action.sysadmin; | |
| import cn.itcast.jk.action.BaseAction; | |
| import cn.itcast.jk.domain.Dept; | |
| import cn.itcast.jk.service.DeptService; | |
| import cn.itcast.jk.utils.Page; | |
| import com.opensymphony.xwork2.ModelDriven; | |
| /** | |
| * author: zzw5005 | |
| * date: 2018/6/8 21:15 | |
| */ | |
| /* | |
| * 部门管理的Action | |
| * */ | |
| public class DeptAction extends BaseAction implements ModelDriven<Dept> { | |
| private Dept model = new Dept(); | |
| @Override | |
| public Dept getModel() { | |
| return model; | |
| } | |
| //分页查询 | |
| private Page page; | |
| public Page getPage() { | |
| return page; | |
| } | |
| public void setPage(Page page) { | |
| this.page = page; | |
| } | |
| //注入DeptService | |
| private DeptService deptService; | |
| public void setDeptService(DeptService deptService) { | |
| this.deptService = deptService; | |
| } | |
| /* | |
| * 分页查询 | |
| * */ | |
| public String list() throws Exception { | |
| deptService.findPage("from Dept", page, Dept.class, null); | |
| //设置分页的url地址 | |
| page.setUrl("deptAction_list"); | |
| //将page对象压入栈顶 | |
| super.push(page); | |
| return "list"; | |
| } | |
| /* | |
| * 查看 | |
| * id=rterytrytrytr | |
| * model对象 | |
| * id属性:rterytrytrytr | |
| * */ | |
| public String toview() throws Exception{ | |
| //1.调用业务方法,根据id, 得到对象 | |
| Dept dept = deptService.get(Dept.class, model.getId()); | |
| //2.放入栈顶 | |
| super.push(dept); | |
| //3.跳转页面 | |
| return "toview"; | |
| } | |
| } | |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <beans xmlns="http://www.springframework.org/schema/beans" | |
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
| xmlns:p="http://www.springframework.org/schema/p" | |
| xmlns:context="http://www.springframework.org/schema/context" | |
| xmlns:tx="http://www.springframework.org/schema/tx" | |
| xmlns:aop="http://www.springframework.org/schema/aop" | |
| xsi:schemaLocation="http://www.springframework.org/schema/beans | |
| http://www.springframework.org/schema/beans/spring-beans-3.0.xsd | |
| http://www.springframework.org/schema/aop | |
| http://www.springframework.org/schema/aop/spring-aop-3.0.xsd | |
| http://www.springframework.org/schema/tx | |
| http://www.springframework.org/schema/tx/spring-tx-3.0.xsd | |
| http://www.springframework.org/schema/context | |
| http://www.springframework.org/schema/context/spring-context-3.0.xsd"> | |
| <bean id="loginAction" class="cn.itcast.jk.action.LoginAction" scope="prototype"></bean> | |
| <bean id="homeAction" class="cn.itcast.jk.action.HomeAction" scope="prototype"></bean> | |
| <bean id="deptAction" class="cn.itcast.jk.action.sysadmin.DeptAction" | |
| scope="prototype"> | |
| <property name="deptService" ref="deptService"></property> | |
| </bean> | |
| </beans> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <beans xmlns="http://www.springframework.org/schema/beans" | |
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
| xmlns:p="http://www.springframework.org/schema/p" | |
| xmlns:context="http://www.springframework.org/schema/context" | |
| xmlns:tx="http://www.springframework.org/schema/tx" | |
| xmlns:aop="http://www.springframework.org/schema/aop" | |
| xsi:schemaLocation="http://www.springframework.org/schema/beans | |
| http://www.springframework.org/schema/beans/spring-beans-3.0.xsd | |
| http://www.springframework.org/schema/aop | |
| http://www.springframework.org/schema/aop/spring-aop-3.0.xsd | |
| http://www.springframework.org/schema/tx | |
| http://www.springframework.org/schema/tx/spring-tx-3.0.xsd | |
| http://www.springframework.org/schema/context | |
| http://www.springframework.org/schema/context/spring-context-3.0.xsd"> | |
| <!-- 1.dataSource--> | |
| <!-- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> | |
| <property name="driverClass" value="com.mysql.jdbc.Driver" /> | |
| <property name="jdbcUrl" value="jdbc:mysql://127.0.0.1:3306/jk1201?characterEncoding=utf8" /> | |
| <property name="user" value="root" /> | |
| <property name="password" value="root" /> | |
| </bean> --> | |
| <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> | |
| <property name="driverClass" value="oracle.jdbc.driver.OracleDriver" /> | |
| <property name="jdbcUrl" value="jdbc:oracle:thin:@127.0.0.1:1521:orcl" /> | |
| <property name="user" value="itheima" /> | |
| <property name="password" value="itheima" /> | |
| </bean> | |
| <!-- 2.sessionFactory--> | |
| <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> | |
| <property name="dataSource" ref="dataSource"></property> | |
| <property name="configLocation" value="classpath:hibernate.cfg.xml"></property> | |
| </bean> | |
| <!--Shiro安全框架产生代理子类的方式: 使用cglib方式--> | |
| <!-- 3.事务管理器--> | |
| <bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager"> | |
| <property name="sessionFactory" ref="sessionFactory"></property> | |
| </bean> | |
| <!-- 4.txAdvice--> | |
| <tx:advice id="txAdvice" transaction-manager="transactionManager"> | |
| <tx:attributes> | |
| <tx:method name="save*" propagation="REQUIRED"/> | |
| <tx:method name="insert*" propagation="REQUIRED"/> | |
| <tx:method name="update*" propagation="REQUIRED"/> | |
| <tx:method name="delete*" propagation="REQUIRED"/> | |
| <tx:method name="get*" read-only="true"/> | |
| <tx:method name="*" propagation="REQUIRED"/> | |
| </tx:attributes> | |
| </tx:advice> | |
| <!-- 5.aop--> | |
| <aop:config> | |
| <aop:pointcut id="pointcut" expression="execution(* cn.itcast.jk.service.*.*(..))" /> | |
| <aop:advisor advice-ref="txAdvice" pointcut-ref="pointcut" /> | |
| </aop:config> | |
| <!--组装其它 配置文件--> | |
| <import resource="classpath:applicationContext-action.xml"></import> | |
| <import resource="classpath:applicationContext-dao.xml"></import> | |
| <import resource="classpath:applicationContext-service.xml"></import> | |
| </beans> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!DOCTYPE hibernate-configuration PUBLIC | |
| "-//Hibernate/Hibernate Configuration DTD 3.0//EN" | |
| "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> | |
| <hibernate-configuration> | |
| <session-factory> | |
| <property name="dialect"> | |
| org.hibernate.dialect.Oracle10gDialect | |
| </property> | |
| <property name="show_sql">true</property> | |
| <property name="format_sql">false</property> | |
| <property name="hbm2ddl.auto">none</property> | |
| <!-- 懒加载,配合web.xml中配置的 openSessionInViewFilter --> | |
| <property name="hibernate.enable_lazy_load_no_trans">true</property> | |
| <!--校验模式 JPA java persistent api--> | |
| <property name="javax.persistence.validation.mode">none</property> | |
| <!-- 加载映射文件--> | |
| <mapping resource="Dept.hbm.xml"></mapping> | |
| </session-factory> | |
| </hibernate-configuration> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!DOCTYPE struts PUBLIC | |
| "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" | |
| "http://struts.apache.org/dtds/struts-2.3.dtd"> | |
| <struts> | |
| <constant name="struts.ui.theme" value="simple"/> | |
| <constant name="struts.devMode" value="true" /> | |
| <constant name="struts.i18n.encoding" value="UTF-8" /> | |
| <package name="default" namespace="/" extends="struts-default"> | |
| <action name="login" method="login" class="loginAction"> | |
| <result name="login">/WEB-INF/pages/sysadmin/login/login.jsp</result> | |
| <result name="success">/WEB-INF/pages/home/fmain.jsp</result> | |
| </action> | |
| <action name="logout" method="logout" class="loginAction"> | |
| <result name="logout">/WEB-INF/pages/sysadmin/login/logout.jsp</result> | |
| </action> | |
| <action name="homeAction_*" method="{1}" class="homeAction"> | |
| <result name="fmain">/WEB-INF/pages/home/fmain.jsp</result> | |
| <result name="title">/WEB-INF/pages/home/title.jsp</result> | |
| <result name="toleft">/WEB-INF/pages/${moduleName}/left.jsp</result> | |
| <result name="tomain">/WEB-INF/pages/${moduleName}/main.jsp</result> | |
| </action> | |
| </package> | |
| <include file="struts2/struts-sysadmin.xml"></include> | |
| </struts> | |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!DOCTYPE struts PUBLIC | |
| "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" | |
| "http://struts.apache.org/dtds/struts-2.3.dtd"> | |
| <struts> | |
| <constant name="struts.ui.theme" value="simple"/> | |
| <constant name="struts.devMode" value="true" /> | |
| <constant name="struts.i18n.encoding" value="UTF-8" /> | |
| <package name="sysadmin" namespace="/sysadmin" extends="struts-default"> | |
| <action name="deptAction_*" class="deptAction" method="{1}"> | |
| <result name="list">WEB-INF/pages/sysadmin/dept/jDeptList.jsp</result> | |
| <result name="toview">WEB-INF/pages/sysadmin/dept/jDeptView.jsp</result> | |
| <!--<result name=""></result> | |
| <result name=""></result> | |
| <result name=""></result> | |
| <result name=""></result> | |
| <result name=""></result> | |
| <result name=""></result>--> | |
| </action> | |
| </package> | |
| </struts> | |
| AMCHART-LNKS-1966-6679-1965-1082 |
| USA;4.2;3.5 | |
| UK;3.1;1.7 | |
| Canada;2.9;2.8 | |
| Japan;2.3;2.6 | |
| France;2.1;1.4 | |
| Brazil;4.9;2.6 | |
| Russia;7.2;6.4 | |
| India;7.4;8.0 | |
| China;10.1;9.9 |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <chart> | |
| <!-- <message bg_color="#BBBB00" text_color="#FFFFFF"><![CDATA[You can broadcast any message to chart from data XML file]]></message> --> | |
| <series> | |
| <value xid="100">1950</value> | |
| <value xid="101">1951</value> | |
| <value xid="102">1952</value> | |
| <value xid="103">1953</value> | |
| <value xid="104">1954</value> | |
| <value xid="105">1955</value> | |
| <value xid="106">1956</value> | |
| <value xid="107">1957</value> | |
| <value xid="108">1958</value> | |
| <value xid="109">1959</value> | |
| <value xid="110">1960</value> | |
| <value xid="111">1961</value> | |
| <value xid="112">1962</value> | |
| <value xid="113">1963</value> | |
| <value xid="114">1964</value> | |
| <value xid="115">1965</value> | |
| <value xid="116">1966</value> | |
| <value xid="117">1967</value> | |
| <value xid="118">1968</value> | |
| <value xid="119">1969</value> | |
| <value xid="120">1970</value> | |
| <value xid="121">1971</value> | |
| <value xid="122">1972</value> | |
| <value xid="123">1973</value> | |
| <value xid="124">1974</value> | |
| <value xid="125">1975</value> | |
| <value xid="126">1976</value> | |
| <value xid="127">1977</value> | |
| <value xid="128">1978</value> | |
| <value xid="129">1979</value> | |
| <value xid="130">1980</value> | |
| <value xid="131">1981</value> | |
| <value xid="132">1982</value> | |
| <value xid="133">1983</value> | |
| <value xid="134">1984</value> | |
| <value xid="135">1985</value> | |
| <value xid="136">1986</value> | |
| <value xid="137">1987</value> | |
| <value xid="138">1988</value> | |
| <value xid="139">1989</value> | |
| <value xid="140">1990</value> | |
| <value xid="141">1991</value> | |
| <value xid="142">1992</value> | |
| <value xid="143">1993</value> | |
| <value xid="144">1994</value> | |
| <value xid="145">1995</value> | |
| <value xid="146">1996</value> | |
| <value xid="147">1997</value> | |
| <value xid="148">1998</value> | |
| <value xid="149">1999</value> | |
| <value xid="150">2000</value> | |
| <value xid="151">2001</value> | |
| <value xid="152">2002</value> | |
| <value xid="153">2003</value> | |
| <value xid="154">2004</value> | |
| <value xid="155">2005</value> | |
| </series> | |
| <graphs> | |
| <graph gid="1"> | |
| <value xid="100" color="#318DBD">-0.307</value> | |
| <value xid="101" color="#318DBD">-0.168</value> | |
| <value xid="102" color="#318DBD">-0.073</value> | |
| <value xid="103" color="#318DBD">-0.027</value> | |
| <value xid="104" color="#318DBD">-0.251</value> | |
| <value xid="105" color="#318DBD">-0.281</value> | |
| <value xid="106" color="#318DBD">-0.348</value> | |
| <value xid="107" color="#318DBD">-0.074</value> | |
| <value xid="108" color="#318DBD">-0.011</value> | |
| <value xid="109" color="#318DBD">-0.074</value> | |
| <value xid="110" color="#318DBD">-0.124</value> | |
| <value xid="111" color="#318DBD">-0.024</value> | |
| <value xid="112" color="#318DBD">-0.022</value> | |
| <value xid="113">0.000</value> | |
| <value xid="114" color="#318DBD">-0.296</value> | |
| <value xid="115" color="#318DBD">-0.217</value> | |
| <value xid="116" color="#318DBD">-0.147</value> | |
| <value xid="117" color="#318DBD">-0.150</value> | |
| <value xid="118" color="#318DBD">-0.160</value> | |
| <value xid="119" color="#318DBD">-0.011</value> | |
| <value xid="120" color="#318DBD">-0.068</value> | |
| <value xid="121" color="#318DBD">-0.190</value> | |
| <value xid="122" color="#318DBD">-0.056</value> | |
| <value xid="123">0.077</value> | |
| <value xid="124" color="#318DBD">-0.213</value> | |
| <value xid="125" color="#318DBD">-0.170</value> | |
| <value xid="126" color="#318DBD">-0.254</value> | |
| <value xid="127">0.019</value> | |
| <value xid="128" color="#318DBD">-0.063</value> | |
| <value xid="129">0.050</value> | |
| <value xid="130">0.077</value> | |
| <value xid="131">0.120</value> | |
| <value xid="132">0.011</value> | |
| <value xid="133">0.177</value> | |
| <value xid="134" color="#318DBD">-0.021</value> | |
| <value xid="135" color="#318DBD">-0.037</value> | |
| <value xid="136">0.030</value> | |
| <value xid="137">0.179</value> | |
| <value xid="138">0.180</value> | |
| <value xid="139">0.104</value> | |
| <value xid="140">0.255</value> | |
| <value xid="141">0.210</value> | |
| <value xid="142">0.065</value> | |
| <value xid="143">0.110</value> | |
| <value xid="144">0.172</value> | |
| <value xid="145">0.269</value> | |
| <value xid="146">0.141</value> | |
| <value xid="147">0.353</value> | |
| <value xid="148">0.548</value> | |
| <value xid="149">0.298</value> | |
| <value xid="150">0.267</value> | |
| <value xid="151">0.411</value> | |
| <value xid="152">0.462</value> | |
| <value xid="153">0.470</value> | |
| <value xid="154">0.445</value> | |
| <value xid="155">0.470</value> | |
| </graph> | |
| <graph gid="2"> | |
| <value xid="100">-0.171</value> | |
| <value xid="101">-0.175</value> | |
| <value xid="102">-0.176</value> | |
| <value xid="103">-0.174</value> | |
| <value xid="104">-0.169</value> | |
| <value xid="105">-0.162</value> | |
| <value xid="106">-0.151</value> | |
| <value xid="107">-0.139</value> | |
| <value xid="108">-0.125</value> | |
| <value xid="109">-0.114</value> | |
| <value xid="110">-0.106</value> | |
| <value xid="111">-0.104</value> | |
| <value xid="112">-0.108</value> | |
| <value xid="113">-0.114</value> | |
| <value xid="114">-0.120</value> | |
| <value xid="115">-0.125</value> | |
| <value xid="116">-0.127</value> | |
| <value xid="117">-0.125</value> | |
| <value xid="118">-0.120</value> | |
| <value xid="119">-0.114</value> | |
| <value xid="120">-0.108</value> | |
| <value xid="121">-0.104</value> | |
| <value xid="122">-0.100</value> | |
| <value xid="123">-0.097</value> | |
| <value xid="124">-0.091</value> | |
| <value xid="125">-0.082</value> | |
| <value xid="126">-0.068</value> | |
| <value xid="127">-0.050</value> | |
| <value xid="128">-0.028</value> | |
| <value xid="129">-0.006</value> | |
| <value xid="130">0.015</value> | |
| <value xid="131">0.032</value> | |
| <value xid="132">0.046</value> | |
| <value xid="133">0.058</value> | |
| <value xid="134">0.069</value> | |
| <value xid="135">0.081</value> | |
| <value xid="136">0.094</value> | |
| <value xid="137">0.108</value> | |
| <value xid="138">0.123</value> | |
| <value xid="139">0.137</value> | |
| <value xid="140">0.150</value> | |
| <value xid="141">0.163</value> | |
| <value xid="142">0.178</value> | |
| <value xid="143">0.195</value> | |
| <value xid="144">0.216</value> | |
| <value xid="145">0.241</value> | |
| <value xid="146">0.268</value> | |
| <value xid="147">0.296</value> | |
| <value xid="148">0.323</value> | |
| <value xid="149">0.348</value> | |
| <value xid="150">0.370</value> | |
| <value xid="151">0.389</value> | |
| <value xid="152">0.404</value> | |
| <value xid="153">0.415</value> | |
| <value xid="154">0.422</value> | |
| <value xid="155">0.426</value> | |
| </graph> | |
| </graphs> | |
| </chart> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <chart> | |
| <!-- <message bg_color="#BBBB00" text_color="#FFFFFF"><![CDATA[You can broadcast any message to chart from data XML file]]></message> --> | |
| <series> | |
| <value xid="100">1950</value> | |
| <value xid="101">1951</value> | |
| <value xid="102">1952</value> | |
| <value xid="103">1953</value> | |
| <value xid="104">1954</value> | |
| <value xid="105">1955</value> | |
| <value xid="106">1956</value> | |
| <value xid="107">1957</value> | |
| <value xid="108">1958</value> | |
| <value xid="109">1959</value> | |
| <value xid="110">1960</value> | |
| <value xid="111">1961</value> | |
| <value xid="112">1962</value> | |
| <value xid="113">1963</value> | |
| <value xid="114">1964</value> | |
| <value xid="115">1965</value> | |
| <value xid="116">1966</value> | |
| <value xid="117">1967</value> | |
| <value xid="118">1968</value> | |
| <value xid="119">1969</value> | |
| <value xid="120">1970</value> | |
| <value xid="121">1971</value> | |
| <value xid="122">1972</value> | |
| <value xid="123">1973</value> | |
| <value xid="124">1974</value> | |
| <value xid="125">1975</value> | |
| <value xid="126">1976</value> | |
| <value xid="127">1977</value> | |
| <value xid="128">1978</value> | |
| <value xid="129">1979</value> | |
| <value xid="130">1980</value> | |
| <value xid="131">1981</value> | |
| <value xid="132">1982</value> | |
| <value xid="133">1983</value> | |
| <value xid="134">1984</value> | |
| <value xid="135">1985</value> | |
| <value xid="136">1986</value> | |
| <value xid="137">1987</value> | |
| <value xid="138">1988</value> | |
| <value xid="139">1989</value> | |
| <value xid="140">1990</value> | |
| <value xid="141">1991</value> | |
| <value xid="142">1992</value> | |
| <value xid="143">1993</value> | |
| <value xid="144">1994</value> | |
| <value xid="145">1995</value> | |
| <value xid="146">1996</value> | |
| <value xid="147">1997</value> | |
| <value xid="148">1998</value> | |
| <value xid="149">1999</value> | |
| <value xid="150">2000</value> | |
| <value xid="151">2001</value> | |
| <value xid="152">2002</value> | |
| <value xid="153">2003</value> | |
| <value xid="154">2004</value> | |
| <value xid="155">2005</value> | |
| </series> | |
| <graphs> | |
| <graph gid="1"> | |
| <value xid="100" color="#318DBD">-0.307</value> | |
| <value xid="101" color="#318DBD">-0.168</value> | |
| <value xid="102" color="#318DBD">-0.073</value> | |
| <value xid="103" color="#318DBD">-0.027</value> | |
| <value xid="104" color="#318DBD">-0.251</value> | |
| <value xid="105" color="#318DBD">-0.281</value> | |
| <value xid="106" color="#318DBD">-0.348</value> | |
| <value xid="107" color="#318DBD">-0.074</value> | |
| <value xid="108" color="#318DBD">-0.011</value> | |
| <value xid="109" color="#318DBD">-0.074</value> | |
| <value xid="110" color="#318DBD">-0.124</value> | |
| <value xid="111" color="#318DBD">-0.024</value> | |
| <value xid="112" color="#318DBD">-0.022</value> | |
| <value xid="113">0.000</value> | |
| <value xid="114" color="#318DBD">-0.296</value> | |
| <value xid="115" color="#318DBD">-0.217</value> | |
| <value xid="116" color="#318DBD">-0.147</value> | |
| <value xid="117" color="#318DBD">-0.150</value> | |
| <value xid="118" color="#318DBD">-0.160</value> | |
| <value xid="119" color="#318DBD">-0.011</value> | |
| <value xid="120" color="#318DBD">-0.068</value> | |
| <value xid="121" color="#318DBD">-0.190</value> | |
| <value xid="122" color="#318DBD">-0.056</value> | |
| <value xid="123">0.077</value> | |
| <value xid="124" color="#318DBD">-0.213</value> | |
| <value xid="125" color="#318DBD">-0.170</value> | |
| <value xid="126" color="#318DBD">-0.254</value> | |
| <value xid="127">0.019</value> | |
| <value xid="128" color="#318DBD">-0.063</value> | |
| <value xid="129">0.050</value> | |
| <value xid="130">0.077</value> | |
| <value xid="131">0.120</value> | |
| <value xid="132">0.011</value> | |
| <value xid="133">0.177</value> | |
| <value xid="134" color="#318DBD">-0.021</value> | |
| <value xid="135" color="#318DBD">-0.037</value> | |
| <value xid="136">0.030</value> | |
| <value xid="137">0.179</value> | |
| <value xid="138">0.180</value> | |
| <value xid="139">0.104</value> | |
| <value xid="140">0.255</value> | |
| <value xid="141">0.210</value> | |
| <value xid="142">0.065</value> | |
| <value xid="143">0.110</value> | |
| <value xid="144">0.172</value> | |
| <value xid="145">0.269</value> | |
| <value xid="146">0.141</value> | |
| <value xid="147">0.353</value> | |
| <value xid="148">0.548</value> | |
| <value xid="149">0.298</value> | |
| <value xid="150">0.267</value> | |
| <value xid="151">0.411</value> | |
| <value xid="152">0.462</value> | |
| <value xid="153">0.470</value> | |
| <value xid="154">0.445</value> | |
| <value xid="155">0.470</value> | |
| </graph> | |
| <graph gid="2"> | |
| <value xid="100">-0.171</value> | |
| <value xid="101">-0.175</value> | |
| <value xid="102">-0.176</value> | |
| <value xid="103">-0.174</value> | |
| <value xid="104">-0.169</value> | |
| <value xid="105">-0.162</value> | |
| <value xid="106">-0.151</value> | |
| <value xid="107">-0.139</value> | |
| <value xid="108">-0.125</value> | |
| <value xid="109">-0.114</value> | |
| <value xid="110">-0.106</value> | |
| <value xid="111">-0.104</value> | |
| <value xid="112">-0.108</value> | |
| <value xid="113">-0.114</value> | |
| <value xid="114">-0.120</value> | |
| <value xid="115">-0.125</value> | |
| <value xid="116">-0.127</value> | |
| <value xid="117">-0.125</value> | |
| <value xid="118">-0.120</value> | |
| <value xid="119">-0.114</value> | |
| <value xid="120">-0.108</value> | |
| <value xid="121">-0.104</value> | |
| <value xid="122">-0.100</value> | |
| <value xid="123">-0.097</value> | |
| <value xid="124">-0.091</value> | |
| <value xid="125">-0.082</value> | |
| <value xid="126">-0.068</value> | |
| <value xid="127">-0.050</value> | |
| <value xid="128">-0.028</value> | |
| <value xid="129">-0.006</value> | |
| <value xid="130">0.015</value> | |
| <value xid="131">0.032</value> | |
| <value xid="132">0.046</value> | |
| <value xid="133">0.058</value> | |
| <value xid="134">0.069</value> | |
| <value xid="135">0.081</value> | |
| <value xid="136">0.094</value> | |
| <value xid="137">0.108</value> | |
| <value xid="138">0.123</value> | |
| <value xid="139">0.137</value> | |
| <value xid="140">0.150</value> | |
| <value xid="141">0.163</value> | |
| <value xid="142">0.178</value> | |
| <value xid="143">0.195</value> | |
| <value xid="144">0.216</value> | |
| <value xid="145">0.241</value> | |
| <value xid="146">0.268</value> | |
| <value xid="147">0.296</value> | |
| <value xid="148">0.323</value> | |
| <value xid="149">0.348</value> | |
| <value xid="150">0.370</value> | |
| <value xid="151">0.389</value> | |
| <value xid="152">0.404</value> | |
| <value xid="153">0.415</value> | |
| <value xid="154">0.422</value> | |
| <value xid="155">0.426</value> | |
| </graph> | |
| </graphs> | |
| </chart> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- Value between [] brackets, for example [#FFFFFF] shows default value which is used if this parameter is not set --> | |
| <!-- This means, that if you are happy with this value, you can delete this line at all and reduce file size --> | |
| <!-- value or explanation between () brackets shows the range or type of values you should use for this parameter --> | |
| <!-- the top left corner has coordinates x = 0, y = 0 --> | |
| <!-- "!" before x or y position (for example: <x>!20</x>) means that the coordinate will be calculated from the right side or the bottom --> | |
| <settings> | |
| <type>column</type> <!-- [column] (column / bar) --> | |
| <data_type>xml</data_type> <!-- [xml] (xml / csv) --> | |
| <csv_separator></csv_separator> <!-- [;] (string) csv file data separator (you need it only if you are using csv file for your data) --> | |
| <skip_rows></skip_rows> <!-- [0] (Number) if you are using csv data type, you can set the number of rows which should be skipped here --> | |
| <font>Tahoma</font> <!-- [Arial] (font name) use device fonts, such as Arial, Times New Roman, Tahoma, Verdana... --> | |
| <text_size></text_size> <!-- [11] (Number) text size of all texts. Every text size can be set individually in the settings below --> | |
| <text_color></text_color> <!-- [#000000] (hex color code) main text color. Every text color can be set individually in the settings below--> | |
| <decimals_separator></decimals_separator> <!-- [,] (string) decimal separator. Note, that this is for displaying data only. Decimals in data xml file must be separated with a dot --> | |
| <thousands_separator></thousands_separator> <!-- [ ] (string) thousand separator. use "none" if you don't want to separate --> | |
| <scientific_min></scientific_min> <!-- [0.000001] If absolute value of your number is equal or less then scientific_min, this number will be formatted using scientific notation, for example: 0.0000023 -> 2.3e-6 --> | |
| <scientific_max></scientific_max> <!-- [1000000000000000] If absolute value of your number is equal or bigger then scientific_max, this number will be formatted using scientific notation, for example: 15000000000000000 -> 1.5e16 --> | |
| <digits_after_decimal></digits_after_decimal> <!-- [] (Number) if your value has less digits after decimal then is set here, zeroes will be added --> | |
| <redraw></redraw> <!-- [false] (true / false) if your chart's width or height is set in percents, and redraw is set to true, the chart will be redrawn then screen size changes --> | |
| <!-- this function is beta, be careful. Legend, buttons labels will not be repositioned if you set your x and y values for these objects --> | |
| <reload_data_interval></reload_data_interval> <!-- [0] (Number) how often data should be reloaded (time in seconds) --> | |
| <preloader_on_reload></preloader_on_reload> <!-- [false] (true / false) Whether to show preloaded when data or settings are reloaded --> | |
| <add_time_stamp></add_time_stamp> <!-- [false] (true / false) if true, a unique number will be added every time flash loads data. Mainly this feature is useful if you set reload _data_interval --> | |
| <precision></precision> <!-- [2] (Number) shows how many numbers should be shown after comma for calculated values (percents) --> | |
| <depth>0</depth> <!-- [0] (Number) the depth of chart and columns (for 3D effect) --> | |
| <angle>0</angle> <!-- [30] (0 - 90) angle of chart area and columns (for 3D effect) --> | |
| <colors></colors> <!-- [#FF6600,#FCD202,#B0DE09,#0D8ECF,#2A0CD0,#CD0D74,#CC0000,#00CC00,#0000CC,#DDDDDD,#999999,#333333,#990000] Colors of graphs. if the graph color is not set, color from this array will be used --> | |
| <js_enabled></js_enabled> <!-- [true] (true / false) In case you don't use any flash - JavaScript communication, you shuold set this setting to false - this will save some CPU and will disable the security warning message which appears when opening the chart from hard drive. --> | |
| <column> | |
| <type></type> <!-- [clustered] (clustered, stacked, 100% stacked, 3d column) --> | |
| <width>85</width> <!-- [80] (0 - 100) width of column (in percents) --> | |
| <spacing>0</spacing> <!-- [5] (Number) space between columns of one category axis value, in pixels. Negative values can be used. --> | |
| <grow_time>3</grow_time> <!-- [0] (Number) grow time in seconds. Leave 0 to appear instantly --> | |
| <grow_effect></grow_effect> <!-- [elastic] (elastic, regular, strong) --> | |
| <sequenced_grow>true</sequenced_grow> <!-- [false] (true / false) whether columns should grow at the same time or one after another --> | |
| <alpha></alpha> <!-- [100] (Number) alpha of all columns --> | |
| <border_color></border_color> <!-- [#FFFFFF] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (Number) --> | |
| <data_labels> | |
| <![CDATA[]]> <!-- [] ({title} {value} {series} {percents} {start} {difference} {total}) You can format any data label: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </data_labels> | |
| <data_labels_text_color></data_labels_text_color> <!-- [text_color] (hex color code) --> | |
| <data_labels_text_size></data_labels_text_size> <!-- [text_size] (Number) --> | |
| <data_labels_position></data_labels_position> <!-- [outside] (inside, outside, above). This setting is only for clustered chart. --> | |
| <!-- if you set "above" for column chart, the data label will be displayed inside column, rotated by 90 degrees --> | |
| <data_labels_always_on></data_labels_always_on> <!-- [false] (true / false) If the data label is placed inside of the bar or column (stacked chart) and the bar or column is too small for the label to fit, it is hidden. If you set this setting to "true", the data labels will always be visible. --> | |
| <balloon_text> | |
| <![CDATA[]]> <!-- [] ({title} {value} {series} {percents} {start} {difference} {total}) You can format any data label: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </balloon_text> | |
| <link_target></link_target> <!-- [] (_blank, _top ...) --> | |
| <gradient></gradient> <!-- [vertical] (horizontal / vertical) Direction of column gradient. Gradient colors are defined in graph settings below. --> | |
| <bullet_offset></bullet_offset> <!-- [0] (Number) distance from column / bar to the bullet --> | |
| <hover_brightness></hover_brightness> <!-- [0] (from -255 to 255) The column may darken/lighten when the use rolls over it. The intensity may be set here --> | |
| <hover_color>#EED600</hover_color> <!-- [] (hex color code) --> | |
| <corner_radius_top></corner_radius_top> <!-- [0] (Number, Number%) Corner radius of the column's top. Works only if depth is = 0 --> | |
| <corner_radius_bottom></corner_radius_bottom> <!-- [0] (Number, Number%) Corner radius of the column's bottom. Works only if depth is = 0 --> | |
| </column> | |
| <line> <!-- Here are general settings for "line" graph type. You can set most of these settings for individual lines in graph settings below --> | |
| <connect></connect> <!-- [false] (true / false) whether to connect points if data is missing --> | |
| <width></width> <!-- [2] (Number) line width --> | |
| <alpha></alpha> <!-- [100] (Number) line alpha --> | |
| <fill_alpha></fill_alpha> <!-- [0] (Number) fill alpha --> | |
| <bullet></bullet> <!-- [] (square, round, square_outlined, round_outlined, square_outline, round_outline, filename.swf) can be used predefined bullets or loaded custom bullets. Leave empty if you don't want to have bullets at all. Outlined bullets use plot area color for outline color --> | |
| <bullet_size></bullet_size> <!-- [8] (Number) bullet size --> | |
| <data_labels> | |
| <![CDATA[]]> <!-- [] ({title} {value} {series} {percents} {start} {difference} {total}) You can format any data label: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </data_labels> | |
| <data_labels_text_color></data_labels_text_color> <!-- [text_color] (hex color code) --> | |
| <data_labels_text_size></data_labels_text_size> <!-- [text_size] (Number) --> | |
| <balloon_text> | |
| <![CDATA[]]> <!-- [] use the same formatting rules as for data labels --> | |
| </balloon_text> | |
| <link_target></link_target> <!-- [] (_blank, _top ...) --> | |
| </line> | |
| <background> <!-- BACKGROUND --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) use 0 if you are using custom swf or jpg for background --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha>15</border_alpha> <!-- [0] (0 - 100) --> | |
| <file></file> <!-- [] (filename) swf or jpg file of a background. Do not use progressive jpg file, it will be not visible with flash player 7 --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| </background> | |
| <plot_area> <!-- PLOT AREA (the area between axes) --> | |
| <color></color> <!-- [#FFFFFF](hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) if you want it to be different than background color, use bigger than 0 value --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <margins> <!-- plot area margins --> | |
| <left>70</left> <!-- [60](Number / Number%) --> | |
| <top>60</top> <!-- [60](Number / Number%) --> | |
| <right>50</right> <!-- [60](Number / Number%) --> | |
| <bottom>80</bottom> <!-- [80](Number / Number%) --> | |
| </margins> | |
| </plot_area> | |
| <grid> <!-- GRID --> | |
| <category> <!-- category axis grid --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha>5</alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false](true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| </category> | |
| <value> <!-- value axis grid --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha>0</alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color>000000</fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha>5</fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </value> | |
| </grid> | |
| <values> <!-- VALUES --> | |
| <category> <!-- category axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <frequency>3</frequency> <!-- [1] (Number) how often values should be placed --> | |
| <start_from></start_from> <!-- [1] (Number) you can set series from which category values will be displayed --> | |
| <rotate>45</rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| </category> | |
| <value> <!-- value axis --> | |
| <enabled>true</enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <min>0</min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically. --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) --> | |
| <unit_position></unit_position> <!-- [right] (right / left) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </value> | |
| </values> | |
| <axes> <!-- axes --> | |
| <category> <!-- category axis --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width>1</width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| </category> | |
| <value> <!-- value axis --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width>1</width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </value> | |
| </axes> | |
| <balloon> <!-- BALLOON --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [] (hex color code) balloon background color. If empty, slightly darker then current column color will be used --> | |
| <alpha>85</alpha> <!-- [100] (0 - 100) --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <max_width></max_width> <!-- [220] (Number) The maximum width of a balloon --> | |
| <corner_radius></corner_radius> <!-- [0] (Number) Corner radius of a balloon. If you set it > 0, the balloon will not display arrow --> | |
| <border_width></border_width> <!-- [0] (Number) --> | |
| <border_alpha></border_alpha> <!-- [balloon.alpha] (Number) --> | |
| <border_color></border_color> <!-- [balloon.color] (hex color code) --> | |
| </balloon> | |
| <legend> <!-- LEGEND --> | |
| <enabled>false</enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) if empty, will be equal to left margin --> | |
| <y></y> <!-- [] (Number / Number% / !Number) if empty, will be below plot area --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will be equal to plot area width --> | |
| <max_columns></max_columns> <!-- [] (Number) the maximum number of columns in the legend --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) background color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) border color --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) border alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <spacing></spacing> <!-- [10] (Number) vertical and horizontal gap between legend entries --> | |
| <margins></margins> <!-- [0] (Number) legend margins (space between legend border and legend entries, recommended to use only if legend border is visible or background color is different from chart area background color) --> | |
| <reverse_order></reverse_order> <!-- [false] (true / false) whether to sort legend entries in a reverse order --> | |
| <align></align> <!-- [left] (left / center / right) alignment of legend entries --> | |
| <key> <!-- KEY (the color box near every legend entry) --> | |
| <size></size> <!-- [16] (Number) key size--> | |
| <border_color></border_color> <!-- [] (hex color code) leave empty if you don't want to have border --> | |
| </key> | |
| </legend> | |
| <export_as_image> <!-- export_as_image feature works only on a web server --> | |
| <file></file> <!-- [] (filename) if you set filename here, context menu (then user right clicks on flash movie) "Export as image" will appear. This will allow user to export chart as an image. Collected image data will be posted to this file name (use amcolumn/export.php or amcolumn/export.aspx) --> | |
| <target></target> <!-- [] (_blank, _top ...) target of a window in which export file must be called --> | |
| <x></x> <!-- [0] (Number / Number% / !Number) x position of "Collecting data" text --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of "Collecting data" text. If not set, will be aligned to the bottom of flash movie --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of "Collecting data" text --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </export_as_image> | |
| <error_messages> <!-- "error_messages" settings will be applied for all error messages except the one which is showed if settings file wasn't found --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of error message. If not set, will be aligned to the center --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of error message. If not set, will be aligned to the center --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of error message. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </error_messages> | |
| <strings> | |
| <no_data></no_data> <!-- [No data for selected period] (text) if data is missing, this message will be displayed --> | |
| <export_as_image></export_as_image> <!-- [Export as image] (text) text for right click menu --> | |
| <collecting_data></collecting_data> <!-- [Collecting data] (text) this text is displayed while exporting chart to an image --> | |
| <!-- the strings below are only important if you format your axis values as durations --> | |
| <ss></ss> <!-- [] unit of seconds --> | |
| <mm></mm> <!-- [:] unit of minutes --> | |
| <hh></hh> <!-- [:] unit of hours --> | |
| <DD></DD> <!-- [d. ] unit of days --> | |
| </strings> | |
| <context_menu> <!-- context menu allows you to controll right-click menu items. You can add custom menu items to create custom controls --> | |
| <!-- "function_name" specifies JavaScript function which will be called when user clicks on this menu. You can pass variables, for example: function_name="alert('something')" --> | |
| <!-- "title" sets menu item text. Do not use for title: Show all, Zoom in, Zoom out, Print, Settings... --> | |
| <!-- you can have any number of custom menus. Uncomment the line below to enable this menu and add apropriate JS function to your html file. --> | |
| <!-- <menu function_name="printChart" title="Print chart"></menu> --> | |
| <default_items> | |
| <zoom></zoom> <!-- [false] (true / false) to show or not flash players zoom menu --> | |
| <print></print> <!-- [true] (true / false) to show or not flash players print menu --> | |
| </default_items> | |
| </context_menu> | |
| <labels> <!-- LABELS --> | |
| <!-- you can add as many labels as you want --> | |
| <!-- labels can also be added in data xml file, using exactly the same structure like it is here --> | |
| <label lid="0"> | |
| <x>10</x> <!-- [0] (Number / Number% / !Number) --> | |
| <y>400</y> <!-- [0] (Number / Number% / !Number) --> | |
| <rotate>true</rotate> <!-- [false] (true / false) --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will stretch from left to right untill label fits --> | |
| <align>center</align> <!-- [left] (left / center / right) --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [text_size](Number) button text size --> | |
| <text> <!-- [] (text) html tags may be used (supports <b>, <i>, <u>, <font>, <a href="">, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| <![CDATA[<b>Temperature anomaly, C (1950 - 2005)</b>]]> | |
| </text> | |
| </label> | |
| <label lid="1"> | |
| <x>0</x> | |
| <y>380</y> | |
| <width></width> | |
| <align>right</align> | |
| <text_color></text_color> | |
| <text_size>11</text_size> | |
| <text> | |
| <![CDATA[Source: <a href="http://www.cru.uea.ac.uk/cru/info/warming/" target="_blank"><u>Climatic Research Unit</u></a>]]> | |
| </text> | |
| </label> | |
| </labels> | |
| <graphs> <!-- GRAPHS SETTINGS. These settings can also be specified in data file, as attributes of <graph>, in this case you can delete everything from <graphs> to </graphs> (including) --> | |
| <!-- It is recommended to have graph settings here if you don't want to mix data with other params --> | |
| <!-- copy <graph>...</graph> (including) as many times as many graphs you have and edit settings individually --> | |
| <!-- if graph settings are defined both here and in data file, the ones from data file are used --> | |
| <graph gid="1"> <!-- if you are using XML data file, graph "gid" must match graph "gid" in data file --> | |
| <type>column</type> <!-- [column] (column/line) --> | |
| <title>Anomaly</title> <!-- [] (graph title) --> | |
| <color>B92F2F</color> <!-- [] (hex color code) --> | |
| <alpha></alpha> <!-- [column.alpha (line.alpha)] (0 - 100) --> | |
| <data_labels> | |
| <![CDATA[]]> <!-- [column.data_labels (line.data_labels)] ({title} {value} {series} {percents} {start} {difference} {total}) You can format any data label: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </data_labels> | |
| <gradient_fill_colors></gradient_fill_colors> <!-- [] (hex color codes separated by comas) columns can be filled with gradients. Set any number of colors here. Note, that the legend key will be filled with color value, not with gradient. --> | |
| <balloon_color></balloon_color> <!-- [balloon.color] (hex color code) leave empty to use the same color as graph --> | |
| <balloon_alpha></balloon_alpha> <!-- [balloon.alpha] (0 - 100) --> | |
| <balloon_text_color></balloon_text_color> <!-- [balloon.text_color] (hex color code) --> | |
| <balloon_text> | |
| <![CDATA[Anomaly in {series}: {value}C]]> <!-- [column(line).balloon.text] ({title} {value} {series} {description} {percents}) You can format any balloon text: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </balloon_text> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) fill alpha (use it if you want to have area chart) --> | |
| <width></width> <!-- [2] (Number) line width --> | |
| <bullet></bullet> <!-- [line.bullet] (round, square, round_outlined, square_outline, round_outline, square_outlined, filename) --> | |
| <bullet_size></bullet_size> <!-- [line.bullet_size] (Number) bullet size --> | |
| <bullet_color></bullet_color> <!-- [] (hex color code) bullet color. If not defined, line color is used --> | |
| <visible_in_legend></visible_in_legend> <!-- [true] (true / false) whether to show legend entry for this graph or not --> | |
| <pattern></pattern> <!-- [] (path to the pattern file) Pattern file can be: swf, jpg, gif or png. The chart looks for the file in the "path" folder. the pattern can be also set for individual columns in the data xml file --> | |
| <pattern_color></pattern_color> <!-- [] (hex color code) the color of the pattern --> | |
| </graph> | |
| <graph gid="2"> | |
| <type>line</type> | |
| <title>Smoothed</title> | |
| <color></color> | |
| <alpha></alpha> | |
| <balloon_text> | |
| <![CDATA[Anomaly in {series}: {value}C (Smoothed)]]> <!-- [column(line).balloon.text] ({title} {value} {series} {description} {percents}) You can format any balloon text: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </balloon_text> | |
| </graph> | |
| </graphs> | |
| <guides> <!-- guides are straight lines drawn through all plot area at a give value. Can also be filled with color --> | |
| <max_min></max_min> <!-- [false] (true / false) whether to include guides' values when calculating min and max of a chart --> | |
| <guide> <!-- there can be any number of quides. guides can also be set in data xml file, using the same syntax as here --> | |
| <behind></behind> <!-- [false] (true / false) whether your guides should appear in front of columns or behind them --> | |
| <start_value></start_value> <!-- (number) value at which guide should be placed --> | |
| <end_value></end_value> <!-- (number) if you set value here too, another quide will be drawn. If you set fill alpha > 0, then the area between these quides will be filled with color --> | |
| <title></title> <!-- (string) text which will be displayed near the guide --> | |
| <width></width> <!-- [0] (Number) width of a guide line (0 for hairline) --> | |
| <color></color> <!-- [#000000] (hex color code) color of guide line --> | |
| <alpha></alpha> <!-- [100] (0 - 100) opacity of guide line --> | |
| <fill_color></fill_color> <!-- [guide.color] (hex color code) fill color. If not defined, color of a guide will be used. Separate color codes with comas for gradient --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of a fill --> | |
| <inside></inside> <!-- [values.value.inside] whether to place title inside plot area --> | |
| <centered></centered> <!-- [true] (true / false) if you have start and end values defined, title can be placed in the middle between these values. If false, it will be placed near start_value --> | |
| <rotate></rotate> <!-- [values.value.rotate] (0 - 90) angle of rotation of title. --> | |
| <text_size></text_size> <!-- [values.value.text_size] (Number) --> | |
| <text_color></text_color> <!-- [values.value.color] (hex color code) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| </guide> | |
| </guides> | |
| <!-- DATA can also be set in settings file. Just place data in CSV or XML format between <data></data> --> | |
| <!--<data> | |
| </data> --> | |
| </settings> |
| <%@ Page Language="C#" AutoEventWireup="true" CodeFile="export.aspx.cs" Inherits="_export" %> |
| using System; | |
| using System.Web; | |
| using System.Drawing; | |
| using System.Drawing.Imaging; | |
| public partial class _export : System.Web.UI.Page | |
| { | |
| protected void Page_Load(object sender, EventArgs e) | |
| { | |
| if (Request.Form["width"] != null && Request.Form["width"] != String.Empty) | |
| { | |
| // image dimensions | |
| int width = Int32.Parse((Request.Form["width"].IndexOf('.') != -1) ? Request.Form["width"].Substring(0, Request.Form["width"].IndexOf('.')) : Request.Form["width"]); | |
| int height = Int32.Parse((Request.Form["height"].IndexOf('.') != -1) ? Request.Form["height"].Substring(0, Request.Form["height"].IndexOf('.')) : Request.Form["height"]); | |
| // image | |
| Bitmap result = new Bitmap(width, height); | |
| // set pixel colors | |
| for (int y = 0; y < height; y++) | |
| { | |
| // column counter for the row | |
| int x = 0; | |
| // get current row data | |
| string[] row = Request.Form["r" + y].Split(new char[] { ',' }); | |
| // set pixels in the row | |
| for (int c = 0; c < row.Length; c++) | |
| { | |
| // get pixel color and repeat count | |
| string[] pixel = row[c].Split(new char[] { ':' }); | |
| Color current_color = ColorTranslator.FromHtml("#" + pixel[0]); | |
| int repeat = pixel.Length > 1 ? Int32.Parse(pixel[1]) : 1; | |
| // set pixel(s) | |
| for (int l = 0; l < repeat; l++) | |
| { | |
| result.SetPixel(x, y, current_color); | |
| x++; | |
| } | |
| } | |
| } | |
| // output image | |
| // image type | |
| Response.ContentType = "image/jpeg"; | |
| Response.AddHeader("Content-Disposition", "attachment; filename=\"amchart.jpg\""); | |
| // find image encoder for selected type | |
| ImageCodecInfo[] encoders; | |
| ImageCodecInfo img_encoder = null; | |
| encoders = ImageCodecInfo.GetImageEncoders(); | |
| foreach (ImageCodecInfo codec in encoders) | |
| if (codec.MimeType == Response.ContentType) | |
| { | |
| img_encoder = codec; | |
| break; | |
| } | |
| // image parameters | |
| EncoderParameter jpeg_quality = new EncoderParameter(Encoder.Quality, 100L); // for jpeg images only | |
| EncoderParameters enc_params = new EncoderParameters(1); | |
| enc_params.Param[0] = jpeg_quality; | |
| result.Save(Response.OutputStream, img_encoder, enc_params); | |
| } | |
| else | |
| { | |
| // invalid post | |
| Response.Write("Invalid post"); | |
| } | |
| } | |
| } |
| <?php | |
| // amcharts.com export to image utility | |
| // set image type (gif/png/jpeg) | |
| $imgtype = 'jpeg'; | |
| // set image quality (from 0 to 100, not applicable to gif) | |
| $imgquality = 100; | |
| // get data from $_POST or $_GET ? | |
| $data = &$_POST; | |
| // get image dimensions | |
| $width = (int) $data['width']; | |
| $height = (int) $data['height']; | |
| // create image object | |
| $img = imagecreatetruecolor($width, $height); | |
| // populate image with pixels | |
| for ($y = 0; $y < $height; $y++) { | |
| // innitialize | |
| $x = 0; | |
| // get row data | |
| $row = explode(',', $data['r'.$y]); | |
| // place row pixels | |
| $cnt = sizeof($row); | |
| for ($r = 0; $r < $cnt; $r++) { | |
| // get pixel(s) data | |
| $pixel = explode(':', $row[$r]); | |
| // get color | |
| $pixel[0] = str_pad($pixel[0], 6, '0', STR_PAD_LEFT); | |
| $cr = hexdec(substr($pixel[0], 0, 2)); | |
| $cg = hexdec(substr($pixel[0], 2, 2)); | |
| $cb = hexdec(substr($pixel[0], 4, 2)); | |
| // allocate color | |
| $color = imagecolorallocate($img, $cr, $cg, $cb); | |
| // place repeating pixels | |
| $repeat = isset($pixel[1]) ? (int) $pixel[1] : 1; | |
| for ($c = 0; $c < $repeat; $c++) { | |
| // place pixel | |
| imagesetpixel($img, $x, $y, $color); | |
| // iterate column | |
| $x++; | |
| } | |
| } | |
| } | |
| // set proper content type | |
| header('Content-type: image/'.$imgtype); | |
| header('Content-Disposition: attachment; filename="chart.'.$imgtype.'"'); | |
| // stream image | |
| $function = 'image'.$imgtype; | |
| if ($imgtype == 'gif') { | |
| $function($img); | |
| } | |
| else { | |
| $function($img, null, $imgquality); | |
| } | |
| // destroy | |
| imagedestroy($img); | |
| ?> |
| /** | |
| * SWFObject v1.5: Flash Player detection and embed - http://blog.deconcept.com/swfobject/ | |
| * | |
| * SWFObject is (c) 2007 Geoff Stearns and is released under the MIT License: | |
| * http://www.opensource.org/licenses/mit-license.php | |
| * | |
| */ | |
| if(typeof deconcept=="undefined"){var deconcept=new Object();}if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!document.getElementById){return;}this.DETECT_KEY=_a?_a:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id",id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height",h);}if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}if(c){this.addParam("bgcolor",c);}var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);}};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true);},setAttribute:function(_e,_f){this.attributes[_e]=_f;},getAttribute:function(_10){return this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=_12;},getParams:function(){return this.params;},addVariable:function(_13,_14){this.variables[_13]=_14;},getVariable:function(_15){return this.variables[_15];},getVariables:function(){return this.variables;},getVariablePairs:function(){var _16=new Array();var key;var _18=this.getVariables();for(key in _18){_16[_16.length]=key+"="+_18[key];}return _16;},getSWFHTML:function(){var _19="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\"";_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";var _1a=this.getParams();for(var key in _1a){_19+=[key]+"=\""+_1a[key]+"\" ";}var _1c=this.getVariablePairs().join("&");if(_1c.length>0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath);}_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\">";_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";var _1d=this.getParams();for(var key in _1d){_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";}var _1f=this.getVariablePairs().join("&");if(_1f.length>0){_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";}_19+="</object>";}return _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var _21=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();if(!(navigator.plugins && navigator.mimeTypes.length)) window[this.getAttribute('id')] = document.getElementById(this.getAttribute('id'));return true;}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}return false;}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var _26=3;while(axo){try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}}return _23;};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.major<fv.major){return false;}if(this.major>fv.major){return true;}if(this.minor<fv.minor){return false;}if(this.minor>fv.minor){return true;}if(this.rev<fv.rev){return false;}return true;};deconcept.util={getRequestParameter:function(_2b){var q=document.location.search||document.location.hash;if(_2b==null){return q;}if(q){var _2d=q.substring(1).split("&");for(var i=0;i<_2d.length;i++){if(_2d[i].substring(0,_2d[i].indexOf("="))==_2b){return _2d[i].substring((_2d[i].indexOf("=")+1));}}}return "";}};deconcept.SWFObjectUtil.cleanupSWFs=function(){var _2f=document.getElementsByTagName("OBJECT");for(var i=_2f.length-1;i>=0;i--){_2f[i].style.display="none";for(var x in _2f[i]){if(typeof _2f[i][x]=="function"){_2f[i][x]=function(){};}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject; |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | |
| <title>Line & Area chart</title> | |
| </head> | |
| <body> | |
| <!-- saved from url=(0013)about:internet --> | |
| <!-- amline script--> | |
| <script type="text/javascript" src="amline/swfobject.js"></script> | |
| <div id="flashcontent"> | |
| <strong>You need to upgrade your Flash Player</strong> | |
| </div> | |
| <script type="text/javascript"> | |
| // <![CDATA[ | |
| var so = new SWFObject("amline/amline.swf", "amline", "520", "400", "8", "#FFFFFF"); | |
| so.addVariable("path", "amline/"); | |
| so.addVariable("settings_file", encodeURIComponent("amline/amline_settings.xml")); // you can set two or more different settings files here (separated by commas) | |
| so.addVariable("data_file", encodeURIComponent("amline/amline_data.xml")); | |
| // so.addVariable("chart_data", encodeURIComponent("data in CSV or XML format")); // you can pass chart data as a string directly from this file | |
| // so.addVariable("chart_settings", encodeURIComponent("<settings>...</settings>")); // you can pass chart settings as a string directly from this file | |
| // so.addVariable("additional_chart_settings", encodeURIComponent("<settings>...</settings>")); // you can append some chart settings to the loaded ones | |
| // so.addVariable("loading_settings", "LOADING SETTINGS"); // you can set custom "loading settings" text here | |
| // so.addVariable("loading_data", "LOADING DATA"); // you can set custom "loading data" text here | |
| // so.addVariable("preloader_color", "#999999"); | |
| // so.addVariable("error_loading_file", "ERROR LOADING FILE"); // you can set custom "error loading file" text here | |
| so.write("flashcontent"); | |
| // ]]> | |
| </script> | |
| <!-- end of amline script --> | |
| </body> | |
| </html> |
| AMCHART-LNKS-1966-6679-1965-1082 |
| 1949;2.54;20.21 | |
| 1950;2.51;19.73 | |
| 1951;2.53;18.43 | |
| 1952;2.53;18.08 | |
| 1953;2.68;19.01 | |
| 1954;2.78;19.57 | |
| 1955;2.77;19.58 | |
| 1956;2.79;19.43 | |
| 1957;3.09;20.83 | |
| 1958;3.01;19.73 | |
| 1959;2.90;18.87 | |
| 1960;2.88;18.43 | |
| 1961;2.89;18.31 | |
| 1962;2.90;18.19 | |
| 1963;2.89;17.89 | |
| 1964;2.88;17.60 | |
| 1965;2.86;17.20 | |
| 1966;2.88;16.84 | |
| 1967;2.92;16.56 | |
| 1968;2.94;16.00 | |
| 1969;3.09;15.95 | |
| 1970;3.18;15.52 | |
| 1971;3.39;15.85 | |
| 1972;3.39;15.36 | |
| 1973;3.89;16.59 | |
| 1974;6.87;26.39 | |
| 1975;7.67;27.00 | |
| 1976;8.19;27.26 | |
| 1977;8.57;26.78 | |
| 1978;9.00;26.14 | |
| 1979;12.64;32.98 | |
| 1980;21.59;49.63 | |
| 1981;31.77;66.20 | |
| 1982;28.52;55.98 | |
| 1983;26.19;49.80 | |
| 1984;25.88;47.18 | |
| 1985;24.09;42.40 | |
| 1986;12.51;21.62 | |
| 1987;15.40;25.68 | |
| 1988;12.58;20.14 | |
| 1989;15.86;24.22 | |
| 1990;20.03;29.03 | |
| 1991;16.54;23.00 | |
| 1992;15.99;21.59 | |
| 1993;14.25;18.68 | |
| 1994;13.19;16.86 | |
| 1995;14.62;18.17 | |
| 1996;18.46;22.40 | |
| 1997;17.23;20.39 | |
| 1998;10.87;12.66 | |
| 1999;15.56;17.78 | |
| 2000;26.72;29.54 | |
| 2001;21.84;23.39 | |
| 2002;22.51;23.78 | |
| 2003;27.54;28.42 | |
| 2004;38.93;54.93 | |
| 2005;46.47;47.97 | |
| 2006;58.30;58.30 |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <chart> | |
| <!--<message><![CDATA[You can broadcast any message to chart from data XML file]]></message> --> | |
| <series> | |
| <value xid="0">1949</value> | |
| <value xid="1">1950</value> | |
| <value xid="2">1951</value> | |
| <value xid="3">1951</value> | |
| <value xid="4">1951</value> | |
| </series> | |
| <graphs> | |
| <graph gid="1"> | |
| <value xid="0">2.54</value> | |
| <value xid="1">2.51</value> | |
| <value xid="2">2.53</value> | |
| <value xid="3">5</value> | |
| <value xid="4">1</value> | |
| </graph> | |
| </graphs> | |
| </chart> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- Value between [] brackets, for example [#FFFFFF] shows default value which is used if this parameter is not set --> | |
| <!-- This means, that if you are happy with this value, you can delete this line at all and reduce file size --> | |
| <!-- value or explanation between () brackets shows the range or type of values you should use for this parameter --> | |
| <!-- the top left corner has coordinates x = 0, y = 0 --> | |
| <!-- "!" before x or y position (for example: <x>!20</x>) means that the coordinate will be calculated from the right side or the bottom --> | |
| <settings> | |
| <data_type></data_type> <!-- [xml] (xml / csv) --> | |
| <csv_separator></csv_separator> <!-- [;] (string) csv file data separator (you need it only if you are using csv file for your data) --> | |
| <skip_rows></skip_rows> <!-- [0] (Number) if you are using csv data type, you can set the number of rows which should be skipped here --> | |
| <font></font> <!-- [Arial] (font name) use device fonts, such as Arial, Times New Roman, Tahoma, Verdana... --> | |
| <text_size></text_size> <!-- [11] (Number) text size of all texts. Every text size can be set individually in the settings below --> | |
| <text_color></text_color> <!-- [#000000] (hex color code) main text color. Every text color can be set individually in the settings below--> | |
| <decimals_separator></decimals_separator> <!-- [,] (string) decimal separator. Note, that this is for displaying data only. Decimals in data xml file must be separated with dot --> | |
| <thousands_separator></thousands_separator> <!-- [ ] (string) thousand separator. use "none" if you don't want to separate --> | |
| <digits_after_decimal>2</digits_after_decimal> <!-- [] (Number) if your value has less digits after decimal then is set here, zeroes will be added --> | |
| <scientific_min></scientific_min> <!-- [0.000001] If absolute value of your number is equal or less then scientific_min, this number will be formatted using scientific notation, for example: 0.0000023 -> 2.3e-6 --> | |
| <scientific_max></scientific_max> <!-- [1000000000000000] If absolute value of your number is equal or bigger then scientific_max, this number will be formatted using scientific notation, for example: 15000000000000000 -> 1.5e16 --> | |
| <redraw></redraw> <!-- [false] (true / false) if your chart's width or height is set in percents, and redraw is set to true, the chart will be redrawn then screen size changes --> | |
| <!-- Legend, buttons labels will not be repositioned if you set your x and y values for these objects --> | |
| <reload_data_interval></reload_data_interval> <!-- [0] (Number) how often data should be reloaded (time in seconds) If you are using this feature I strongly recommend to turn off zoom function (set <zoomable>false</zoomable>) --> | |
| <preloader_on_reload></preloader_on_reload> <!-- [false] (true / false) Whether to show preloaded when data or settings are reloaded --> | |
| <add_time_stamp></add_time_stamp> <!-- [false] (true / false) if true, a unique number will be added every time flash loads data. Mainly this feature is useful if you set reload _data_interval >0 --> | |
| <precision></precision> <!-- [2] (Number) shows how many numbers should be shown after comma for calculated values (percents, used only in stacked charts) --> | |
| <connect></connect> <!-- [false] (true / false) whether to connect points if y data is missing --> | |
| <hide_bullets_count></hide_bullets_count> <!-- [] (Number) if there are more then hideBulletsCount points on the screen, bullets can be hidden, to avoid mess. Leave empty, or 0 to show bullets all the time. This rule doesn't influence if custom bullet is defined near y value, in data file --> | |
| <link_target></link_target> <!-- [] (_blank, _top ...) --> | |
| <start_on_axis></start_on_axis> <!-- [true] (true / false) if set to false, graph is moved 1/2 of one series interval from Y axis --> | |
| <colors></colors> <!-- [#FF0000,#0000FF,#00FF00,#FF9900,#CC00CC,#00CCCC,#33FF00,#990000,#000066,#555555] Colors of graphs. if the graph color is not set, color from this array will be used --> | |
| <rescale_on_hide></rescale_on_hide> <!-- [true] (true/false) When you show or hide graphs, the chart recalculates min and max values (rescales the chart). If you don't want this, set this to false. --> | |
| <js_enabled></js_enabled> <!-- [true] (true / false) In case you don't use any flash - JavaScript communication, you shuold set this setting to false - this will save some CPU and will disable the security warning message which appears when opening the chart from hard drive. --> | |
| <background> <!-- BACKGROUND --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) use 0 if you are using custom swf or jpg for background --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <file></file> <!-- [] (filename) swf or jpg file of a background. Do not use progressive jpg file, it will be not visible with flash player 7 --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| </background> | |
| <plot_area> <!-- PLOT AREA (the area between axes) --> | |
| <color></color> <!-- [#FFFFFF](hex color code) Separate color codes with comas for gradient--> | |
| <alpha></alpha> <!-- [0] (0 - 100) if you want it to be different than background color, use bigger than 0 value --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <margins> <!-- plot area margins --> | |
| <left></left> <!-- [60](Number / Number%) --> | |
| <top></top> <!-- [60](Number / Number%) --> | |
| <right></right> <!-- [60](Number / Number%) --> | |
| <bottom></bottom> <!-- [80](Number / Number%) --> | |
| </margins> | |
| </plot_area> | |
| <scroller> | |
| <enabled></enabled> <!-- [true] (true / false) whether to show scroller when chart is zoomed or not --> | |
| <y></y> <!-- [] (Number) Y position of scroller. If not set here, will be displayed above plot area --> | |
| <color></color> <!-- [#DADADA] (hex color code) scrollbar color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (Number) scrollbar alpha --> | |
| <bg_color></bg_color> <!-- [#F0F0F0] (hex color code) scroller background color. Separate color codes with comas for gradient --> | |
| <bg_alpha></bg_alpha> <!-- [100] (Number) scroller background alpha --> | |
| <height></height> <!-- [10] (Number) scroller height --> | |
| </scroller> | |
| <grid> <!-- GRID --> | |
| <x> <!-- vertical grid --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false](true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [4] (Number) approximate number of gridlines --> | |
| </x> | |
| <y_left> <!-- horizontal grid, Y left axis. Visible only if there is at least one graph assigned to left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_left> | |
| <y_right> <!-- horizontal grid, Y right axis. Visible only if there is at least one graph assigned to right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_right> | |
| </grid> | |
| <values> <!-- VALUES --> | |
| <x> <!-- x axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [false] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| </x> | |
| <y_left> <!-- y left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically. --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_left> | |
| <y_right> <!-- y right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_right> | |
| </values> | |
| <axes> <!-- axes --> | |
| <x> <!-- X axis --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| </x> | |
| <y_left> <!-- Y left axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_left> | |
| <y_right> <!-- Y right axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_right> | |
| </axes> | |
| <indicator> <!-- INDICATOR --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <zoomable></zoomable> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#BBBB00] (hex color code) line and x balloon background color --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <selection_color></selection_color> <!-- [#BBBB00] (hex color code) --> | |
| <selection_alpha></selection_alpha> <!-- [25] (0 - 100) --> | |
| <x_balloon_enabled></x_balloon_enabled> <!-- [true] (true / false) --> | |
| <x_balloon_text_color></x_balloon_text_color> <!-- [text_color] (hex color code) --> | |
| </indicator> | |
| <balloon> <!-- BALLOON --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <only_one></only_one> <!-- [false] (true / false) if set to true, only one balloon at a time will be displayed --> | |
| <on_off></on_off> <!-- [true] (true/false) whether it will be possible to turn on or off y balloons by clicking on a legend or on a graph --> | |
| <color></color> <!-- [] (hex color code) balloon background color. If not set, graph.balloon_color will be used. --> | |
| <alpha></alpha> <!-- [] (0 - 100) balloon background opacity. If not set, graph.balloon_alpha will be used. --> | |
| <text_color></text_color> <!-- [] (hex color code) baloon text color. If not set, graph.balloon_text_color will be used --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <max_width></max_width> <!-- [] (Number) The maximum width of a balloon. If not set, half width of plot area will be used --> | |
| <corner_radius></corner_radius> <!-- [0] (Number) Corner radius of a balloon. If you set it > 0, the balloon will not display arrow --> | |
| <border_width></border_width> <!-- [0] (Number) --> | |
| <border_alpha></border_alpha> <!-- [balloon.alpha] (Number) --> | |
| <border_color></border_color> <!-- [balloon.color] (hex color code) --> | |
| </balloon> | |
| <legend> <!-- LEGEND --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) if empty, will be equal to left margin --> | |
| <y></y> <!-- [] (Number / Number% / !Number) if empty, will be 20px below x axis values --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will be equal to plot area width --> | |
| <max_columns></max_columns> <!-- [] (Number) the maximum number of columns in the legend --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) background color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) border color --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) border alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <spacing></spacing> <!-- [10] (Number) vertical and horizontal gap between legend entries --> | |
| <margins></margins> <!-- [0] (Number) legend margins (space between legend border and legend entries, recommended to use only if legend border is visible or background color is different from chart area background color) --> | |
| <graph_on_off></graph_on_off> <!-- [true] (true / false) if true, color box gains "checkbox" function - it is possible to make graphs visible/invisible by clicking on this checkbox --> | |
| <reverse_order></reverse_order> <!-- [false] (true / false) whether to sort legend entries in a reverse order --> | |
| <align></align> <!-- [left] (left / center / right) alignment of legend entries --> | |
| <key> <!-- KEY (the color box near every legend entry) --> | |
| <size></size> <!-- [16] (Number) key size--> | |
| <border_color></border_color> <!-- [] (hex color code) leave empty if you don't want to have border--> | |
| <key_mark_color></key_mark_color> <!-- [#FFFFFF] (hex color code) key tick mark color --> | |
| </key> | |
| <values> <!-- VALUES --> | |
| <enabled>true</enabled> <!-- [false] (true / false) whether to show values near legend entries or not --> | |
| <width>44</width> <!-- [80] (Number) width of text field for value --> | |
| <align>left</align> <!-- [right] (right / left) --> | |
| <text><![CDATA[: ${value}]]></text> <!-- [{value}] ({title} {value} {series} {description} {percents}) You can format any text: {value} will be replaced with value, {description} - with description and so on. You can add your own text or html code too. --> | |
| </values> | |
| </legend> | |
| <vertical_lines> <!-- line chart can also display vertical lines/columns (set <vertical_lines>true</vertical_lines> in graph settings for that). If you also set <line_alpha>0</line_alpha> your line chart will become column chart --> | |
| <width></width> <!-- [0] (0 - 100) width of vertical line in percents. 0 for hairline. Set > 0 if you want to have column --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <clustered></clustered> <!-- [false] in case you have more then one graph with vertical lines enabled, you might want to place your columns next to each other, set true for that. --> | |
| <mask></mask> <!-- [true] (true / false) as line chart by default starts on axis, and your column width is >0, then some part of first and last column will be outside plot area (incase you don't set <start_on_axis>false</false> Mask will cut off the part outside the plot area. Set to false if you don't want this. --> | |
| </vertical_lines> | |
| <zoom_out_button> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of zoom out button, if not defined, will be aligned to right of plot area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of zoom out button, if not defined, will be aligned to top of plot area --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text and magnifying glass icon color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00] (hex color code) button text and magnifying glass icon roll over color --> | |
| <text_size></text_size> <!-- [text_size] (Number) button text size --> | |
| <text></text> <!-- [Show all] (text) --> | |
| </zoom_out_button> | |
| <help> <!-- HELP button and balloon --> | |
| <button> <!-- help button is only visible if balloon text is defined --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of help button, if not defined, will be aligned to right of chart area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of help button, if not defined, will be aligned to top of chart area --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00](hex color code) button text roll over color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text></text> <!-- [?] (text) --> | |
| </button> | |
| <balloon> <!-- help balloon --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <width></width> <!-- [300] (Number) --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text><![CDATA[]]></text> <!-- [] (text) some html tags may be used (supports <b>, <i>, <u>, <font>, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| </balloon> | |
| </help> | |
| <export_as_image> <!-- export_as_image feature works only on a web server --> | |
| <file></file> <!-- [] (filename) if you set filename here, context menu (then user right clicks on flash movie) "Export as image" will appear. This will allow user to export chart as an image. Collected image data will be posted to this file name (use amline/export.php or amline/export.aspx) --> | |
| <target></target> <!-- [] (_blank, _top ...) target of a window in which export file must be called --> | |
| <x></x> <!-- [0] (Number / Number% / !Number) x position of "Collecting data" text --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of "Collecting data" text. If not set, will be aligned to the bottom of flash movie --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of "Collecting data" text --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </export_as_image> | |
| <error_messages> <!-- "error_messages" settings will be applied for all error messages except the one which is showed if settings file wasn't found --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of error message. If not set, will be aligned to the center --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of error message. If not set, will be aligned to the center --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of error message. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </error_messages> | |
| <strings> | |
| <no_data></no_data> <!-- [No data for selected period] (text) if data for selected period is missing, this message will be displayed --> | |
| <export_as_image></export_as_image> <!-- [Export as image] (text) text for right click menu --> | |
| <error_in_data_file></error_in_data_file> <!-- [Error in data file] (text) this text is displayed if there is an error in data file or there is no data in file. "There is no data" means that there should actually be at least one space in data file. If data file will be completly empty, it will display "error loading file" text --> | |
| <collecting_data></collecting_data> <!-- [Collecting data] (text) this text is displayed while exporting chart to an image --> | |
| <wrong_zoom_value></wrong_zoom_value> <!-- [Incorrect values] (text) this text is displayed if you set zoom through JavaScript and entered from or to value was not find between series --> | |
| <!-- the strings below are only important if you format your axis values as durations --> | |
| <ss></ss> <!-- [] unit of seconds --> | |
| <mm></mm> <!-- [:] unit of minutes --> | |
| <hh></hh> <!-- [:] unit of hours --> | |
| <DD></DD> <!-- [d. ] unit of days --> | |
| </strings> | |
| <context_menu> <!-- context menu allows you to controll right-click menu items. You can add custom menu items to create custom controls --> | |
| <!-- "function_name" specifies JavaScript function which will be called when user clicks on this menu. You can pass variables, for example: function_name="alert('something')" --> | |
| <!-- "title" sets menu item text. Do not use for title: Show all, Zoom in, Zoom out, Print, Settings... --> | |
| <!-- you can have any number of custom menus. Uncomment the line below to enable this menu and add apropriate JS function to your html file. --> | |
| <!-- <menu function_name="printChart" title="Print chart"></menu> --> | |
| <default_items> | |
| <zoom></zoom> <!-- [false] (true / false) to show or not flash players zoom menu --> | |
| <print></print> <!-- [true] (true / false) to show or not flash players print menu --> | |
| </default_items> | |
| </context_menu> | |
| <labels> <!-- LABELS --> | |
| <!-- you can add as many labels as you want. Some html tags supported: <b>, <i>, <u>, <font>, <a href=""> --> | |
| <!-- labels can also be added in data xml file, using exactly the same structure like it is here --> | |
| <label lid="0"> | |
| <x></x> <!-- [0] (Number / Number% / !Number) --> | |
| <y>20</y> <!-- [0] (Number / Number% / !Number) --> | |
| <rotate></rotate> <!-- [false] (true / false) --> | |
| <width>520</width> <!-- [] (Number / Number%) if empty, will stretch from left to right untill label fits --> | |
| <align>center</align> <!-- [left] (left / center / right) --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [text_size](Number) button text size --> | |
| <text> <!-- [] (text) html tags may be used (supports <b>, <i>, <u>, <font>, <a href="">, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| <![CDATA[<b>Historical Crude Oil Prices</b>]]> | |
| </text> | |
| </label> | |
| </labels> | |
| <graphs> <!-- GRAPHS SETTINGS. These settings can also be specified in data file, as attributes of <graph>, in this case you can delete everything from <graphs> to </graphs> (including) --> | |
| <!-- It is recommended to have graph settings here if you don't want to mix data with other params --> | |
| <!-- copy <graph>...</graph> (including) as many times as many graphs you have and edit settings individually --> | |
| <!-- if graph settings are defined both here and in data file, the ones from data file are used --> | |
| <graph gid="1"> <!-- if you are using XML data file, graph "gid" must match graph "gid" in data file --> | |
| <axis>left</axis> <!-- [left] (left/ right) indicates which y axis should be used --> | |
| <title>Nominal</title> <!-- [] (graph title) --> | |
| <color>#FFCC00</color> <!-- [] (hex color code) if not defined, uses colors from this array: #FF0000, #0000FF, #00FF00, #FF9900, #CC00CC, #00CCCC, #33FF00, #990000, #000066 --> | |
| <color_hover></color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <line_width></line_width> <!-- [0] (Number) 0 for hairline --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) if you want the chart to be area chart, use bigger than 0 value --> | |
| <fill_color></fill_color> <!-- [grpah.color] (hex color code). Separate color codes with comas for gradient --> | |
| <balloon_color></balloon_color> <!-- [graph color] (hex color code) leave empty to use the same color as graph --> | |
| <balloon_alpha></balloon_alpha> <!-- [100] (0 - 100) --> | |
| <balloon_text_color></balloon_text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <bullet></bullet> <!-- [] (square, round, square_outlined, round_outlined, square_outline, round_outline, square_outline, round_outline, filename.swf) can be used predefined bullets or loaded custom bullets. Leave empty if you don't want to have bullets at all. Outlined bullets use plot area color for outline color --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| <bullet_size></bullet_size> <!-- [8](Number) affects only predefined bullets, does not change size of custom loaded bullets --> | |
| <bullet_color></bullet_color> <!-- [graph color] (hex color code) affects only predefined (square and round) bullets, does not change color of custom loaded bullets. Leave empty to use the same color as graph --> | |
| <bullet_alpha></bullet_alpha> <!-- [graph alpha] (hex color code) Leave empty to use the same alpha as graph --> | |
| <hidden></hidden> <!-- [false] (true / false) vill not be visible until you check corresponding checkbox in the legend --> | |
| <selected></selected> <!-- [true] (true / false) if true, balloon indicating value will be visible then roll over plot area --> | |
| <balloon_text> | |
| <![CDATA[${value}]]> <!-- [<b>{value}</b><br>{description}] ({title} {value} {series} {description} {percents}) You can format any balloon text: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </balloon_text> | |
| <data_labels> | |
| <![CDATA[]]> <!-- [] ({title} {value} {series} {description} {percents}) Data labels can display value (and more) near your point on the plot area. --> | |
| <!-- to avoid overlapping, data labels, the same as bullets are not visible if there are more then hide_bullets_count data points on plot area. --> | |
| </data_labels> | |
| <data_labels_text_color></data_labels_text_color> <!-- [text_color] (hex color code) --> | |
| <data_labels_text_size></data_labels_text_size> <!-- [text_size] (Number) --> | |
| <data_labels_position></data_labels_position> <!-- [above] (below / above) --> | |
| <vertical_lines></vertical_lines> <!-- [false] (true / false) whether to draw vertical lines or not. If you want to show vertical lines only (without the graph, set line_alpha to 0 --> | |
| <visible_in_legend></visible_in_legend> <!-- [true] (true / false) whether to show legend entry for this graph or not --> | |
| </graph> | |
| <graph gid="2"> | |
| <axis>left</axis> | |
| <title>Inflation adjusted</title> | |
| <color>#999999</color> | |
| <selected>false</selected> | |
| <balloon_text> | |
| <![CDATA[${value}]]> | |
| </balloon_text> | |
| </graph> | |
| </graphs> | |
| <guides> <!-- guides are straight lines drawn through all plot area at a give value. Can also be filled with color --> | |
| <max_min></max_min> <!-- [false] (true / false) whether to include guides' values when calculating min and max of a chart --> | |
| <guide> <!-- there can be any number of quides. guides can also be set in data xml file, using the same syntax as here --> | |
| <axis></axis> <!-- [left] (left / right) y axis of a guide. There should be at least one graph assigned to this axis in order guide to be visible --> | |
| <start_value></start_value> <!-- (Number) value at which guide should be placed --> | |
| <end_value></end_value> <!-- (Number) if you set value here too, another quide will be drawn. If you set fill alpha > 0, then the area between these quides will be filled with color --> | |
| <title></title> <!-- [] (String) text which will be displayed near the guide --> | |
| <width></width> <!-- [0] (Number) width of a guide line (0 for hairline) --> | |
| <color></color> <!-- [#000000] (hex color code) color of guide line --> | |
| <alpha></alpha> <!-- [100] (0 - 100) opacity of guide line --> | |
| <fill_color></fill_color> <!-- [guide.color] (hex color code) fill color. If not defined, color of a guide will be used. Separate color codes with comas for gradient --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of a fill --> | |
| <inside></inside> <!-- [values.y_{axis}.inside] whether to place title inside plot area --> | |
| <centered></centered> <!-- [true] (true / false) if you have start and end values defined, title can be placed in the middle between these values. If false, it will be placed near start_value --> | |
| <rotate></rotate> <!-- [values.y_{axis}.rotate](0 - 90) angle of rotation of title --> | |
| <text_size></text_size> <!-- [values.y_{axis}.text_size] (Number) --> | |
| <text_color></text_color> <!-- [values.y_{axis}.color](hex color code) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| </guide> | |
| </guides> | |
| <!-- DATA can also be set in settings file. Just place data in CSV or XML format between <data></data> --> | |
| <!--<data> | |
| </data> --> | |
| </settings> |
| <%@ Page Language="C#" AutoEventWireup="true" CodeFile="export.aspx.cs" Inherits="_export" %> |
| using System; | |
| using System.Web; | |
| using System.Drawing; | |
| using System.Drawing.Imaging; | |
| public partial class _export : System.Web.UI.Page | |
| { | |
| protected void Page_Load(object sender, EventArgs e) | |
| { | |
| if (Request.Form["width"] != null && Request.Form["width"] != String.Empty) | |
| { | |
| // image dimensions | |
| int width = Int32.Parse((Request.Form["width"].IndexOf('.') != -1) ? Request.Form["width"].Substring(0, Request.Form["width"].IndexOf('.')) : Request.Form["width"]); | |
| int height = Int32.Parse((Request.Form["height"].IndexOf('.') != -1) ? Request.Form["height"].Substring(0, Request.Form["height"].IndexOf('.')) : Request.Form["height"]); | |
| // image | |
| Bitmap result = new Bitmap(width, height); | |
| // set pixel colors | |
| for (int y = 0; y < height; y++) | |
| { | |
| // column counter for the row | |
| int x = 0; | |
| // get current row data | |
| string[] row = Request.Form["r" + y].Split(new char[] { ',' }); | |
| // set pixels in the row | |
| for (int c = 0; c < row.Length; c++) | |
| { | |
| // get pixel color and repeat count | |
| string[] pixel = row[c].Split(new char[] { ':' }); | |
| Color current_color = ColorTranslator.FromHtml("#" + pixel[0]); | |
| int repeat = pixel.Length > 1 ? Int32.Parse(pixel[1]) : 1; | |
| // set pixel(s) | |
| for (int l = 0; l < repeat; l++) | |
| { | |
| result.SetPixel(x, y, current_color); | |
| x++; | |
| } | |
| } | |
| } | |
| // output image | |
| // image type | |
| Response.ContentType = "image/jpeg"; | |
| Response.AddHeader("Content-Disposition", "attachment; filename=\"amchart.jpg\""); | |
| // find image encoder for selected type | |
| ImageCodecInfo[] encoders; | |
| ImageCodecInfo img_encoder = null; | |
| encoders = ImageCodecInfo.GetImageEncoders(); | |
| foreach (ImageCodecInfo codec in encoders) | |
| if (codec.MimeType == Response.ContentType) | |
| { | |
| img_encoder = codec; | |
| break; | |
| } | |
| // image parameters | |
| EncoderParameter jpeg_quality = new EncoderParameter(Encoder.Quality, 100L); // for jpeg images only | |
| EncoderParameters enc_params = new EncoderParameters(1); | |
| enc_params.Param[0] = jpeg_quality; | |
| result.Save(Response.OutputStream, img_encoder, enc_params); | |
| } | |
| else | |
| { | |
| // invalid post | |
| Response.Write("Invalid post"); | |
| } | |
| } | |
| } |
| <?php | |
| // amcharts.com export to image utility | |
| // set image type (gif/png/jpeg) | |
| $imgtype = 'jpeg'; | |
| // set image quality (from 0 to 100, not applicable to gif) | |
| $imgquality = 100; | |
| // get data from $_POST or $_GET ? | |
| $data = &$_POST; | |
| // get image dimensions | |
| $width = (int) $data['width']; | |
| $height = (int) $data['height']; | |
| // create image object | |
| $img = imagecreatetruecolor($width, $height); | |
| // populate image with pixels | |
| for ($y = 0; $y < $height; $y++) { | |
| // innitialize | |
| $x = 0; | |
| // get row data | |
| $row = explode(',', $data['r'.$y]); | |
| // place row pixels | |
| $cnt = sizeof($row); | |
| for ($r = 0; $r < $cnt; $r++) { | |
| // get pixel(s) data | |
| $pixel = explode(':', $row[$r]); | |
| // get color | |
| $pixel[0] = str_pad($pixel[0], 6, '0', STR_PAD_LEFT); | |
| $cr = hexdec(substr($pixel[0], 0, 2)); | |
| $cg = hexdec(substr($pixel[0], 2, 2)); | |
| $cb = hexdec(substr($pixel[0], 4, 2)); | |
| // allocate color | |
| $color = imagecolorallocate($img, $cr, $cg, $cb); | |
| // place repeating pixels | |
| $repeat = isset($pixel[1]) ? (int) $pixel[1] : 1; | |
| for ($c = 0; $c < $repeat; $c++) { | |
| // place pixel | |
| imagesetpixel($img, $x, $y, $color); | |
| // iterate column | |
| $x++; | |
| } | |
| } | |
| } | |
| // set proper content type | |
| header('Content-type: image/'.$imgtype); | |
| header('Content-Disposition: attachment; filename="chart.'.$imgtype.'"'); | |
| // stream image | |
| $function = 'image'.$imgtype; | |
| if ($imgtype == 'gif') { | |
| $function($img); | |
| } | |
| else { | |
| $function($img, null, $imgquality); | |
| } | |
| // destroy | |
| imagedestroy($img); | |
| ?> |
| /** | |
| * SWFObject v1.5: Flash Player detection and embed - http://blog.deconcept.com/swfobject/ | |
| * | |
| * SWFObject is (c) 2007 Geoff Stearns and is released under the MIT License: | |
| * http://www.opensource.org/licenses/mit-license.php | |
| * | |
| */ | |
| if(typeof deconcept=="undefined"){var deconcept=new Object();}if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!document.getElementById){return;}this.DETECT_KEY=_a?_a:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id",id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height",h);}if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}if(c){this.addParam("bgcolor",c);}var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);}};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true);},setAttribute:function(_e,_f){this.attributes[_e]=_f;},getAttribute:function(_10){return this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=_12;},getParams:function(){return this.params;},addVariable:function(_13,_14){this.variables[_13]=_14;},getVariable:function(_15){return this.variables[_15];},getVariables:function(){return this.variables;},getVariablePairs:function(){var _16=new Array();var key;var _18=this.getVariables();for(key in _18){_16[_16.length]=key+"="+_18[key];}return _16;},getSWFHTML:function(){var _19="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\"";_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";var _1a=this.getParams();for(var key in _1a){_19+=[key]+"=\""+_1a[key]+"\" ";}var _1c=this.getVariablePairs().join("&");if(_1c.length>0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath);}_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\">";_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";var _1d=this.getParams();for(var key in _1d){_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";}var _1f=this.getVariablePairs().join("&");if(_1f.length>0){_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";}_19+="</object>";}return _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var _21=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",encodeURIComponent(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();if(!(navigator.plugins && navigator.mimeTypes.length)) window[this.getAttribute('id')] = document.getElementById(this.getAttribute('id'));return true;}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}return false;}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var _26=3;while(axo){try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}}return _23;};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.major<fv.major){return false;}if(this.major>fv.major){return true;}if(this.minor<fv.minor){return false;}if(this.minor>fv.minor){return true;}if(this.rev<fv.rev){return false;}return true;};deconcept.util={getRequestParameter:function(_2b){var q=document.location.search||document.location.hash;if(_2b==null){return q;}if(q){var _2d=q.substring(1).split("&");for(var i=0;i<_2d.length;i++){if(_2d[i].substring(0,_2d[i].indexOf("="))==_2b){return _2d[i].substring((_2d[i].indexOf("=")+1));}}}return "";}};deconcept.SWFObjectUtil.cleanupSWFs=function(){var _2f=document.getElementsByTagName("OBJECT");for(var i=_2f.length-1;i>=0;i--){_2f[i].style.display="none";for(var x in _2f[i]){if(typeof _2f[i][x]=="function"){_2f[i][x]=function(){};}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject; |
| *** CHANGE LOG ***************************************************************** | |
| *** 1.6.4.0 ******************************************************************** | |
| FEATURE ADDED | |
| amReturnParam function also returns the param name: | |
| amReturnParam(chart_id, value, param); | |
| *** 1.6.3.1 ******************************************************************** | |
| FIX: stacking issue with missing values fixed | |
| FIX: balloons do not go above the plot area | |
| FIX: js function print could print three charts instead of one | |
| *** 1.6.3.0 ******************************************************************** | |
| FEATURE ADDED: | |
| New settings <scientific_min> and <scientific_max> added. If absolute value of | |
| your number is equal or bigger then scientific_max or equal or less then | |
| scientific_min, this number will be formatted using scientific notation, for | |
| example: | |
| 15000000000000000 -> 1.5e16 | |
| 0.0000023 -> 2.3e-6 | |
| FIX: amClickedOnSeries is not called anymore when zooming the chart. | |
| *** 1.6.2.1 ******************************************************************** | |
| FEATURE ADDED: | |
| a new setting, <js_enabled> was added. It allows disabling all javascript-html | |
| communication. Id you set this to false, then the chart won't listen and won't | |
| call any JavaScript functions. This will also disable the security warning | |
| message when opening the chart from your hard drive or CD. | |
| *** 1.6.2.0 ******************************************************************** | |
| FEATURE ADDED:Y axis values can be formatted as duration. To do this, you have to | |
| tell the duration unit of your data. For example, if your data represents seconds, | |
| you have to set: <values><y_left><duration>ss</duration></y_left></values> | |
| The units of the duration can be changed in the <strings> section. | |
| FIX: you can call JS functions after amError function was called by the chart | |
| FIX: amClickedOnSeries function is called even the zoomable is set to false now | |
| *** 1.6.1.4 ******************************************************************** | |
| FEATURE ADDED: Margins can be set in percents now | |
| FIX: balloon.text_color setting was ignored | |
| FIX: in some cases, when values were missing and axis type was "stacked" or | |
| "100% stacked" the area to the stacked graph was filled incorrectly | |
| FIX: amGetZoom was called when resizing window (if the redraw was set to true) | |
| FIX: if balloon.only_one was set to true, the balloon wasn't appearing if the | |
| graph was hidden or not selected and the mouse was close to this graph. | |
| *** 1.6.1.3 ******************************************************************** | |
| FIX: amGetZoom returned "undefined" if the indicator was moved off the plot area | |
| to the right side. | |
| *** 1.6.1.2 ******************************************************************** | |
| FIX: incorrect scroller could appear after reloadData javascript function was | |
| called. | |
| The chart didn't accept new JS functions if error, such as no data occureed | |
| *** 1.6.1.1 ******************************************************************** | |
| FIX: the indicator could go left of the plot area | |
| *** 1.6.1.0 ******************************************************************** | |
| IMPORTANT UPDATE: | |
| JS functions amClickedOnSeries(), amClickedOnBullet() and amRolledOverBullet() | |
| changed - now the first parameter they return is chart_id, like for all the other | |
| JS functions which are called by flash. If you are using these functions, you | |
| will have to update your scripts. | |
| FEATURE ADDED: JavaScript functions are cued now - previously you could call one | |
| JS function at a time and call another only after the chart finished the | |
| previous process. Now, you can call several functions one after another, without | |
| waiting for the chart to finish doing something. The functions are cued and all | |
| of them will be executed. | |
| FEATURE ADDED: New JavaScript function amProcessCompleted(chart_id, process) | |
| This function is called after some process initialized by some JS function is | |
| finished. For example, if you make the chart to reload data by calling reloadData | |
| function, after the data is reloaded, the chart will call amProcessCompleted | |
| function and the "process" parameter will be "reloadData" - the same as the | |
| function name you called. Check examples/javascript_control example to see this | |
| in action. | |
| FIX: The bullets might be displayed out of plot area, when the <strict_min_max> | |
| was set to true and the graph's values were out of the <min> and <max> range. | |
| FIX: If all the graphs of one axis were hidden, the grid and values still | |
| remained. | |
| FIX: chart_id was lost after the use of setSettings JS function. | |
| *** 1.6.0.0 ******************************************************************** | |
| FEATURE ADDED: RESCALING THE CHART WHEN THE GRAPH IS HIDDEN | |
| When you click on the legend key, the graph is hidden or shown. Now the chart | |
| recalculates min and max values (rescales the chart) when you do this. You can | |
| turn this feature off by setting <rescale_on_hide> to "false". | |
| FEATURE ADDED: AUTO-FITTING OF THE LEGEND and X AXIS VALUES | |
| The legend now automatically adjusts bottom margin to fit to the flash object's | |
| area. If your X axis values are rotated, the legend position is adjusted not to | |
| overlap the values. In order this to work, you have to leave <legend><y> setting | |
| empty. | |
| FEATURE ADDED: Y BALLOONS NO LONGER OVERLAP | |
| FEATURE ADDED: NEW BULLET TYPES | |
| New bullet types are: square_outline and round_outline | |
| FEATURE ADDED: CHART TYPE CAN BE SET SEPARATELY FOR RIGHT AND LEFT AXES | |
| Previously you set the same <type> (line, stacked, 100% stacked) for both | |
| left and right axes. Now you can set the type separately. This setting is now | |
| in <axes> section. | |
| FEATURE ADDED: MORE SETTINGS FOR THE Y BALLOON | |
| New balloon settings allows you to have balloon border and rounded corners: | |
| <balloon> | |
| <only_one></only_one> | |
| <on_off></on_off> | |
| <color></color> | |
| <alpha></alpha> | |
| <text_color></text_color> | |
| <text_size></text_size> | |
| <max_width></max_width> | |
| <corner_radius></corner_radius> | |
| <border_width></border_width> | |
| <border_alpha></border_alpha> | |
| <border_color></border_color> | |
| </balloon> | |
| The <only_one> setting replaced the <indicator><one_y_balloon> setting, and the | |
| <on_off></on_off> replaced the <indicator><y_balloon_on_off>. The old ones will | |
| also work. | |
| FEATURE ADDED: POSSIBILITY TO SET ARRAY OF COLORS | |
| Using <colors></colors> setting, you can set an array fo colors, which will | |
| be used if the graph's color is not set. | |
| FEATURE ADDED: CHANGE MULTIPLE SETTINGS WITH JAVASCRIPT | |
| Using new function, flashMovie.setSettings(settings, rebuild) You can control | |
| multiple settings. It is recommended to use this new function even for one | |
| setting, instead of setParam() function. The "rebuild" option might be "true" | |
| or "false" (the default is "true"). If you set it to "false", then the settings | |
| will not be applied until you call another new JS function: flashMovie.rebuild() | |
| or pass another set of settings with the "rebuild" set to "true". | |
| A new function flashMovie.getSettings() will return the full settings | |
| XML by calling amReturnSettings(chart_id, settings) function. | |
| FEATURE ADDED: IMAGE DATA IS PASSED TO JAVASCRIPT | |
| When exporting chart as an image, the chart passes image data to JavaScript | |
| function: amReturnImageData(chart_id, data) | |
| FEATURE ADDED: FONT COLOR AND SIZE OF A LABEL TEXT | |
| <labels> Can accept font color and font size HTML tags now, for example: | |
| <text><![CDATA[Source: <font color="#CC0000" size="14">amCharts</font>]]></text> | |
| CHANGE OF THE DEFAULT SETTINGS: | |
| <context_menu><default_items><zoom> default value was changed to "false" | |
| FIXES: | |
| When adding some settings using additional_chart_settings variable, you don't | |
| need to set all the <graph> or <label> settings anymore. When | |
| changing some <label> property using additional_chart_settings, in order to | |
| identify <label>, the labels id (lid) must be added, for example: <label lid="0"> | |
| When <connect> is set to true, and there are values missing, the chart shows | |
| full line when zoomed. | |
| "aditional_chart_settings" variable can accept multiple guides now. | |
| min / max calculation bug with stacked chart type fixed. | |
| *** 1.5.2.0 ******************************************************************** | |
| New features: | |
| JavaScript function amError(chart_id, error_message) is called when one of the | |
| known errors occurs. | |
| New JavaScript function for showing/hiding and selecting/deselecting graphs | |
| added: | |
| flashMovie.showGraph(index) | |
| flashMovie.hideGraph(index) | |
| flashMovie.selectGraph(index) | |
| flashMovie.deselectGraph(index) | |
| You can also use these functions in case you load chart to another swf movie. | |
| *** 1.5.1.0 ******************************************************************** | |
| New feature: the area between every second y axis grid can be filled with | |
| color. The color is defined at: <grid><y_left><fill_color>. Fill alpha can be | |
| defined at <grid><y_left><fill_alpha> | |
| Bug fix: When reloading settings with reloadSettings() function, if settings | |
| file contained data, the data wasn't refreshed. This is fixed in this version. | |
| ******************************************************************************** |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <chart> | |
| <series> | |
| <value xid="0">1949</value> | |
| <value xid="1">1950</value> | |
| <value xid="2">1951</value> | |
| <value xid="3">1952</value> | |
| <value xid="4">1953</value> | |
| <value xid="5">1954</value> | |
| <value xid="6">1955</value> | |
| <value xid="7">1956</value> | |
| <value xid="8">1957</value> | |
| <value xid="9">1958</value> | |
| <value xid="10">1959</value> | |
| <value xid="11">1960</value> | |
| <value xid="12">1961</value> | |
| <value xid="13">1962</value> | |
| <value xid="14">1963</value> | |
| <value xid="15">1964</value> | |
| <value xid="16">1965</value> | |
| <value xid="17">1966</value> | |
| <value xid="18">1967</value> | |
| <value xid="19">1968</value> | |
| <value xid="20">1969</value> | |
| <value xid="21">1970</value> | |
| <value xid="22">1971</value> | |
| <value xid="23">1972</value> | |
| <value xid="24">1973</value> | |
| <value xid="25">1974</value> | |
| <value xid="26">1975</value> | |
| <value xid="27">1976</value> | |
| <value xid="28">1977</value> | |
| <value xid="29">1978</value> | |
| <value xid="30">1979</value> | |
| <value xid="31">1980</value> | |
| <value xid="32">1981</value> | |
| <value xid="33">1982</value> | |
| <value xid="34">1983</value> | |
| <value xid="35">1984</value> | |
| <value xid="36">1985</value> | |
| <value xid="37">1986</value> | |
| <value xid="38">1987</value> | |
| <value xid="39">1988</value> | |
| <value xid="40">1989</value> | |
| <value xid="41">1990</value> | |
| <value xid="42">1991</value> | |
| <value xid="43">1992</value> | |
| <value xid="44">1993</value> | |
| <value xid="45">1994</value> | |
| <value xid="46">1995</value> | |
| <value xid="47">1996</value> | |
| <value xid="48">1997</value> | |
| <value xid="49">1998</value> | |
| <value xid="50">1999</value> | |
| <value xid="51">2000</value> | |
| <value xid="52">2001</value> | |
| <value xid="53">2002</value> | |
| <value xid="54">2003</value> | |
| <value xid="55">2004</value> | |
| <value xid="56">2005</value> | |
| <value xid="57">2006</value> | |
| </series> | |
| <graphs> | |
| <graph gid="1"> | |
| <value xid="0">2.54</value> | |
| <value xid="1">2.51</value> | |
| <value xid="2">2.53</value> | |
| <value xid="3">2.53</value> | |
| <value xid="4">2.68</value> | |
| <value xid="5">2.78</value> | |
| <value xid="6">2.77</value> | |
| <value xid="7">2.79</value> | |
| <value xid="8">3.09</value> | |
| <value xid="9">3.01</value> | |
| <value xid="10">2.90</value> | |
| <value xid="11">2.88</value> | |
| <value xid="12">2.89</value> | |
| <value xid="13">2.90</value> | |
| <value xid="14">2.89</value> | |
| <value xid="15">2.88</value> | |
| <value xid="16">2.86</value> | |
| <value xid="17">2.88</value> | |
| <value xid="18">2.92</value> | |
| <value xid="19">2.94</value> | |
| <value xid="20">3.09</value> | |
| <value xid="21">3.18</value> | |
| <value xid="22">3.39</value> | |
| <value xid="23">3.39</value> | |
| <value xid="24">3.89</value> | |
| <value xid="25">6.87</value> | |
| <value xid="26">7.67</value> | |
| <value xid="27">8.19</value> | |
| <value xid="28">8.57</value> | |
| <value xid="29">9.00</value> | |
| <value xid="30">12.64</value> | |
| <value xid="31">21.59</value> | |
| <value xid="32">31.77</value> | |
| <value xid="33">28.52</value> | |
| <value xid="34">26.19</value> | |
| <value xid="35">25.88</value> | |
| <value xid="36">24.09</value> | |
| <value xid="37">12.51</value> | |
| <value xid="38">15.40</value> | |
| <value xid="39">12.58</value> | |
| <value xid="40">15.86</value> | |
| <value xid="41">20.03</value> | |
| <value xid="42">16.54</value> | |
| <value xid="43">15.99</value> | |
| <value xid="44">14.25</value> | |
| <value xid="45">13.19</value> | |
| <value xid="46">14.62</value> | |
| <value xid="47">18.46</value> | |
| <value xid="48">17.23</value> | |
| <value xid="49">10.87</value> | |
| <value xid="50">15.56</value> | |
| <value xid="51">26.72</value> | |
| <value xid="52">21.84</value> | |
| <value xid="53">22.51</value> | |
| <value xid="54">27.54</value> | |
| <value xid="55">38.93</value> | |
| <value xid="56">46.47</value> | |
| <value xid="57">58.30</value> | |
| </graph> | |
| <graph gid="2"> | |
| <value xid="0">20.21</value> | |
| <value xid="1">19.73</value> | |
| <value xid="2">18.43</value> | |
| <value xid="3">18.08</value> | |
| <value xid="4">19.01</value> | |
| <value xid="5">19.57</value> | |
| <value xid="6">19.58</value> | |
| <value xid="7">19.43</value> | |
| <value xid="8">20.83</value> | |
| <value xid="9">19.73</value> | |
| <value xid="10">18.87</value> | |
| <value xid="11">18.43</value> | |
| <value xid="12">18.31</value> | |
| <value xid="13">18.19</value> | |
| <value xid="14">17.89</value> | |
| <value xid="15">17.60</value> | |
| <value xid="16">17.20</value> | |
| <value xid="17">16.84</value> | |
| <value xid="18">16.56</value> | |
| <value xid="19">16.00</value> | |
| <value xid="20">15.95</value> | |
| <value xid="21">15.52</value> | |
| <value xid="22">15.85</value> | |
| <value xid="23">15.36</value> | |
| <value xid="24">16.59</value> | |
| <value xid="25">26.39</value> | |
| <value xid="26">27.00</value> | |
| <value xid="27">27.26</value> | |
| <value xid="28">26.78</value> | |
| <value xid="29">26.14</value> | |
| <value xid="30">32.98</value> | |
| <value xid="31">49.63</value> | |
| <value xid="32">66.20</value> | |
| <value xid="33">55.98</value> | |
| <value xid="34">49.80</value> | |
| <value xid="35">47.18</value> | |
| <value xid="36">42.40</value> | |
| <value xid="37">21.62</value> | |
| <value xid="38">25.68</value> | |
| <value xid="39">20.14</value> | |
| <value xid="40">24.22</value> | |
| <value xid="41">29.03</value> | |
| <value xid="42">23.00</value> | |
| <value xid="43">21.59</value> | |
| <value xid="44">18.68</value> | |
| <value xid="45">16.86</value> | |
| <value xid="46">18.17</value> | |
| <value xid="47">22.40</value> | |
| <value xid="48">20.39</value> | |
| <value xid="49">12.66</value> | |
| <value xid="50">17.78</value> | |
| <value xid="51">29.54</value> | |
| <value xid="52">23.39</value> | |
| <value xid="53">23.78</value> | |
| <value xid="54">28.42</value> | |
| <value xid="55">54.93</value> | |
| <value xid="56">47.97</value> | |
| <value xid="57">58.30</value> | |
| </graph> | |
| </graphs> | |
| <guides> | |
| <guide> | |
| <start_value>26.16</start_value> | |
| <title>Average world ($26,16)</title> | |
| <color>#00CC00</color> | |
| <inside>true</inside> | |
| </guide> | |
| </guides> | |
| </chart> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- Value between [] brackets, for example [#FFFFFF] shows default value which is used if this parameter is not set --> | |
| <!-- This means, that if you are happy with this value, you can delete this line at all and reduce file size --> | |
| <!-- value or explanation between () brackets shows the range or type of values you should use for this parameter --> | |
| <!-- the top left corner has coordinates x = 0, y = 0 --> | |
| <!-- "!" before x or y position (for example: <x>!20</x>) means that the coordinate will be calculated from the right side or the bottom --> | |
| <settings> | |
| <data_type></data_type> <!-- [xml] (xml / csv) --> | |
| <csv_separator></csv_separator> <!-- [;] (string) csv file data separator (you need it only if you are using csv file for your data) --> | |
| <skip_rows></skip_rows> <!-- [0] (Number) if you are using csv data type, you can set the number of rows which should be skipped here --> | |
| <font></font> <!-- [Arial] (font name) use device fonts, such as Arial, Times New Roman, Tahoma, Verdana... --> | |
| <text_size>15</text_size> <!-- [11] (Number) text size of all texts. Every text size can be set individually in the settings below --> | |
| <text_color></text_color> <!-- [#000000] (hex color code) main text color. Every text color can be set individually in the settings below--> | |
| <decimals_separator></decimals_separator> <!-- [,] (string) decimal separator. Note, that this is for displaying data only. Decimals in data xml file must be separated with dot --> | |
| <thousands_separator></thousands_separator> <!-- [ ] (string) thousand separator. use "none" if you don't want to separate --> | |
| <digits_after_decimal>2</digits_after_decimal> <!-- [] (Number) if your value has less digits after decimal then is set here, zeroes will be added --> | |
| <scientific_min></scientific_min> <!-- [0.000001] If absolute value of your number is equal or less then scientific_min, this number will be formatted using scientific notation, for example: 0.0000023 -> 2.3e-6 --> | |
| <scientific_max></scientific_max> <!-- [1000000000000000] If absolute value of your number is equal or bigger then scientific_max, this number will be formatted using scientific notation, for example: 15000000000000000 -> 1.5e16 --> | |
| <redraw>true</redraw> <!-- [false] (true / false) if your chart's width or height is set in percents, and redraw is set to true, the chart will be redrawn then screen size changes --> | |
| <!-- Legend, buttons labels will not be repositioned if you set your x and y values for these objects --> | |
| <reload_data_interval></reload_data_interval> <!-- [0] (Number) how often data should be reloaded (time in seconds) If you are using this feature I strongly recommend to turn off zoom function (set <zoomable>false</zoomable>) --> | |
| <preloader_on_reload></preloader_on_reload> <!-- [false] (true / false) Whether to show preloaded when data or settings are reloaded --> | |
| <add_time_stamp></add_time_stamp> <!-- [false] (true / false) if true, a unique number will be added every time flash loads data. Mainly this feature is useful if you set reload _data_interval >0 --> | |
| <connect></connect> <!-- [false] (true / false) whether to connect points if y data is missing --> | |
| <hide_bullets_count>20</hide_bullets_count> <!-- [] (Number) if there are more then hideBulletsCount points on the screen, bullets can be hidden, to avoid mess. Leave empty, or 0 to show bullets all the time. This rule doesn't influence if custom bullet is defined near y value, in data file --> | |
| <link_target></link_target> <!-- [] (_blank, _top ...) --> | |
| <start_on_axis></start_on_axis> <!-- [true] (true / false) if set to false, graph is moved 1/2 of one series interval from Y axis --> | |
| <colors></colors> <!-- [#FF0000,#0000FF,#00FF00,#FF9900,#CC00CC,#00CCCC,#33FF00,#990000,#000066,#555555] Colors of graphs. if the graph color is not set, color from this array will be used --> | |
| <rescale_on_hide></rescale_on_hide> <!-- [true] (true/false) When you show or hide graphs, the chart recalculates min and max values (rescales the chart). If you don't want this, set this to false. --> | |
| <js_enabled></js_enabled> <!-- [true] (true / false) In case you don't use any flash - JavaScript communication, you shuold set this setting to false - this will save some CPU and will disable the security warning message which appears when opening the chart from hard drive. --> | |
| <background> <!-- BACKGROUND --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) use 0 if you are using custom swf or jpg for background --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <file></file> <!-- [] (filename) swf or jpg file of a background. Do not use progressive jpg file, it will be not visible with flash player 7 --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| </background> | |
| <plot_area> <!-- PLOT AREA (the area between axes) --> | |
| <color></color> <!-- [#FFFFFF](hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) if you want it to be different than background color, use bigger than 0 value --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <margins> <!-- plot area margins --> | |
| <left></left> <!-- [60](Number / Number%) --> | |
| <top></top> <!-- [60](Number / Number%) --> | |
| <right></right> <!-- [60](Number / Number%) --> | |
| <bottom></bottom> <!-- [80](Number / Number%) --> | |
| </margins> | |
| </plot_area> | |
| <scroller> | |
| <enabled></enabled> <!-- [true] (true / false) whether to show scroller when chart is zoomed or not --> | |
| <y></y> <!-- [] (Number) Y position of scroller. If not set here, will be displayed above plot area --> | |
| <color></color> <!-- [#DADADA] (hex color code) scrollbar color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (Number) scrollbar alpha --> | |
| <bg_color></bg_color> <!-- [#F0F0F0] (hex color code) scroller background color. Separate color codes with comas for gradient --> | |
| <bg_alpha></bg_alpha> <!-- [100] (Number) scroller background alpha --> | |
| <height></height> <!-- [10] (Number) scroller height --> | |
| </scroller> | |
| <grid> <!-- GRID --> | |
| <x> <!-- vertical grid --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false](true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [4] (Number) approximate number of gridlines --> | |
| </x> | |
| <y_left> <!-- horizontal grid, Y left axis. Visible only if there is at least one graph assigned to left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha>0</alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color>000000</fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha>5</fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_left> | |
| <y_right> <!-- horizontal grid, Y right axis. Visible only if there is at least one graph assigned to right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_right> | |
| </grid> | |
| <values> <!-- VALUES --> | |
| <x> <!-- x axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [false] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| </x> | |
| <y_left> <!-- y left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically. --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_left> | |
| <y_right> <!-- y right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically. --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_right> | |
| </values> | |
| <axes> <!-- axes --> | |
| <x> <!-- X axis --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| </x> | |
| <y_left> <!-- Y left axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_left> | |
| <y_right> <!-- Y right axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_right> | |
| </axes> | |
| <indicator> <!-- INDICATOR --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <zoomable></zoomable> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#BBBB00] (hex color code) line and x balloon background color --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <selection_color></selection_color> <!-- [#BBBB00] (hex color code) --> | |
| <selection_alpha></selection_alpha> <!-- [25] (0 - 100) --> | |
| <x_balloon_enabled></x_balloon_enabled> <!-- [true] (true / false) --> | |
| <x_balloon_text_color></x_balloon_text_color> <!-- [text_color] (hex color code) --> | |
| </indicator> | |
| <balloon> <!-- BALLOON --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <only_one></only_one> <!-- [false] (true / false) if set to true, only one balloon at a time will be displayed --> | |
| <on_off></on_off> <!-- [true] (true/false) whether it will be possible to turn on or off y balloons by clicking on a legend or on a graph --> | |
| <color></color> <!-- [] (hex color code) balloon background color. If not set, graph.balloon_color will be used. --> | |
| <alpha></alpha> <!-- [] (0 - 100) balloon background opacity. If not set, graph.balloon_alpha will be used. --> | |
| <text_color></text_color> <!-- [] (hex color code) baloon text color. If not set, graph.balloon_text_color will be used --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <max_width></max_width> <!-- [] (Number) The maximum width of a balloon. If not set, half width of plot area will be used --> | |
| <corner_radius></corner_radius> <!-- [0] (Number) Corner radius of a balloon. If you set it > 0, the balloon will not display arrow --> | |
| <border_width></border_width> <!-- [0] (Number) --> | |
| <border_alpha></border_alpha> <!-- [balloon.alpha] (Number) --> | |
| <border_color></border_color> <!-- [balloon.color] (hex color code) --> | |
| </balloon> | |
| <legend> <!-- LEGEND --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) if empty, will be equal to left margin --> | |
| <y></y> <!-- [] (Number / Number% / !Number) if empty, will be 20px below x axis values --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will be equal to plot area width --> | |
| <max_columns></max_columns> <!-- [] (Number) the maximum number of columns in the legend --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) background color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) border color --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) border alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <spacing></spacing> <!-- [10] (Number) vertical and horizontal gap between legend entries --> | |
| <margins></margins> <!-- [0] (Number) legend margins (space between legend border and legend entries, recommended to use only if legend border is visible or background color is different from chart area background color) --> | |
| <graph_on_off></graph_on_off> <!-- [true] (true / false) if true, color box gains "checkbox" function - it is possible to make graphs visible/invisible by clicking on this checkbox --> | |
| <reverse_order></reverse_order> <!-- [false] (true / false) whether to sort legend entries in a reverse order --> | |
| <align></align> <!-- [left] (left / center / right) alignment of legend entries --> | |
| <key> <!-- KEY (the color box near every legend entry) --> | |
| <size></size> <!-- [16] (Number) key size--> | |
| <border_color></border_color> <!-- [] (hex color code) leave empty if you don't want to have border--> | |
| <key_mark_color></key_mark_color> <!-- [#FFFFFF] (hex color code) key tick mark color --> | |
| </key> | |
| <values> <!-- VALUES --> | |
| <enabled></enabled> <!-- [false] (true / false) whether to show values near legend entries or not --> | |
| <width></width> <!-- [80] (Number) width of text field for value --> | |
| <align></align> <!-- [right] (right / left) --> | |
| <text><![CDATA[]]></text> <!-- [{value}] ({title} {value} {series} {description} {percents}) You can format any text: {value} will be replaced with value, {description} - with description and so on. You can add your own text or html code too. --> | |
| </values> | |
| </legend> | |
| <zoom_out_button> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of zoom out button, if not defined, will be aligned to right of plot area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of zoom out button, if not defined, will be aligned to top of plot area --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text and magnifying glass icon color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00] (hex color code) button text and magnifying glass icon roll over color --> | |
| <text_size></text_size> <!-- [text_size] (Number) button text size --> | |
| <text></text> <!-- [Show all] (text) --> | |
| </zoom_out_button> | |
| <help> <!-- HELP button and balloon --> | |
| <button> <!-- help button is only visible if balloon text is defined --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of help button, if not defined, will be aligned to right of chart area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of help button, if not defined, will be aligned to top of chart area --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00](hex color code) button text roll over color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text></text> <!-- [?] (text) --> | |
| </button> | |
| <balloon> <!-- help balloon --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <width></width> <!-- [300] (Number) --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text><![CDATA[]]></text> <!-- [] (text) some html tags may be used (supports <b>, <i>, <u>, <font>, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| </balloon> | |
| </help> | |
| <export_as_image> <!-- export_as_image feature works only on a web server --> | |
| <file></file> <!-- [] (filename) if you set filename here, context menu (then user right clicks on flash movie) "Export as image" will appear. This will allow user to export chart as an image. Collected image data will be posted to this file name (use amline/export.php or amline/export.aspx) --> | |
| <target></target> <!-- [] (_blank, _top ...) target of a window in which export file must be called --> | |
| <x></x> <!-- [0] (Number / Number% / !Number) x position of "Collecting data" text --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of "Collecting data" text. If not set, will be aligned to the bottom of flash movie --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of "Collecting data" text --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </export_as_image> | |
| <error_messages> <!-- "error_messages" settings will be applied for all error messages except the one which is showed if settings file wasn't found --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of error message. If not set, will be aligned to the center --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of error message. If not set, will be aligned to the center --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of error message. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </error_messages> | |
| <strings> | |
| <no_data></no_data> <!-- [No data for selected period] (text) if data for selected period is missing, this message will be displayed --> | |
| <export_as_image></export_as_image> <!-- [Export as image] (text) text for right click menu --> | |
| <error_in_data_file></error_in_data_file> <!-- [Error in data file] (text) this text is displayed if there is an error in data file or there is no data in file. "There is no data" means that there should actually be at least one space in data file. If data file will be completly empty, it will display "error loading file" text --> | |
| <collecting_data></collecting_data> <!-- [Collecting data] (text) this text is displayed while exporting chart to an image --> | |
| <wrong_zoom_value></wrong_zoom_value> <!-- [Incorrect values] (text) this text is displayed if you set zoom through JavaScript and entered from or to value was not find between series --> | |
| <!-- the strings below are only important if you format your axis values as durations --> | |
| <ss></ss> <!-- [] unit of seconds --> | |
| <mm></mm> <!-- [:] unit of minutes --> | |
| <hh></hh> <!-- [:] unit of hours --> | |
| <DD></DD> <!-- [d. ] unit of days --> | |
| </strings> | |
| <context_menu> <!-- context menu allows you to controll right-click menu items. You can add custom menu items to create custom controls --> | |
| <!-- "function_name" specifies JavaScript function which will be called when user clicks on this menu. You can pass variables, for example: function_name="alert('something')" --> | |
| <!-- "title" sets menu item text. Do not use for title: Show all, Zoom in, Zoom out, Print, Settings... --> | |
| <!-- you can have any number of custom menus. Uncomment the line below to enable this menu and add apropriate JS function to your html file. --> | |
| <!-- <menu function_name="printChart" title="Print chart"></menu> --> | |
| <default_items> | |
| <zoom></zoom> <!-- [false] (true / false) to show or not flash players zoom menu --> | |
| <print></print> <!-- [true] (true / false) to show or not flash players print menu --> | |
| </default_items> | |
| </context_menu> | |
| <vertical_lines> <!-- line chart can also display vertical lines/columns (set <vertical_lines>true</vertical_lines> in graph settings for that). If you also set <line_alpha>0</line_alpha> your line chart will become column chart --> | |
| <width>80</width> <!-- [0] (0 - 100) width of vertical line in percents. 0 for hairline. Set > 0 if you want to have column --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <clustered></clustered> <!-- [false] in case you have more then one graph with vertical lines enabled, you might want to place your columns next to each other, set true for that. --> | |
| <mask></mask> <!-- [true] (true / false) as line chart by default starts on axis, and your column width is >0, then some part of first and last column will be outside plot area (incase you don't set <start_on_axis>false</false> Mask will cut off the part outside the plot area. Set to false if you don't want this. --> | |
| </vertical_lines> | |
| <labels> <!-- LABELS --> | |
| <!-- you can add as many labels as you want. Some html tags supported: <b>, <i>, <u>, <font>, <a href=""> --> | |
| <!-- labels can also be added in data xml file, using exactly the same structure like it is here --> | |
| <label lid="0"> | |
| <x></x> <!-- [0] (Number / Number% / !Number) --> | |
| <y>20</y> <!-- [0] (Number / Number% / !Number) --> | |
| <rotate></rotate> <!-- [false] (true / false) --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will stretch from left to right untill label fits --> | |
| <align>center</align> <!-- [left] (left / center / right) --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [text_size](Number) button text size --> | |
| <text> <!-- [] (text) html tags may be used (supports <b>, <i>, <u>, <font>, <a href="">, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| <![CDATA[<b>Historical Crude Oil Prices</b>]]> | |
| </text> | |
| </label> | |
| </labels> | |
| <graphs> <!-- GRAPHS SETTINGS. These settings can also be specified in data file, as attributes of <graph>, in this case you can delete everything from <graphs> to </graphs> (including) --> | |
| <!-- It is recommended to have graph settings here if you don't want to mix data with other params --> | |
| <!-- copy <graph>...</graph> (including) as many times as many graphs you have and edit settings individually --> | |
| <!-- if graph settings are defined both here and in data file, the ones from data file are used --> | |
| <graph gid="1"> <!-- if you are using XML data file, graph "gid" must match graph "gid" in data file --> | |
| <axis>left</axis> <!-- [left] (left/ right) indicates which y axis should be used --> | |
| <title>Nominal</title> <!-- [] (graph title) --> | |
| <color>#FFCC00</color> <!-- [] (hex color code) if not defined, uses colors from this array: #FF0000, #0000FF, #00FF00, #FF9900, #CC00CC, #00CCCC, #33FF00, #990000, #000066 --> | |
| <color_hover></color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <line_alpha>0</line_alpha> <!-- [100] (0 - 100) --> | |
| <line_width></line_width> <!-- [0] (Number) 0 for hairline --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) if you want the chart to be area chart, use bigger than 0 value --> | |
| <fill_color></fill_color> <!-- [grpah.color] (hex color code) Separate color codes with comas for gradient --> | |
| <balloon_color></balloon_color> <!-- [graph color] (hex color code) leave empty to use the same color as graph --> | |
| <balloon_alpha></balloon_alpha> <!-- [100] (0 - 100) --> | |
| <balloon_text_color></balloon_text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <bullet></bullet> <!-- [] (square, round, square_outlined, round_outlined, square_outline, round_outline, filename.swf) can be used predefined bullets or loaded custom bullets. Leave empty if you don't want to have bullets at all. Outlined bullets use plot area color for outline color --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| <bullet_size></bullet_size> <!-- [8](Number) affects only predefined bullets, does not change size of custom loaded bullets --> | |
| <bullet_color></bullet_color> <!-- [graph color] (hex color code) affects only predefined (square and round) bullets, does not change color of custom loaded bullets. Leave empty to use the same color as graph --> | |
| <bullet_alpha></bullet_alpha> <!-- [graph alpha] (hex color code) Leave empty to use the same alpha as graph --> | |
| <hidden></hidden> <!-- [false] (true / false) vill not be visible until you check corresponding checkbox in the legend --> | |
| <selected>false</selected> <!-- [true] (true / false) if true, balloon indicating value will be visible then roll over plot area --> | |
| <balloon_text> | |
| <![CDATA[${value}]]> <!-- [<b>{value}</b><br>{description}] ({title} {value} {series} {description} {percents}) You can format any balloon text: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </balloon_text> | |
| <data_labels> | |
| <![CDATA[{value}]]> <!-- [] ({title} {value} {series} {description} {percents}) Data labels can display value (and more) near your point on the plot area. --> | |
| <!-- to avoid overlapping, data labels, the same as bullets are not visible if there are more then hide_bullets_count data points on plot area. --> | |
| </data_labels> | |
| <data_labels_text_color></data_labels_text_color> <!-- [text_color] (hex color code) --> | |
| <data_labels_text_size></data_labels_text_size> <!-- [text_size] (Number) --> | |
| <data_labels_position></data_labels_position> <!-- [above] (below / above) --> | |
| <vertical_lines>true</vertical_lines> <!-- [false] (true / false) whether to draw vertical lines or not. If you want to show vertical lines only (without the graph, set line_alpha to 0 --> | |
| <visible_in_legend></visible_in_legend> <!-- [true] (true / false) whether to show legend entry for this graph or not --> | |
| </graph> | |
| <graph gid="2"> | |
| <axis>left</axis> | |
| <title>Inflation Adjusted 2006</title> | |
| <line_width>2</line_width> | |
| <color>#999999</color> | |
| <bullet>square</bullet> | |
| <bullet_size>8</bullet_size> | |
| <selected>true</selected> | |
| <balloon_text> | |
| <![CDATA[${value}]]> | |
| </balloon_text> | |
| </graph> | |
| </graphs> | |
| <guides> <!-- guides are straight lines drawn through all plot area at a give value. Can also be filled with color --> | |
| <max_min></max_min> <!-- [false] (true / false) whether to include guides' values when calculating min and max of a chart --> | |
| <guide> <!-- there can be any number of quides. guides can also be set in data xml file, using the same syntax as here --> | |
| <axis></axis> <!-- [left] (left / right) y axis of a guide. There should be at least one graph assigned to this axis in order guide to be visible --> | |
| <start_value></start_value> <!-- (Number) value at which guide should be placed --> | |
| <end_value></end_value> <!-- (Number) if you set value here too, another quide will be drawn. If you set fill alpha > 0, then the area between these quides will be filled with color --> | |
| <title></title> <!-- [] (String) text which will be displayed near the guide --> | |
| <width></width> <!-- [0] (Number) width of a guide line (0 for hairline) --> | |
| <color></color> <!-- [#000000] (hex color code) color of guide line --> | |
| <alpha></alpha> <!-- [100] (0 - 100) opacity of guide line --> | |
| <fill_color></fill_color> <!-- [guide.color] (hex color code) fill color. If not defined, color of a guide will be used. Separate color codes with comas for gradient --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of a fill --> | |
| <inside></inside> <!-- [values.y_{axis}.inside] whether to place title inside plot area --> | |
| <centered></centered> <!-- [true] (true / false) if you have start and end values defined, title can be placed in the middle between these values. If false, it will be placed near start_value --> | |
| <rotate></rotate> <!-- [values.y_{axis}.rotate](0 - 90) angle of rotation of title --> | |
| <text_size></text_size> <!-- [values.y_{axis}.text_size] (Number) --> | |
| <text_color></text_color> <!-- [values.y_{axis}.color](hex color code) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| </guide> | |
| </guides> | |
| </settings> |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | |
| <title>Auto-resizing chart</title> | |
| </head> | |
| <body> | |
| <!-- saved from url=(0013)about:internet --> | |
| <!-- amline script--> | |
| <script type="text/javascript" src="../../amline/swfobject.js"></script> | |
| <div id="flashcontent"> | |
| <strong>You need to upgrade your Flash Player</strong> | |
| </div> | |
| <script type="text/javascript"> | |
| // <![CDATA[ | |
| var so = new SWFObject("../../amline/amline.swf", "amline", "100%", "100%", "8", "#FFFFFF"); | |
| so.addVariable("path", "../../amline/"); | |
| so.addVariable("settings_file", encodeURIComponent("amline_settings.xml")); | |
| so.addVariable("data_file", encodeURIComponent("amline_data.xml")); | |
| so.write("flashcontent"); | |
| // ]]> | |
| </script> | |
| <!-- end of amline script --> | |
| </body> | |
| </html> |
| 1900;-0.220;-0.362 | |
| 1901;-0.300;-0.376 | |
| 1902;-0.430;-0.395 | |
| 1903;-0.507;-0.414 | |
| 1904;-0.553;-0.434 | |
| 1905;-0.411;-0.452 | |
| 1906;-0.328;-0.468 | |
| 1907;-0.507;-0.480 | |
| 1908;-0.559;-0.489 | |
| 1909;-0.564;-0.492 | |
| 1910;-0.547;-0.488 | |
| 1911;-0.580;-0.478 | |
| 1912;-0.490;-0.462 | |
| 1913;-0.489;-0.443 | |
| 1914;; | |
| 1915;; | |
| 1916;; | |
| 1917;; | |
| 1918;; | |
| 1919;-0.327;-0.355 | |
| 1920;-0.313;-0.345 | |
| 1921;-0.262;-0.334 | |
| 1922;-0.381;-0.322 | |
| 1923;-0.346;-0.310 | |
| 1924;-0.360;-0.298 | |
| 1925;-0.274;-0.285 | |
| 1926;-0.162;-0.272 | |
| 1927;-0.252;-0.258 | |
| 1928;-0.255;-0.246 | |
| 1929;-0.376;-0.233 | |
| 1930;-0.164;-0.219 | |
| 1931;-0.124;-0.205 | |
| 1932;-0.154;-0.189 | |
| 1933;-0.296;-0.172 | |
| 1934;-0.158;-0.151 | |
| 1935;-0.183;-0.128 | |
| 1936;-0.152;-0.103 | |
| 1937;-0.033;-0.078 | |
| 1938;0.009;-0.054 | |
| 1939;; | |
| 1940;; | |
| 1941;; | |
| 1942;; | |
| 1943;; | |
| 1944;; | |
| 1945;; | |
| 1946;-0.204;-0.102 | |
| 1947;-0.196;-0.126 | |
| 1948;-0.203;-0.147 | |
| 1949;-0.210;-0.162 | |
| 1950;-0.307;-0.171 | |
| 1951;-0.168;-0.175 | |
| 1952;-0.073;-0.176 | |
| 1953;-0.027;-0.174 | |
| 1954;-0.251;-0.169 | |
| 1955;-0.281;-0.162 | |
| 1956;-0.348;-0.151 | |
| 1957;-0.074;-0.139 | |
| 1958;-0.011;-0.125 | |
| 1959;-0.074;-0.114 | |
| 1960;-0.124;-0.106 | |
| 1961;-0.024;-0.104 | |
| 1962;-0.022;-0.108 | |
| 1963;0.000;-0.114 | |
| 1964;-0.296;-0.120 | |
| 1965;-0.217;-0.125 | |
| 1966;-0.147;-0.127 | |
| 1967;-0.150;-0.125 | |
| 1968;-0.160;-0.120 | |
| 1969;-0.011;-0.114 | |
| 1970;-0.068;-0.108 | |
| 1971;-0.190;-0.104 | |
| 1972;-0.056;-0.100 | |
| 1973;0.077;-0.097 | |
| 1974;-0.213;-0.091 | |
| 1975;-0.170;-0.082 | |
| 1976;-0.254;-0.068 | |
| 1977;0.019;-0.050 | |
| 1978;-0.063;-0.028 | |
| 1979;0.050;-0.006 | |
| 1980;0.077;0.015 | |
| 1981;0.120;0.032 | |
| 1982;0.011;0.046 | |
| 1983;0.177;0.058 | |
| 1984;-0.021;0.069 | |
| 1985;-0.037;0.081 | |
| 1986;0.030;0.094 | |
| 1987;0.179;0.108 | |
| 1988;0.180;0.123 | |
| 1989;0.104;0.137 | |
| 1990;0.255;0.150 | |
| 1991;0.210;0.163 | |
| 1992;0.065;0.178 | |
| 1993;0.110;0.195 | |
| 1994;0.172;0.216 | |
| 1995;0.269;0.241 | |
| 1996;0.141;0.268 | |
| 1997;0.353;0.296 | |
| 1998;0.548;0.323 | |
| 1999;0.298;0.348 | |
| 2000;0.267;0.370 | |
| 2001;0.411;0.389 | |
| 2002;0.462;0.404 | |
| 2003;0.470;0.415 | |
| 2004;0.445;0.422 | |
| 2005;0.470;0.426 |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- Value between [] brackets, for example [#FFFFFF] shows default value which is used if this parameter is not set --> | |
| <!-- This means, that if you are happy with this value, you can delete this line at all and reduce file size --> | |
| <!-- value or explanation between () brackets shows the range or type of values you should use for this parameter --> | |
| <!-- the top left corner has coordinates x = 0, y = 0 --> | |
| <!-- "!" before x or y position (for example: <x>!20</x>) means that the coordinate will be calculated from the right side or the bottom --> | |
| <settings> | |
| <data_type>csv</data_type> <!-- [xml] (xml / csv) --> | |
| <csv_separator></csv_separator> <!-- [;] (string) csv file data separator (you need it only if you are using csv file for your data) --> | |
| <skip_rows></skip_rows> <!-- [0] (Number) if you are using csv data type, you can set the number of rows which should be skipped here --> | |
| <font>Georgia</font> <!-- [Arial] (font name) use device fonts, such as Arial, Times New Roman, Tahoma, Verdana... --> | |
| <text_size>12</text_size> <!-- [11] (Number) text size of all texts. Every text size can be set individually in the settings below --> | |
| <text_color>#FFFFFF</text_color> <!-- [#000000] (hex color code) main text color. Every text color can be set individually in the settings below--> | |
| <decimals_separator></decimals_separator> <!-- [,] (string) decimal separator. Note, that this is for displaying data only. Decimals in data xml file must be separated with dot --> | |
| <thousands_separator></thousands_separator> <!-- [ ] (string) thousand separator. use "none" if you don't want to separate --> | |
| <digits_after_decimal></digits_after_decimal> <!-- [] (Number) if your value has less digits after decimal then is set here, zeroes will be added --> | |
| <scientific_min></scientific_min> <!-- [0.000001] If absolute value of your number is equal or less then scientific_min, this number will be formatted using scientific notation, for example: 0.0000023 -> 2.3e-6 --> | |
| <scientific_max></scientific_max> <!-- [1000000000000000] If absolute value of your number is equal or bigger then scientific_max, this number will be formatted using scientific notation, for example: 15000000000000000 -> 1.5e16 --> | |
| <redraw></redraw> <!-- [false] (true / false) if your chart's width or height is set in percents, and redraw is set to true, the chart will be redrawn then screen size changes --> | |
| <!-- Legend, buttons labels will not be repositioned if you set your x and y values for these objects --> | |
| <reload_data_interval></reload_data_interval> <!-- [0] (Number) how often data should be reloaded (time in seconds) If you are using this feature I strongly recommend to turn off zoom function (set <zoomable>false</zoomable>) --> | |
| <preloader_on_reload></preloader_on_reload> <!-- [false] (true / false) Whether to show preloaded when data or settings are reloaded --> | |
| <add_time_stamp></add_time_stamp> <!-- [false] (true / false) if true, a unique number will be added every time flash loads data. Mainly this feature is useful if you set reload _data_interval >0 --> | |
| <connect></connect> <!-- [false] (true / false) whether to connect points if y data is missing --> | |
| <hide_bullets_count>15</hide_bullets_count> <!-- [] (Number) if there are more then hideBulletsCount points on the screen, bullets can be hidden, to avoid mess. Leave empty, or 0 to show bullets all the time. This rule doesn't influence if custom bullet is defined near y value, in data file --> | |
| <link_target></link_target> <!-- [] (_blank, _top ...) --> | |
| <start_on_axis></start_on_axis> <!-- [true] (true / false) if set to false, graph is moved 1/2 of one series interval from Y axis --> | |
| <colors></colors> <!-- [#FF0000,#0000FF,#00FF00,#FF9900,#CC00CC,#00CCCC,#33FF00,#990000,#000066,#555555] Colors of graphs. if the graph color is not set, color from this array will be used --> | |
| <rescale_on_hide></rescale_on_hide> <!-- [true] (true/false) When you show or hide graphs, the chart recalculates min and max values (rescales the chart). If you don't want this, set this to false. --> | |
| <js_enabled></js_enabled> <!-- [true] (true / false) In case you don't use any flash - JavaScript communication, you shuold set this setting to false - this will save some CPU and will disable the security warning message which appears when opening the chart from hard drive. --> | |
| <background> <!-- BACKGROUND --> | |
| <color>#000000</color> <!-- [#FFFFFF] (hex color code) Separate color codes with comas for gradient --> | |
| <alpha>100</alpha> <!-- [0] (0 - 100) use 0 if you are using custom swf or jpg for background --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha>100</border_alpha> <!-- [0] (0 - 100) --> | |
| <file></file> <!-- [] (filename) swf or jpg file of a background. Do not use progressive jpg file, it will be not visible with flash player 7 --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| </background> | |
| <plot_area> <!-- PLOT AREA (the area between axes) --> | |
| <color>#000000</color> <!-- [#FFFFFF](hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) if you want it to be different than background color, use bigger than 0 value --> | |
| <border_color>#555555</border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha>100</border_alpha> <!-- [0] (0 - 100) --> | |
| <margins> <!-- plot area margins --> | |
| <left>70</left> <!-- [60](Number / Number%) --> | |
| <top>70</top> <!-- [60](Number / Number%) --> | |
| <right>70</right> <!-- [60](Number / Number%) --> | |
| <bottom>100</bottom> <!-- [80](Number / Number%) --> | |
| </margins> | |
| </plot_area> | |
| <scroller> | |
| <enabled></enabled> <!-- [true] (true / false) whether to show scroller when chart is zoomed or not --> | |
| <y></y> <!-- [] (Number) Y position of scroller. If not set here, will be displayed above plot area --> | |
| <color>#FFFFFF</color> <!-- [#DADADA] (hex color code) scrollbar color --> | |
| <alpha>50</alpha> <!-- [100] (Number) scrollbar alpha --> | |
| <bg_color>#FFFFFF</bg_color> <!-- [#F0F0F0] (hex color code) scroller background color --> | |
| <bg_alpha>20</bg_alpha> <!-- [100] (Number) scroller background alpha --> | |
| <height></height> <!-- [10] (Number) scroller height --> | |
| </scroller> | |
| <grid> <!-- GRID --> | |
| <x> <!-- vertical grid --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color>#FFFFFF</color> <!-- [#000000] (hex color code) --> | |
| <alpha>5</alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false](true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [4] (Number) approximate number of gridlines --> | |
| </x> | |
| <y_left> <!-- horizontal grid, Y left axis. Visible only if there is at least one graph assigned to left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color>#FFFFFF</color> <!-- [#000000] (hex color code) --> | |
| <alpha>5</alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_left> | |
| <y_right> <!-- horizontal grid, Y right axis. Visible only if there is at least one graph assigned to right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_right> | |
| </grid> | |
| <values> <!-- VALUES --> | |
| <x> <!-- x axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [false] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| </x> | |
| <y_left> <!-- y left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically. --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_left> | |
| <y_right> <!-- y right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_right> | |
| </values> | |
| <axes> <!-- axes --> | |
| <x> <!-- X axis --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| </x> | |
| <y_left> <!-- Y left axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_left> | |
| <y_right> <!-- Y right axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_right> | |
| </axes> | |
| <indicator> <!-- INDICATOR --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <zoomable></zoomable> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#BBBB00] (hex color code) line and x balloon background color --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <selection_color></selection_color> <!-- [#BBBB00] (hex color code) --> | |
| <selection_alpha></selection_alpha> <!-- [25] (0 - 100) --> | |
| <x_balloon_enabled></x_balloon_enabled> <!-- [true] (true / false) --> | |
| <x_balloon_text_color></x_balloon_text_color> <!-- [text_color] (hex color code) --> | |
| </indicator> | |
| <balloon> <!-- BALLOON --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <only_one></only_one> <!-- [false] (true / false) if set to true, only one balloon at a time will be displayed --> | |
| <on_off></on_off> <!-- [true] (true/false) whether it will be possible to turn on or off y balloons by clicking on a legend or on a graph --> | |
| <color></color> <!-- [] (hex color code) balloon background color. If not set, graph.balloon_color will be used. --> | |
| <alpha></alpha> <!-- [] (0 - 100) balloon background opacity. If not set, graph.balloon_alpha will be used. --> | |
| <text_color></text_color> <!-- [] (hex color code) baloon text color. If not set, graph.balloon_text_color will be used --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <max_width></max_width> <!-- [] (Number) The maximum width of a balloon. If not set, half width of plot area will be used --> | |
| <corner_radius></corner_radius> <!-- [0] (Number) Corner radius of a balloon. If you set it > 0, the balloon will not display arrow --> | |
| <border_width></border_width> <!-- [0] (Number) --> | |
| <border_alpha></border_alpha> <!-- [balloon.alpha] (Number) --> | |
| <border_color></border_color> <!-- [balloon.color] (hex color code) --> | |
| </balloon> | |
| <legend> <!-- LEGEND --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) if empty, will be equal to left margin --> | |
| <y></y> <!-- [] (Number / Number% / !Number) if empty, will be 20px below x axis values --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will be equal to plot area width --> | |
| <max_columns></max_columns> <!-- [] (Number) the maximum number of columns in the legend --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) background color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) border color --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) border alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <spacing></spacing> <!-- [10] (Number) vertical and horizontal gap between legend entries --> | |
| <margins></margins> <!-- [0] (Number) legend margins (space between legend border and legend entries, recommended to use only if legend border is visible or background color is different from chart area background color) --> | |
| <graph_on_off>false</graph_on_off> <!-- [true] (true / false) if true, color box gains "checkbox" function - it is possible to make graphs visible/invisible by clicking on this checkbox --> | |
| <reverse_order></reverse_order> <!-- [false] (true / false) whether to sort legend entries in a reverse order --> | |
| <align></align> <!-- [left] (left / center / right) alignment of legend entries --> | |
| <key> <!-- KEY (the color box near every legend entry) --> | |
| <size></size> <!-- [16] (Number) key size--> | |
| <border_color></border_color> <!-- [] (hex color code) leave empty if you don't want to have border--> | |
| <key_mark_color></key_mark_color> <!-- [#FFFFFF] (hex color code) key tick mark color --> | |
| </key> | |
| <values> <!-- VALUES --> | |
| <enabled>true</enabled> <!-- [false] (true / false) whether to show values near legend entries or not --> | |
| <width></width> <!-- [80] (Number) width of text field for value --> | |
| <align>left</align> <!-- [right] (right / left) --> | |
| <text><![CDATA[{value} C]]></text> <!-- [{value}] ({title} {value} {series} {description} {percents}) You can format any text: {value} will be replaced with value, {description} - with description and so on. You can add your own text or html code too. --> | |
| </values> | |
| </legend> | |
| <zoom_out_button> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of zoom out button, if not defined, will be aligned to right of plot area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of zoom out button, if not defined, will be aligned to top of plot area --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text and magnifying glass icon color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00] (hex color code) button text and magnifying glass icon roll over color --> | |
| <text_size></text_size> <!-- [text_size] (Number) button text size --> | |
| <text></text> <!-- [Show all] (text) --> | |
| </zoom_out_button> | |
| <help> <!-- HELP button and balloon --> | |
| <button> <!-- help button is only visible if balloon text is defined --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of help button, if not defined, will be aligned to right of chart area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of help button, if not defined, will be aligned to top of chart area --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00](hex color code) button text roll over color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text></text> <!-- [?] (text) --> | |
| </button> | |
| <balloon> <!-- help balloon --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <width></width> <!-- [300] (Number) --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text><![CDATA[]]></text> <!-- [] (text) some html tags may be used (supports <b>, <i>, <u>, <font>, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| </balloon> | |
| </help> | |
| <export_as_image> <!-- export_as_image feature works only on a web server --> | |
| <file>../amline/export.php</file> <!-- [] (filename) if you set filename here, context menu (then user right clicks on flash movie) "Export as image" will appear. This will allow user to export chart as an image. Collected image data will be posted to this file name (use amline/export.php or amline/export.aspx) --> | |
| <target></target> <!-- [] (_blank, _top ...) target of a window in which export file must be called --> | |
| <x></x> <!-- [0] (Number / Number% / !Number) x position of "Collecting data" text --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of "Collecting data" text. If not set, will be aligned to the bottom of flash movie --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of "Collecting data" text --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </export_as_image> | |
| <error_messages> <!-- "error_messages" settings will be applied for all error messages except the one which is showed if settings file wasn't found --> | |
| <enabled>false</enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of error message. If not set, will be aligned to the center --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of error message. If not set, will be aligned to the center --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of error message. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </error_messages> | |
| <strings> | |
| <no_data></no_data> <!-- [No data for selected period] (text) if data for selected period is missing, this message will be displayed --> | |
| <export_as_image></export_as_image> <!-- [Export as image] (text) text for right click menu --> | |
| <error_in_data_file></error_in_data_file> <!-- [Error in data file] (text) this text is displayed if there is an error in data file or there is no data in file. "There is no data" means that there should actually be at least one space in data file. If data file will be completly empty, it will display "error loading file" text --> | |
| <collecting_data></collecting_data> <!-- [Collecting data] (text) this text is displayed while exporting chart to an image --> | |
| <wrong_zoom_value></wrong_zoom_value> <!-- [Incorrect values] (text) this text is displayed if you set zoom through JavaScript and entered from or to value was not find between series --> | |
| <!-- the strings below are only important if you format your axis values as durations --> | |
| <ss></ss> <!-- [] unit of seconds --> | |
| <mm></mm> <!-- [:] unit of minutes --> | |
| <hh></hh> <!-- [:] unit of hours --> | |
| <DD></DD> <!-- [d. ] unit of days --> | |
| </strings> | |
| <context_menu> <!-- context menu allows you to controll right-click menu items. You can add custom menu items to create custom controls --> | |
| <!-- "function_name" specifies JavaScript function which will be called when user clicks on this menu. You can pass variables, for example: function_name="alert('something')" --> | |
| <!-- "title" sets menu item text. Do not use for title: Show all, Zoom in, Zoom out, Print, Settings... --> | |
| <!-- you can have any number of custom menus. Uncomment the line below to enable this menu and add apropriate JS function to your html file. --> | |
| <!-- <menu function_name="printChart" title="Print chart"></menu> --> | |
| <default_items> | |
| <zoom></zoom> <!-- [false] (true / false) to show or not flash players zoom menu --> | |
| <print></print> <!-- [true] (true / false) to show or not flash players print menu --> | |
| </default_items> | |
| </context_menu> | |
| <vertical_lines> <!-- line chart can also display vertical lines/columns (set <vertical_lines>true</vertical_lines> in graph settings for that). If you also set <line_alpha>0</line_alpha> your line chart will become column chart --> | |
| <width></width> <!-- [0] (0 - 100) width of vertical line in percents. 0 for hairline. Set > 0 if you want to have column --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <clustered></clustered> <!-- [false] in case you have more then one graph with vertical lines enabled, you might want to place your columns next to each other, set true for that. --> | |
| <mask></mask> <!-- [true] (true / false) as line chart by default starts on axis, and your column width is >0, then some part of first and last column will be outside plot area (incase you don't set <start_on_axis>false</false> Mask will cut off the part outside the plot area. Set to false if you don't want this. --> | |
| </vertical_lines> | |
| <labels> <!-- LABELS --> | |
| <!-- you can add as many labels as you want. Some html tags supported: <b>, <i>, <u>, <font>, <a href=""> --> | |
| <!-- labels can also be added in data xml file, using exactly the same structure like it is here --> | |
| <label lid="0"> | |
| <x></x> <!-- [0] (Number / Number% / !Number) --> | |
| <y>25</y> <!-- [0] (Number / Number% / !Number) --> | |
| <rotate></rotate> <!-- [false] (true / false) --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will stretch from left to right untill label fits --> | |
| <align>center</align> <!-- [left] (left / center / right) --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text color --> | |
| <text_size>14</text_size> <!-- [text_size](Number) button text size --> | |
| <text> <!-- [] (text) html tags may be used (supports <b>, <i>, <u>, <font>, <a href="">, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| <![CDATA[<b>Temperature anomaly</b>]]> | |
| </text> | |
| </label> | |
| <label lid="1"> | |
| <x>0</x> | |
| <y>380</y> | |
| <width></width> | |
| <align>right</align> | |
| <text_size>11</text_size> | |
| <text> | |
| <![CDATA[Source: <a href="http://www.cru.uea.ac.uk/cru/info/warming/" target="_blank"><u>Climatic Research Unit</u></a>]]> | |
| </text> | |
| </label> | |
| </labels> | |
| <graphs> <!-- GRAPHS SETTINGS. These settings can also be specified in data file, as attributes of <graph>, in this case you can delete everything from <graphs> to </graphs> (including) --> | |
| <!-- It is recommended to have graph settings here if you don't want to mix data with other params --> | |
| <!-- copy <graph>...</graph> (including) as many times as many graphs you have and edit settings individually --> | |
| <!-- if graph settings are defined both here and in data file, the ones from data file are used --> | |
| <graph> <!-- if you are using XML data file, graph "gid" must match graph "gid" in data file --> | |
| <axis>left</axis> <!-- [left] (left/ right) indicates which y axis should be used --> | |
| <title>Anomaly</title> <!-- [] (graph title) --> | |
| <color>#76BC2C</color> <!-- [] (hex color code) if not defined, uses colors from this array: #FF0000, #0000FF, #00FF00, #FF9900, #CC00CC, #00CCCC, #33FF00, #990000, #000066 --> | |
| <color_hover>#FF0000</color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <line_width></line_width> <!-- [0] (Number) 0 for hairline --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) if you want the chart to be area chart, use bigger than 0 value --> | |
| <fill_color></fill_color> <!-- [grpah.color] (hex color code) Separate color codes with comas for gradient --> | |
| <balloon_color></balloon_color> <!-- [graph color] (hex color code) leave empty to use the same color as graph --> | |
| <balloon_alpha></balloon_alpha> <!-- [100] (0 - 100) --> | |
| <balloon_text_color></balloon_text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <bullet>round_outlined</bullet> <!-- [] (square, round, square_outlined, round_outlined, square_outline, round_outline, filename.swf) can be used predefined bullets or loaded custom bullets. Leave empty if you don't want to have bullets at all. Outlined bullets use plot area color for outline color --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| <bullet_size></bullet_size> <!-- [8](Number) affects only predefined bullets, does not change size of custom loaded bullets --> | |
| <bullet_color></bullet_color> <!-- [graph color] (hex color code) affects only predefined (square and round) bullets, does not change color of custom loaded bullets. Leave empty to use the same color as graph --> | |
| <bullet_alpha></bullet_alpha> <!-- [graph alpha] (hex color code) Leave empty to use the same alpha as graph --> | |
| <hidden></hidden> <!-- [false] (true / false) vill not be visible until you check corresponding checkbox in the legend --> | |
| <selected>false</selected> <!-- [true] (true / false) if true, balloon indicating value will be visible then roll over plot area --> | |
| <balloon_text> | |
| <![CDATA[{value} C]]> <!-- [<b>{value}</b><br>{description}] ({title} {value} {series} {description} {percents}) You can format any balloon text: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </balloon_text> | |
| <data_labels> | |
| <![CDATA[]]> <!-- [] ({title} {value} {series} {description} {percents}) Data labels can display value (and more) near your point on the plot area. --> | |
| <!-- to avoid overlapping, data labels, the same as bullets are not visible if there are more then hide_bullets_count data points on plot area. --> | |
| </data_labels> | |
| <data_labels_text_color></data_labels_text_color> <!-- [text_color] (hex color code) --> | |
| <data_labels_text_size></data_labels_text_size> <!-- [text_size] (Number) --> | |
| <data_labels_position></data_labels_position> <!-- [above] (below / above) --> | |
| <vertical_lines></vertical_lines> <!-- [false] (true / false) whether to draw vertical lines or not. If you want to show vertical lines only (without the graph, set line_alpha to 0 --> | |
| <visible_in_legend></visible_in_legend> <!-- [true] (true / false) whether to show legend entry for this graph or not --> | |
| </graph> | |
| <graph> | |
| <axis>left</axis> | |
| <title>Smoothed</title> | |
| <color>#2CA9BC</color> | |
| <color_hover>#FF0000</color_hover> | |
| <fill_alpha>30</fill_alpha> | |
| <bullet>round_outlined</bullet> | |
| <bullet_size>10</bullet_size> | |
| <balloon_text> | |
| <![CDATA[{value} C]]> | |
| </balloon_text> | |
| </graph> | |
| </graphs> | |
| <guides> <!-- guides are straight lines drawn through all plot area at a give value. Can also be filled with color --> | |
| <guide> <!-- there can be any number of quides. guides can also be set in data xml file, using the same syntax as here --> | |
| <axis></axis> <!-- [left] (left / right) y axis of a guide. There should be at least one graph assigned to this axis in order guide to be visible --> | |
| <start_value>0</start_value> <!-- (Number) value at which guide should be placed --> | |
| <end_value>0.8</end_value> <!-- (Number) if you set value here too, another quide will be drawn. If you set fill alpha > 0, then the area between these quides will be filled with color --> | |
| <title></title> <!-- [] (String) text which will be displayed near the guide --> | |
| <width></width> <!-- [0] (Number) width of a guide line (0 for hairline) --> | |
| <color></color> <!-- [#000000] (hex color code) color of guide line --> | |
| <alpha>0</alpha> <!-- [100] (0 - 100) opacity of guide line --> | |
| <fill_color>#000000,#CC0000</fill_color> <!-- [guide.color] (hex color code) fill color. If not defined, color of a guide will be used. Separate color codes with comas for gradient --> | |
| <fill_alpha>40</fill_alpha> <!-- [0] (0 - 100) opacity of a fill --> | |
| <inside></inside> <!-- [values.y_{axis}.inside] whether to place title inside plot area --> | |
| <centered></centered> <!-- [true] (true / false) if you have start and end values defined, title can be placed in the middle between these values. If false, it will be placed near start_value --> | |
| <rotate></rotate> <!-- [values.y_{axis}.rotate](0 - 90) angle of rotation of title --> | |
| <text_size></text_size> <!-- [values.y_{axis}.text_size] (Number) --> | |
| <text_color></text_color> <!-- [values.y_{axis}.color](hex color code) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| </guide> | |
| <guide> | |
| <axis></axis> | |
| <start_value>0</start_value> | |
| <end_value>-0.8</end_value> | |
| <alpha>0</alpha> | |
| <fill_color>#000000,#0000CC</fill_color> | |
| <fill_alpha>40</fill_alpha> | |
| </guide> | |
| </guides> | |
| </settings> |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | |
| <title>Chart with data gaps</title> | |
| </head> | |
| <body bgcolor="#000000"> | |
| <!-- saved from url=(0013)about:internet --> | |
| <!-- amline script--> | |
| <script type="text/javascript" src="../../amline/swfobject.js"></script> | |
| <div id="flashcontent"> | |
| <strong>You need to upgrade your Flash Player</strong> | |
| </div> | |
| <script type="text/javascript"> | |
| // <![CDATA[ | |
| var so = new SWFObject("../../amline/amline.swf", "amline", "520", "400", "8", "#000000"); | |
| so.addVariable("path", "../../amline/"); | |
| so.addVariable("settings_file", encodeURIComponent("amline_settings.xml")); | |
| so.addVariable("data_file", encodeURIComponent("amline_data.txt")); | |
| so.write("flashcontent"); | |
| // ]]> | |
| </script> | |
| <!-- end of amline script --> | |
| </body> | |
| </html> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <chart> | |
| <series> | |
| <value xid="0">1950</value> | |
| <value xid="1">1951</value> | |
| <value xid="2">1952</value> | |
| <value xid="3">1953</value> | |
| <value xid="4">1954</value> | |
| <value xid="5">1955</value> | |
| <value xid="6">1956</value> | |
| <value xid="7">1957</value> | |
| <value xid="8">1958</value> | |
| <value xid="9">1959</value> | |
| <value xid="10">1960</value> | |
| <value xid="11">1961</value> | |
| <value xid="12">1962</value> | |
| <value xid="13">1963</value> | |
| <value xid="14">1964</value> | |
| <value xid="15">1965</value> | |
| <value xid="16">1966</value> | |
| <value xid="17">1967</value> | |
| <value xid="18">1968</value> | |
| <value xid="19">1969</value> | |
| <value xid="20">1970</value> | |
| <value xid="21">1971</value> | |
| <value xid="22">1972</value> | |
| <value xid="23">1973</value> | |
| <value xid="24">1974</value> | |
| <value xid="25">1975</value> | |
| <value xid="26">1976</value> | |
| <value xid="27">1977</value> | |
| <value xid="28">1978</value> | |
| <value xid="29">1979</value> | |
| <value xid="30" event_start="war" event_text_color="#DADADA" event_description="Iran-Iraq war was a war between the armed forces of Iraq and Iran lasting from September 1980 to August 1988. " event_color="#000000" event_alpha="15">1980</value> | |
| <value xid="31">1981</value> | |
| <value xid="32">1982</value> | |
| <value xid="33">1983</value> | |
| <value xid="34">1984</value> | |
| <value xid="35">1985</value> | |
| <value xid="36">1986</value> | |
| <value xid="37">1987</value> | |
| <value xid="38" event_end="war">1988</value> | |
| <value xid="39">1989</value> | |
| <value xid="40">1990</value> | |
| <value xid="41">1991</value> | |
| <value xid="42">1992</value> | |
| <value xid="43">1993</value> | |
| <value xid="44">1994</value> | |
| <value xid="45">1995</value> | |
| <value xid="46">1996</value> | |
| <value xid="47">1997</value> | |
| <value xid="48">1998</value> | |
| <value xid="49">1999</value> | |
| <value xid="50">2000</value> | |
| <value xid="51">2001</value> | |
| <value xid="52">2002</value> | |
| <value xid="53">2003</value> | |
| <value xid="54">2004</value> | |
| <value xid="55">2005</value> | |
| <value xid="56">2006</value> | |
| </series> | |
| <graphs> | |
| <graph gid="1"> | |
| <value xid="0">2.51</value> | |
| <value xid="1">2.53</value> | |
| <value xid="2">2.53</value> | |
| <value xid="3">2.68</value> | |
| <value xid="4">2.78</value> | |
| <value xid="5">2.77</value> | |
| <value xid="6">2.79</value> | |
| <value xid="7">3.09</value> | |
| <value xid="8">3.01</value> | |
| <value xid="9">2.90</value> | |
| <value xid="10">2.88</value> | |
| <value xid="11">2.89</value> | |
| <value xid="12">2.90</value> | |
| <value xid="13">2.89</value> | |
| <value xid="14">2.88</value> | |
| <value xid="15">2.86</value> | |
| <value xid="16">2.88</value> | |
| <value xid="17">2.92</value> | |
| <value xid="18">2.94</value> | |
| <value xid="19">3.09</value> | |
| <value xid="20">3.18</value> | |
| <value xid="21">3.39</value> | |
| <value xid="22">3.39</value> | |
| <value xid="23">3.89</value> | |
| <value xid="24">6.87</value> | |
| <value xid="25">7.67</value> | |
| <value xid="26">8.19</value> | |
| <value xid="27">8.57</value> | |
| <value xid="28">9.00</value> | |
| <value xid="29">12.64</value> | |
| <value xid="30" description="Iranian revolution" bullet="../examples/chart_with_scroller/bomb.swf">21.59</value> | |
| <value xid="31">31.77</value> | |
| <value xid="32">28.52</value> | |
| <value xid="33">26.19</value> | |
| <value xid="34">25.88</value> | |
| <value xid="35">24.09</value> | |
| <value xid="36">12.51</value> | |
| <value xid="37">15.40</value> | |
| <value xid="38">12.58</value> | |
| <value xid="39">15.86</value> | |
| <value xid="40" description="Gulf war. Click on the bomb to get more info about it" url="http://en.wikipedia.org/wiki/Gulf_war" bullet="../examples/chart_with_scroller/bomb.swf">20.03</value> | |
| <value xid="41">16.54</value> | |
| <value xid="42">15.99</value> | |
| <value xid="43">14.25</value> | |
| <value xid="44">13.19</value> | |
| <value xid="45">14.62</value> | |
| <value xid="46">18.46</value> | |
| <value xid="47">17.23</value> | |
| <value xid="48" description="Opec 10% quota increase" bullet_color="#009900" bullet_size="12">10.87</value> | |
| <value xid="49">15.56</value> | |
| <value xid="50">26.72</value> | |
| <value xid="51" description="9/11">21.84</value> | |
| <value xid="52">22.51</value> | |
| <value xid="53" description="Iraq war" bullet="../examples/chart_with_scroller/bomb.swf">27.54</value> | |
| <value xid="54">38.93</value> | |
| <value xid="55">46.47</value> | |
| <value xid="56">58.30</value> | |
| </graph> | |
| <graph gid="2"> | |
| <value xid="0">19.73</value> | |
| <value xid="1">18.43</value> | |
| <value xid="2">18.08</value> | |
| <value xid="3">19.01</value> | |
| <value xid="4">19.57</value> | |
| <value xid="5">19.58</value> | |
| <value xid="6">19.43</value> | |
| <value xid="7">20.83</value> | |
| <value xid="8">19.73</value> | |
| <value xid="9">18.87</value> | |
| <value xid="10">18.43</value> | |
| <value xid="11">18.31</value> | |
| <value xid="12">18.19</value> | |
| <value xid="13">17.89</value> | |
| <value xid="14">17.60</value> | |
| <value xid="15">17.20</value> | |
| <value xid="16">16.84</value> | |
| <value xid="17">16.56</value> | |
| <value xid="18">16.00</value> | |
| <value xid="19">15.95</value> | |
| <value xid="20">15.52</value> | |
| <value xid="21">15.85</value> | |
| <value xid="22">15.36</value> | |
| <value xid="23">16.59</value> | |
| <value xid="24">26.39</value> | |
| <value xid="25">27.00</value> | |
| <value xid="26">27.26</value> | |
| <value xid="27">26.78</value> | |
| <value xid="28">26.14</value> | |
| <value xid="29">32.98</value> | |
| <value xid="30">49.63</value> | |
| <value xid="31">66.20</value> | |
| <value xid="32">55.98</value> | |
| <value xid="33">49.80</value> | |
| <value xid="34">47.18</value> | |
| <value xid="35">42.40</value> | |
| <value xid="36">21.62</value> | |
| <value xid="37">25.68</value> | |
| <value xid="38">20.14</value> | |
| <value xid="39">24.22</value> | |
| <value xid="40">29.03</value> | |
| <value xid="41">23.00</value> | |
| <value xid="42">21.59</value> | |
| <value xid="43">18.68</value> | |
| <value xid="44">16.86</value> | |
| <value xid="45">18.17</value> | |
| <value xid="46">22.40</value> | |
| <value xid="47">20.39</value> | |
| <value xid="48">12.66</value> | |
| <value xid="49">17.78</value> | |
| <value xid="50">29.54</value> | |
| <value xid="51">23.39</value> | |
| <value xid="52">23.78</value> | |
| <value xid="53">28.42</value> | |
| <value xid="54">54.93</value> | |
| <value xid="55">47.97</value> | |
| <value xid="56">58.30</value> | |
| </graph> | |
| </graphs> | |
| </chart> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- Value between [] brackets, for example [#FFFFFF] shows default value which is used if this parameter is not set --> | |
| <!-- This means, that if you are happy with this value, you can delete this line at all and reduce file size --> | |
| <!-- value or explanation between () brackets shows the range or type of values you should use for this parameter --> | |
| <!-- the top left corner has coordinates x = 0, y = 0 --> | |
| <!-- "!" before x or y position (for example: <x>!20</x>) means that the coordinate will be calculated from the right side or the bottom --> | |
| <settings> | |
| <data_type></data_type> <!-- [xml] (xml / csv) --> | |
| <csv_separator></csv_separator> <!-- [;] (string) csv file data separator (you need it only if you are using csv file for your data) --> | |
| <skip_rows></skip_rows> <!-- [0] (Number) if you are using csv data type, you can set the number of rows which should be skipped here --> | |
| <font>Georgia</font> <!-- [Arial] (font name) use device fonts, such as Arial, Times New Roman, Tahoma, Verdana... --> | |
| <text_size>11</text_size> <!-- [11] (Number) text size of all texts. Every text size can be set individually in the settings below --> | |
| <text_color>#FFFFFF</text_color> <!-- [#000000] (hex color code) main text color. Every text color can be set individually in the settings below--> | |
| <decimals_separator>,</decimals_separator> <!-- [,] (string) decimal separator. Note, that this is for displaying data only. Decimals in data xml file must be separated with dot --> | |
| <thousands_separator> </thousands_separator> <!-- [ ] (string) thousand separator. use "none" if you don't want to separate --> | |
| <digits_after_decimal>2</digits_after_decimal> <!-- [] (Number) if your value has less digits after decimal then is set here, zeroes will be added --> | |
| <scientific_min></scientific_min> <!-- [0.000001] If absolute value of your number is equal or less then scientific_min, this number will be formatted using scientific notation, for example: 0.0000023 -> 2.3e-6 --> | |
| <scientific_max></scientific_max> <!-- [1000000000000000] If absolute value of your number is equal or bigger then scientific_max, this number will be formatted using scientific notation, for example: 15000000000000000 -> 1.5e16 --> | |
| <redraw></redraw> <!-- [false] (true / false) if your chart's width or height is set in percents, and redraw is set to true, the chart will be redrawn then screen size changes --> | |
| <!-- Legend, buttons labels will not be repositioned if you set your x and y values for these objects --> | |
| <reload_data_interval></reload_data_interval> <!-- [0] (Number) how often data should be reloaded (time in seconds) If you are using this feature I strongly recommend to turn off zoom function (set <zoomable>false</zoomable>) --> | |
| <preloader_on_reload></preloader_on_reload> <!-- [false] (true / false) Whether to show preloaded when data or settings are reloaded --> | |
| <add_time_stamp></add_time_stamp> <!-- [false] (true / false) if true, a unique number will be added every time flash loads data. Mainly this feature is useful if you set reload _data_interval >0 --> | |
| <connect></connect> <!-- [false] (true / false) whether to connect points if y data is missing --> | |
| <hide_bullets_count></hide_bullets_count> <!-- [] (Number) if there are more then hideBulletsCount points on the screen, bullets can be hidden, to avoid mess. Leave empty, or 0 to show bullets all the time. This rule doesn't influence if custom bullet is defined near y value, in data file --> | |
| <link_target></link_target> <!-- [] (_blank, _top ...) --> | |
| <start_on_axis></start_on_axis> <!-- [true] (true / false) if set to false, graph is moved 1/2 of one series interval from Y axis --> | |
| <colors></colors> <!-- [#FF0000,#0000FF,#00FF00,#FF9900,#CC00CC,#00CCCC,#33FF00,#990000,#000066,#555555] Colors of graphs. if the graph color is not set, color from this array will be used --> | |
| <rescale_on_hide></rescale_on_hide> <!-- [true] (true/false) When you show or hide graphs, the chart recalculates min and max values (rescales the chart). If you don't want this, set this to false. --> | |
| <js_enabled></js_enabled> <!-- [true] (true / false) In case you don't use any flash - JavaScript communication, you shuold set this setting to false - this will save some CPU and will disable the security warning message which appears when opening the chart from hard drive. --> | |
| <background> <!-- BACKGROUND --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) use 0 if you are using custom swf or jpg for background --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <file>../examples/chart_with_scroller/bg.swf</file> <!-- [] (filename) swf or jpg file of a background. --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| </background> | |
| <plot_area> <!-- PLOT AREA (the area between axes) --> | |
| <color></color> <!-- [#FFFFFF](hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) if you want it to be different than background color, use bigger than 0 value --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <margins> <!-- plot area margins --> | |
| <left>60</left> <!-- [60](Number / Number%) --> | |
| <top>0</top> <!-- [60](Number / Number%) --> | |
| <right>60</right> <!-- [60](Number / Number%) --> | |
| <bottom>142</bottom> <!-- [80](Number / Number%) --> | |
| </margins> | |
| </plot_area> | |
| <scroller> | |
| <enabled></enabled> <!-- [true] (true / false) whether to show scroller when chart is zoomed or not --> | |
| <y>510</y> <!-- [] (Number) Y position of scroller. If not set here, will be displayed above plot area --> | |
| <color>#BBBB00</color> <!-- [#DADADA] (hex color code) scrollbar color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (Number) scrollbar alpha --> | |
| <bg_color>#FFFFFF</bg_color> <!-- [#F0F0F0] (hex color code) scroller background color. Separate color codes with comas for gradient --> | |
| <bg_alpha>20</bg_alpha> <!-- [100] (Number) scroller background alpha --> | |
| <height></height> <!-- [10] (Number) scroller height --> | |
| </scroller> | |
| <grid> <!-- GRID --> | |
| <x> <!-- vertical grid --> | |
| <enabled>false</enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false](true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count>10</approx_count> <!-- [4] (Number) approximate number of gridlines --> | |
| </x> | |
| <y_left> <!-- horizontal grid, Y left axis. Visible only if there is at least one graph assigned to left axis --> | |
| <enabled>false</enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_left> | |
| <y_right> <!-- horizontal grid, Y right axis. Visible only if there is at least one graph assigned to right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_right> | |
| </grid> | |
| <values> <!-- VALUES --> | |
| <x> <!-- x axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [false] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| </x> | |
| <y_left> <!-- y left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically. --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last>true</skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit>$</unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position>left</unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_left> | |
| <y_right> <!-- y right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_right> | |
| </values> | |
| <axes> <!-- axes --> | |
| <x> <!-- X axis --> | |
| <color>#FFFFFF</color> <!-- [#000000] (hex color code) --> | |
| <alpha>25</alpha> <!-- [100] (0 - 100) --> | |
| <width>1</width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| </x> | |
| <y_left> <!-- Y left axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha>10</alpha> <!-- [100] (0 - 100) --> | |
| <width>1</width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_left> | |
| <y_right> <!-- Y right axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_right> | |
| </axes> | |
| <indicator> <!-- INDICATOR --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <zoomable></zoomable> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#BBBB00] (hex color code) line and x balloon background color --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <selection_color>#000000</selection_color> <!-- [#BBBB00] (hex color code) --> | |
| <selection_alpha></selection_alpha> <!-- [25] (0 - 100) --> | |
| <x_balloon_enabled></x_balloon_enabled> <!-- [true] (true / false) --> | |
| <x_balloon_text_color></x_balloon_text_color> <!-- [text_color] (hex color code) --> | |
| </indicator> | |
| <balloon> <!-- BALLOON --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <only_one></only_one> <!-- [false] (true / false) if set to true, only one balloon at a time will be displayed --> | |
| <on_off></on_off> <!-- [true] (true/false) whether it will be possible to turn on or off y balloons by clicking on a legend or on a graph --> | |
| <color></color> <!-- [] (hex color code) balloon background color. If not set, graph.balloon_color will be used. --> | |
| <alpha></alpha> <!-- [] (0 - 100) balloon background opacity. If not set, graph.balloon_alpha will be used. --> | |
| <text_color></text_color> <!-- [] (hex color code) baloon text color. If not set, graph.balloon_text_color will be used --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <max_width></max_width> <!-- [] (Number) The maximum width of a balloon. If not set, half width of plot area will be used --> | |
| <corner_radius></corner_radius> <!-- [0] (Number) Corner radius of a balloon. If you set it > 0, the balloon will not display arrow --> | |
| <border_width></border_width> <!-- [0] (Number) --> | |
| <border_alpha></border_alpha> <!-- [balloon.alpha] (Number) --> | |
| <border_color></border_color> <!-- [balloon.color] (hex color code) --> | |
| </balloon> | |
| <legend> <!-- LEGEND --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x>100</x> <!-- [] (Number / Number% / !Number) if empty, will be equal to left margin --> | |
| <y>180</y> <!-- [] (Number / Number% / !Number) if empty, will be 20px below x axis values --> | |
| <width>200</width> <!-- [] (Number / Number%) if empty, will be equal to plot area width --> | |
| <max_columns></max_columns> <!-- [] (Number) the maximum number of columns in the legend --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) background color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) border color --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) border alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_color_hover>#000000</text_color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <spacing></spacing> <!-- [10] (Number) vertical and horizontal gap between legend entries --> | |
| <margins></margins> <!-- [0] (Number) legend margins (space between legend border and legend entries, recommended to use only if legend border is visible or background color is different from chart area background color) --> | |
| <graph_on_off></graph_on_off> <!-- [true] (true / false) if true, color box gains "checkbox" function - it is possible to make graphs visible/invisible by clicking on this checkbox --> | |
| <reverse_order></reverse_order> <!-- [false] (true / false) whether to sort legend entries in a reverse order --> | |
| <align></align> <!-- [left] (left / center / right) alignment of legend entries --> | |
| <key> <!-- KEY (the color box near every legend entry) --> | |
| <size></size> <!-- [16] (Number) key size--> | |
| <border_color></border_color> <!-- [] (hex color code) leave empty if you don't want to have border--> | |
| <key_mark_color></key_mark_color> <!-- [#FFFFFF] (hex color code) key tick mark color --> | |
| </key> | |
| <values> <!-- VALUES --> | |
| <enabled>true</enabled> <!-- [false] (true / false) whether to show values near legend entries or not --> | |
| <width></width> <!-- [80] (Number) width of text field for value --> | |
| <align></align> <!-- [right] (right / left) --> | |
| <text><![CDATA[{value}$]]></text> <!-- [{value}] ({title} {value} {series} {description} {percents}) You can format any text: {value} will be replaced with value, {description} - with description and so on. You can add your own text or html code too. --> | |
| </values> | |
| </legend> | |
| <zoom_out_button> | |
| <x>350</x> <!-- [] (Number / Number% / !Number) x position of zoom out button, if not defined, will be aligned to right of plot area --> | |
| <y>540</y> <!-- [] (Number / Number% / !Number) y position of zoom out button, if not defined, will be aligned to top of plot area --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color --> | |
| <alpha>100</alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color>#FFFFFF</text_color> <!-- [text_color] (hex color code) button text and magnifying glass icon color --> | |
| <text_color_hover>#000000</text_color_hover> <!-- [#BBBB00] (hex color code) button text and magnifying glass icon roll over color --> | |
| <text_size></text_size> <!-- [text_size] (Number) button text size --> | |
| <text></text> <!-- [Show all] (text) --> | |
| </zoom_out_button> | |
| <help> <!-- HELP button and balloon --> | |
| <button> <!-- help button is only visible if balloon text is defined --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of help button, if not defined, will be aligned to right of chart area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of help button, if not defined, will be aligned to top of chart area --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha>50</alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00](hex color code) button text roll over color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text></text> <!-- [?] (text) --> | |
| </button> | |
| <balloon> <!-- help balloon --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <width></width> <!-- [300] (Number) --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text> <!-- [] (text) some html tags may be used (supports <b>, <i>, <u>, <font>, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| <![CDATA[Click on the graph to turn on/off value baloon <br/><br/>Click on legend key to show/hide graph<br/><br/>Mark the area you wish to enlarge]]> | |
| </text> | |
| </balloon> | |
| </help> | |
| <export_as_image> <!-- export_as_image feature works only on a web server --> | |
| <file></file> <!-- [] (filename) if you set filename here, context menu (then user right clicks on flash movie) "Export as image" will appear. This will allow user to export chart as an image. Collected image data will be posted to this file name (use amline/export.php or amline/export.aspx) --> | |
| <target></target> <!-- [] (_blank, _top ...) target of a window in which export file must be called --> | |
| <x></x> <!-- [0] (Number / Number% / !Number) x position of "Collecting data" text --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of "Collecting data" text. If not set, will be aligned to the bottom of flash movie --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of "Collecting data" text --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </export_as_image> | |
| <error_messages> <!-- "error_messages" settings will be applied for all error messages except the one which is showed if settings file wasn't found --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of error message. If not set, will be aligned to the center --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of error message. If not set, will be aligned to the center --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of error message. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </error_messages> | |
| <strings> | |
| <no_data></no_data> <!-- [No data for selected period] (text) if data for selected period is missing, this message will be displayed --> | |
| <export_as_image></export_as_image> <!-- [Export as image] (text) text for right click menu --> | |
| <error_in_data_file></error_in_data_file> <!-- [Error in data file] (text) this text is displayed if there is an error in data file or there is no data in file. "There is no data" means that there should actually be at least one space in data file. If data file will be completly empty, it will display "error loading file" text --> | |
| <collecting_data></collecting_data> <!-- [Collecting data] (text) this text is displayed while exporting chart to an image --> | |
| <wrong_zoom_value></wrong_zoom_value> <!-- [Incorrect values] (text) this text is displayed if you set zoom through JavaScript and entered from or to value was not find between series --> | |
| <!-- the strings below are only important if you format your axis values as durations --> | |
| <ss></ss> <!-- [] unit of seconds --> | |
| <mm></mm> <!-- [:] unit of minutes --> | |
| <hh></hh> <!-- [:] unit of hours --> | |
| <DD></DD> <!-- [d. ] unit of days --> | |
| </strings> | |
| <context_menu> <!-- context menu allows you to controll right-click menu items. You can add custom menu items to create custom controls --> | |
| <!-- "function_name" specifies JavaScript function which will be called when user clicks on this menu. You can pass variables, for example: function_name="alert('something')" --> | |
| <!-- "title" sets menu item text. Do not use for title: Show all, Zoom in, Zoom out, Print, Settings... --> | |
| <!-- you can have any number of custom menus. Uncomment the line below to enable this menu and add apropriate JS function to your html file. --> | |
| <!-- <menu function_name="printChart" title="Print chart"></menu> --> | |
| <default_items> | |
| <zoom></zoom> <!-- [false] (true / false) to show or not flash players zoom menu --> | |
| <print></print> <!-- [true] (true / false) to show or not flash players print menu --> | |
| </default_items> | |
| </context_menu> | |
| <labels> <!-- LABELS --> | |
| <!-- you can add as many labels as you want. Some html tags supported: <b>, <i>, <u>, <font>, <a href=""> --> | |
| <!-- labels can also be added in data xml file, using exactly the same structure like it is here --> | |
| <label lid="0"> | |
| <x>98</x> <!-- [0] (Number / Number% / !Number) --> | |
| <y>130</y> <!-- [0] (Number / Number% / !Number) --> | |
| <rotate></rotate> <!-- [false] (true / false) --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will stretch from left to right untill label fits --> | |
| <align></align> <!-- [left] (left / center / right) --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text color --> | |
| <text_size>15</text_size> <!-- [text_size](Number) button text size --> | |
| <text> <!-- [] (text) html tags may be used (supports <b>, <i>, <u>, <font>, <a href="">, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| <![CDATA[<b>Historical Crude Oil Prices</b>]]> | |
| </text> | |
| </label> | |
| </labels> | |
| <graphs> <!-- GRAPHS SETTINGS. These settings can also be specified in data file, as attributes of <graph>, in this case you can delete everything from <graphs> to </graphs> (including) --> | |
| <!-- It is recommended to have graph settings here if you don't want to mix data with other params --> | |
| <!-- copy <graph>...</graph> (including) as many times as many graphs you have and edit settings individually --> | |
| <!-- if graph settings are defined both here and in data file, the ones from data file are used --> | |
| <graph gid="1"> <!-- if you are using XML data file, graph "gid" must match graph "gid" in data file --> | |
| <axis>left</axis> <!-- [left] (left/ right) indicates which y axis should be used --> | |
| <title>Nominal</title> <!-- [] (graph title) --> | |
| <color>#FFCC00</color> <!-- [] (hex color code) if not defined, uses colors from this array: #FF0000, #0000FF, #00FF00, #FF9900, #CC00CC, #00CCCC, #33FF00, #990000, #000066 --> | |
| <color_hover>#000000</color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <line_width></line_width> <!-- [0] (Number) 0 for hairline --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) if you want the chart to be area chart, use bigger than 0 value --> | |
| <fill_color></fill_color> <!-- [grpah.color] (hex color code) Separate color codes with comas for gradient --> | |
| <balloon_color></balloon_color> <!-- [graph color] (hex color code) leave empty to use the same color as graph --> | |
| <balloon_alpha></balloon_alpha> <!-- [100] (0 - 100) --> | |
| <balloon_text_color>#000000</balloon_text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <bullet>round</bullet> <!-- [] (square, round, square_outlined, round_outlined, square_outline, round_outline, filename.swf) can be used predefined bullets or loaded custom bullets. Leave empty if you don't want to have bullets at all. Outlined bullets use plot area color for outline color --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| <bullet_size></bullet_size> <!-- [8](Number) affects only predefined bullets, does not change size of custom loaded bullets --> | |
| <bullet_color></bullet_color> <!-- [graph color] (hex color code) affects only predefined (square and round) bullets, does not change color of custom loaded bullets. Leave empty to use the same color as graph --> | |
| <bullet_alpha></bullet_alpha> <!-- [graph alpha] (hex color code) Leave empty to use the same alpha as graph --> | |
| <hidden></hidden> <!-- [false] (true / false) vill not be visible until you check corresponding checkbox in the legend --> | |
| <selected></selected> <!-- [true] (true / false) if true, balloon indicating value will be visible then roll over plot area --> | |
| <balloon_text> | |
| <![CDATA[<b>${value}</b><br>{description}]]> <!-- [<b>{value}</b><br>{description}] ({title} {value} {series} {description} {percents}) You can format any balloon text: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </balloon_text> | |
| <data_labels> | |
| <![CDATA[]]> <!-- [] ({title} {value} {series} {description} {percents}) Data labels can display value (and more) near your point on the plot area. --> | |
| <!-- to avoid overlapping, data labels, the same as bullets are not visible if there are more then hide_bullets_count data points on plot area. --> | |
| </data_labels> | |
| <data_labels_text_color></data_labels_text_color> <!-- [text_color] (hex color code) --> | |
| <data_labels_text_size></data_labels_text_size> <!-- [text_size] (Number) --> | |
| <data_labels_position></data_labels_position> <!-- [above] (below / above) --> | |
| <vertical_lines></vertical_lines> <!-- [false] (true / false) whether to draw vertical lines or not. If you want to show vertical lines only (without the graph, set line_alpha to 0 --> | |
| <visible_in_legend></visible_in_legend> <!-- [true] (true / false) whether to show legend entry for this graph or not --> | |
| </graph> | |
| <graph gid="2"> | |
| <axis>left</axis> | |
| <title>Inflation Adjusted 2006</title> | |
| <line_alpha>0</line_alpha> | |
| <color>#000000</color> | |
| <bullet>round</bullet> | |
| <bullet_alpha>100</bullet_alpha> | |
| <balloon_text_color>#FFFFFF</balloon_text_color> | |
| <color_hover>#000000</color_hover> | |
| <balloon_text_color>#000000</balloon_text_color> | |
| <balloon_text> | |
| <![CDATA[<b>${value}</b>]]> | |
| </balloon_text> | |
| <vertical_lines>true</vertical_lines> | |
| </graph> | |
| </graphs> | |
| <guides> <!-- guides are straight lines drawn through all plot area at a give value. Can also be filled with color --> | |
| <max_min></max_min> <!-- [false] (true / false) whether to include guides' values when calculating min and max of a chart --> | |
| <guide> <!-- there can be any number of quides. guides can also be set in data xml file, using the same syntax as here --> | |
| <axis></axis> <!-- [left] (left / right) y axis of a guide. There should be at least one graph assigned to this axis in order guide to be visible --> | |
| <start_value></start_value> <!-- (Number) value at which guide should be placed --> | |
| <end_value></end_value> <!-- (Number) if you set value here too, another quide will be drawn. If you set fill alpha > 0, then the area between these quides will be filled with color --> | |
| <title></title> <!-- [] (String) text which will be displayed near the guide --> | |
| <width></width> <!-- [0] (Number) width of a guide line (0 for hairline) --> | |
| <color></color> <!-- [#000000] (hex color code) color of guide line --> | |
| <alpha></alpha> <!-- [100] (0 - 100) opacity of guide line --> | |
| <fill_color></fill_color> <!-- [guide.color] (hex color code) fill color. If not defined, color of a guide will be used. Separate color codes with comas for gradient --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of a fill --> | |
| <inside></inside> <!-- [values.y_{axis}.inside] whether to place title inside plot area --> | |
| <centered></centered> <!-- [true] (true / false) if you have start and end values defined, title can be placed in the middle between these values. If false, it will be placed near start_value --> | |
| <rotate></rotate> <!-- [values.y_{axis}.rotate](0 - 90) angle of rotation of title --> | |
| <text_size></text_size> <!-- [values.y_{axis}.text_size] (Number) --> | |
| <text_color></text_color> <!-- [values.y_{axis}.color](hex color code) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| </guide> | |
| </guides> | |
| </settings> |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | |
| <title>Chart with scroller</title> | |
| </head> | |
| <body> | |
| <!-- saved from url=(0013)about:internet --> | |
| <!-- amline script--> | |
| <script type="text/javascript" src="../../amline/swfobject.js"></script> | |
| <div id="flashcontent"> | |
| <strong>You need to upgrade your Flash Player</strong> | |
| </div> | |
| <script type="text/javascript"> | |
| // <![CDATA[ | |
| var so = new SWFObject("../../amline/amline.swf", "amline", "800", "600", "8", "#000000"); | |
| so.addVariable("path", "../../amline/"); | |
| so.addVariable("settings_file", encodeURIComponent("amline_settings.xml")); | |
| so.addVariable("data_file", encodeURIComponent("amline_data.xml")); | |
| so.write("flashcontent"); | |
| // ]]> | |
| </script> | |
| <!-- end of amline script --> | |
| </body> | |
| </html> |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | |
| <title>Data and settings inside HTML</title> | |
| </head> | |
| <body> | |
| <!-- saved from url=(0013)about:internet --> | |
| <!-- amline script--> | |
| <script type="text/javascript" src="../../amline/swfobject.js"></script> | |
| <div id="flashcontent"> | |
| <strong>You need to upgrade your Flash Player</strong> | |
| </div> | |
| <script type="text/javascript"> | |
| // <![CDATA[ | |
| var so = new SWFObject("../../amline/amline.swf", "amline", "520", "400", "8", "#FFFFFF"); | |
| so.addVariable("path", "../../amline/"); | |
| so.addVariable("chart_data", encodeURIComponent("<chart><series><value xid='0'>2000</value><value xid='1'>2001</value><value xid='2'>2002</value><value xid='3'>2003</value><value xid='4'>2004</value><value xid='5'>2005</value><value xid='6'>2006</value><value xid='7'>2007</value></series><graphs><graph gid='0' title='First title'><value xid='0'>6</value><value xid='1'>36</value><value xid='2'>34</value><value xid='3'>37</value><value xid='4'>48</value><value xid='5'>42</value><value xid='6'>29</value><value xid='7'>43</value></graph><graph gid='1' title='Second title'><value xid='0'>19</value><value xid='1'>6</value><value xid='2'>39</value><value xid='3'>25</value><value xid='4'>8</value><value xid='5'>40</value><value xid='6'>50</value><value xid='7'>10</value></graph></graphs></chart>")); | |
| so.addVariable("chart_settings", encodeURIComponent("<settings><background><color>#FFFFFF,#FF9E01</color><alpha>100</alpha></background><labels><label><y>24</y><width>520</width><align>center</align><text><![CDATA[<b>Passing data and settings directly from html file example</b>]]></text></label></labels></settings>")); | |
| so.write("flashcontent"); | |
| // ]]> | |
| </script> | |
| <!-- end of amline script --> | |
| </body> | |
| </html> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <chart> | |
| <series> | |
| <value xid="0">1949</value> | |
| <value xid="1">1950</value> | |
| <value xid="2">1951</value> | |
| <value xid="3">1952</value> | |
| <value xid="4">1953</value> | |
| <value xid="5">1954</value> | |
| <value xid="6">1955</value> | |
| <value xid="7">1956</value> | |
| <value xid="8">1957</value> | |
| <value xid="9">1958</value> | |
| <value xid="10">1959</value> | |
| <value xid="11">1960</value> | |
| <value xid="12">1961</value> | |
| <value xid="13">1962</value> | |
| <value xid="14">1963</value> | |
| <value xid="15">1964</value> | |
| <value xid="16">1965</value> | |
| <value xid="17">1966</value> | |
| <value xid="18">1967</value> | |
| <value xid="19">1968</value> | |
| <value xid="20">1969</value> | |
| <value xid="21">1970</value> | |
| <value xid="22">1971</value> | |
| <value xid="23">1972</value> | |
| <value xid="24">1973</value> | |
| <value xid="25">1974</value> | |
| <value xid="26">1975</value> | |
| <value xid="27">1976</value> | |
| <value xid="28">1977</value> | |
| <value xid="29">1978</value> | |
| <value xid="30">1979</value> | |
| <value xid="31">1980</value> | |
| <value xid="32">1981</value> | |
| <value xid="33">1982</value> | |
| <value xid="34">1983</value> | |
| <value xid="35">1984</value> | |
| <value xid="36">1985</value> | |
| <value xid="37">1986</value> | |
| <value xid="38">1987</value> | |
| <value xid="39">1988</value> | |
| <value xid="40">1989</value> | |
| <value xid="41">1990</value> | |
| <value xid="42">1991</value> | |
| <value xid="43">1992</value> | |
| <value xid="44">1993</value> | |
| <value xid="45">1994</value> | |
| <value xid="46">1995</value> | |
| <value xid="47">1996</value> | |
| <value xid="48">1997</value> | |
| <value xid="49">1998</value> | |
| <value xid="50">1999</value> | |
| <value xid="51">2000</value> | |
| <value xid="52">2001</value> | |
| <value xid="53">2002</value> | |
| <value xid="54">2003</value> | |
| <value xid="55">2004</value> | |
| <value xid="56">2005</value> | |
| <value xid="57">2006</value> | |
| </series> | |
| <graphs> | |
| <graph gid="1"> | |
| <value xid="0">2.54</value> | |
| <value xid="1">2.51</value> | |
| <value xid="2">2.53</value> | |
| <value xid="3">2.53</value> | |
| <value xid="4">2.68</value> | |
| <value xid="5">2.78</value> | |
| <value xid="6">2.77</value> | |
| <value xid="7">2.79</value> | |
| <value xid="8">3.09</value> | |
| <value xid="9">3.01</value> | |
| <value xid="10">2.90</value> | |
| <value xid="11">2.88</value> | |
| <value xid="12">2.89</value> | |
| <value xid="13">2.90</value> | |
| <value xid="14">2.89</value> | |
| <value xid="15">2.88</value> | |
| <value xid="16">2.86</value> | |
| <value xid="17">2.88</value> | |
| <value xid="18">2.92</value> | |
| <value xid="19">2.94</value> | |
| <value xid="20">3.09</value> | |
| <value xid="21">3.18</value> | |
| <value xid="22">3.39</value> | |
| <value xid="23">3.39</value> | |
| <value xid="24">3.89</value> | |
| <value xid="25">6.87</value> | |
| <value xid="26">7.67</value> | |
| <value xid="27">8.19</value> | |
| <value xid="28">8.57</value> | |
| <value xid="29">9.00</value> | |
| <value xid="30">12.64</value> | |
| <value xid="31">21.59</value> | |
| <value xid="32">31.77</value> | |
| <value xid="33">28.52</value> | |
| <value xid="34">26.19</value> | |
| <value xid="35">25.88</value> | |
| <value xid="36">24.09</value> | |
| <value xid="37">12.51</value> | |
| <value xid="38">15.40</value> | |
| <value xid="39">12.58</value> | |
| <value xid="40">15.86</value> | |
| <value xid="41">20.03</value> | |
| <value xid="42">16.54</value> | |
| <value xid="43">15.99</value> | |
| <value xid="44">14.25</value> | |
| <value xid="45">13.19</value> | |
| <value xid="46">14.62</value> | |
| <value xid="47">18.46</value> | |
| <value xid="48">17.23</value> | |
| <value xid="49">10.87</value> | |
| <value xid="50">15.56</value> | |
| <value xid="51">26.72</value> | |
| <value xid="52">21.84</value> | |
| <value xid="53">22.51</value> | |
| <value xid="54">27.54</value> | |
| <value xid="55">38.93</value> | |
| <value xid="56">46.47</value> | |
| <value xid="57">58.30</value> | |
| </graph> | |
| <graph gid="2"> | |
| <value xid="0">20.21</value> | |
| <value xid="1">19.73</value> | |
| <value xid="2">18.43</value> | |
| <value xid="3">18.08</value> | |
| <value xid="4">19.01</value> | |
| <value xid="5">19.57</value> | |
| <value xid="6">19.58</value> | |
| <value xid="7">19.43</value> | |
| <value xid="8">20.83</value> | |
| <value xid="9">19.73</value> | |
| <value xid="10">18.87</value> | |
| <value xid="11">18.43</value> | |
| <value xid="12">18.31</value> | |
| <value xid="13">18.19</value> | |
| <value xid="14">17.89</value> | |
| <value xid="15">17.60</value> | |
| <value xid="16">17.20</value> | |
| <value xid="17">16.84</value> | |
| <value xid="18">16.56</value> | |
| <value xid="19">16.00</value> | |
| <value xid="20">15.95</value> | |
| <value xid="21">15.52</value> | |
| <value xid="22">15.85</value> | |
| <value xid="23">15.36</value> | |
| <value xid="24">16.59</value> | |
| <value xid="25">26.39</value> | |
| <value xid="26">27.00</value> | |
| <value xid="27">27.26</value> | |
| <value xid="28">26.78</value> | |
| <value xid="29">26.14</value> | |
| <value xid="30">32.98</value> | |
| <value xid="31">49.63</value> | |
| <value xid="32">66.20</value> | |
| <value xid="33">55.98</value> | |
| <value xid="34">49.80</value> | |
| <value xid="35">47.18</value> | |
| <value xid="36">42.40</value> | |
| <value xid="37">21.62</value> | |
| <value xid="38">25.68</value> | |
| <value xid="39">20.14</value> | |
| <value xid="40">24.22</value> | |
| <value xid="41">29.03</value> | |
| <value xid="42">23.00</value> | |
| <value xid="43">21.59</value> | |
| <value xid="44">18.68</value> | |
| <value xid="45">16.86</value> | |
| <value xid="46">18.17</value> | |
| <value xid="47">22.40</value> | |
| <value xid="48">20.39</value> | |
| <value xid="49">12.66</value> | |
| <value xid="50">17.78</value> | |
| <value xid="51">29.54</value> | |
| <value xid="52">23.39</value> | |
| <value xid="53">23.78</value> | |
| <value xid="54">28.42</value> | |
| <value xid="55">54.93</value> | |
| <value xid="56">47.97</value> | |
| <value xid="57">58.30</value> | |
| </graph> | |
| </graphs> | |
| </chart> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- Value between [] brackets, for example [#FFFFFF] shows default value which is used if this parameter is not set --> | |
| <!-- This means, that if you are happy with this value, you can delete this line at all and reduce file size --> | |
| <!-- value or explanation between () brackets shows the range or type of values you should use for this parameter --> | |
| <!-- the top left corner has coordinates x = 0, y = 0 --> | |
| <!-- "!" before x or y position (for example: <x>!20</x>) means that the coordinate will be calculated from the right side or the bottom --> | |
| <settings> | |
| <data_type></data_type> <!-- [xml] (xml / csv) --> | |
| <csv_separator></csv_separator> <!-- [;] (string) csv file data separator (you need it only if you are using csv file for your data) --> | |
| <skip_rows></skip_rows> <!-- [0] (Number) if you are using csv data type, you can set the number of rows which should be skipped here --> | |
| <font></font> <!-- [Arial] (font name) use device fonts, such as Arial, Times New Roman, Tahoma, Verdana... --> | |
| <text_size></text_size> <!-- [11] (Number) text size of all texts. Every text size can be set individually in the settings below --> | |
| <text_color></text_color> <!-- [#000000] (hex color code) main text color. Every text color can be set individually in the settings below--> | |
| <decimals_separator></decimals_separator> <!-- [,] (string) decimal separator. Note, that this is for displaying data only. Decimals in data xml file must be separated with dot --> | |
| <thousands_separator></thousands_separator> <!-- [ ] (string) thousand separator. use "none" if you don't want to separate --> | |
| <digits_after_decimal>2</digits_after_decimal> <!-- [] (Number) if your value has less digits after decimal then is set here, zeroes will be added --> | |
| <scientific_min></scientific_min> <!-- [0.000001] If absolute value of your number is equal or less then scientific_min, this number will be formatted using scientific notation, for example: 0.0000023 -> 2.3e-6 --> | |
| <scientific_max></scientific_max> <!-- [1000000000000000] If absolute value of your number is equal or bigger then scientific_max, this number will be formatted using scientific notation, for example: 15000000000000000 -> 1.5e16 --> | |
| <redraw></redraw> <!-- [false] (true / false) if your chart's width or height is set in percents, and redraw is set to true, the chart will be redrawn then screen size changes --> | |
| <!-- Legend, buttons labels will not be repositioned if you set your x and y values for these objects --> | |
| <reload_data_interval></reload_data_interval> <!-- [0] (Number) how often data should be reloaded (time in seconds) If you are using this feature I strongly recommend to turn off zoom function (set <zoomable>false</zoomable>) --> | |
| <preloader_on_reload></preloader_on_reload> <!-- [false] (true / false) Whether to show preloaded when data or settings are reloaded --> | |
| <add_time_stamp></add_time_stamp> <!-- [false] (true / false) if true, a unique number will be added every time flash loads data. Mainly this feature is useful if you set reload _data_interval >0 --> | |
| <connect></connect> <!-- [false] (true / false) whether to connect points if y data is missing --> | |
| <hide_bullets_count></hide_bullets_count> <!-- [] (Number) if there are more then hideBulletsCount points on the screen, bullets can be hidden, to avoid mess. Leave empty, or 0 to show bullets all the time. This rule doesn't influence if custom bullet is defined near y value, in data file --> | |
| <link_target></link_target> <!-- [] (_blank, _top ...) --> | |
| <start_on_axis></start_on_axis> <!-- [true] (true / false) if set to false, graph is moved 1/2 of one series interval from Y axis --> | |
| <colors></colors> <!-- [#FF0000,#0000FF,#00FF00,#FF9900,#CC00CC,#00CCCC,#33FF00,#990000,#000066,#555555] Colors of graphs. if the graph color is not set, color from this array will be used --> | |
| <rescale_on_hide></rescale_on_hide> <!-- [true] (true/false) When you show or hide graphs, the chart recalculates min and max values (rescales the chart). If you don't want this, set this to false. --> | |
| <js_enabled></js_enabled> <!-- [true] (true / false) In case you don't use any flash - JavaScript communication, you shuold set this setting to false - this will save some CPU and will disable the security warning message which appears when opening the chart from hard drive. --> | |
| <background> <!-- BACKGROUND --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) use 0 if you are using custom swf or jpg for background --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <file></file> <!-- [] (filename) swf or jpg file of a background. Do not use progressive jpg file, it will be not visible with flash player 7 --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| </background> | |
| <plot_area> <!-- PLOT AREA (the area between axes) --> | |
| <color></color> <!-- [#FFFFFF](hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) if you want it to be different than background color, use bigger than 0 value --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <margins> <!-- plot area margins --> | |
| <left></left> <!-- [60](Number / Number%) --> | |
| <top></top> <!-- [60](Number / Number%) --> | |
| <right></right> <!-- [60](Number / Number%) --> | |
| <bottom></bottom> <!-- [80](Number / Number%) --> | |
| </margins> | |
| </plot_area> | |
| <scroller> | |
| <enabled></enabled> <!-- [true] (true / false) whether to show scroller when chart is zoomed or not --> | |
| <y></y> <!-- [] (Number) Y position of scroller. If not set here, will be displayed above plot area --> | |
| <color></color> <!-- [#DADADA] (hex color code) scrollbar color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (Number) scrollbar alpha --> | |
| <bg_color></bg_color> <!-- [#F0F0F0] (hex color code) scroller background color. Separate color codes with comas for gradient --> | |
| <bg_alpha></bg_alpha> <!-- [100] (Number) scroller background alpha --> | |
| <height></height> <!-- [10] (Number) scroller height --> | |
| </scroller> | |
| <grid> <!-- GRID --> | |
| <x> <!-- vertical grid --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false](true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [4] (Number) approximate number of gridlines --> | |
| </x> | |
| <y_left> <!-- horizontal grid, Y left axis. Visible only if there is at least one graph assigned to left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_left> | |
| <y_right> <!-- horizontal grid, Y right axis. Visible only if there is at least one graph assigned to right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_right> | |
| </grid> | |
| <values> <!-- VALUES --> | |
| <x> <!-- x axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [false] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| </x> | |
| <y_left> <!-- y left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically. --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_left> | |
| <y_right> <!-- y right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_right> | |
| </values> | |
| <axes> <!-- axes --> | |
| <x> <!-- X axis --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| </x> | |
| <y_left> <!-- Y left axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_left> | |
| <y_right> <!-- Y right axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_right> | |
| </axes> | |
| <indicator> <!-- INDICATOR --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <zoomable></zoomable> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#BBBB00] (hex color code) line and x balloon background color --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <selection_color></selection_color> <!-- [#BBBB00] (hex color code) --> | |
| <selection_alpha></selection_alpha> <!-- [25] (0 - 100) --> | |
| <x_balloon_enabled></x_balloon_enabled> <!-- [true] (true / false) --> | |
| <x_balloon_text_color></x_balloon_text_color> <!-- [text_color] (hex color code) --> | |
| </indicator> | |
| <balloon> <!-- BALLOON --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <only_one></only_one> <!-- [false] (true / false) if set to true, only one balloon at a time will be displayed --> | |
| <on_off></on_off> <!-- [true] (true/false) whether it will be possible to turn on or off y balloons by clicking on a legend or on a graph --> | |
| <color></color> <!-- [] (hex color code) balloon background color. If not set, graph.balloon_color will be used. --> | |
| <alpha></alpha> <!-- [] (0 - 100) balloon background opacity. If not set, graph.balloon_alpha will be used. --> | |
| <text_color></text_color> <!-- [] (hex color code) baloon text color. If not set, graph.balloon_text_color will be used --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <max_width></max_width> <!-- [] (Number) The maximum width of a balloon. If not set, half width of plot area will be used --> | |
| <corner_radius></corner_radius> <!-- [0] (Number) Corner radius of a balloon. If you set it > 0, the balloon will not display arrow --> | |
| <border_width></border_width> <!-- [0] (Number) --> | |
| <border_alpha></border_alpha> <!-- [balloon.alpha] (Number) --> | |
| <border_color></border_color> <!-- [balloon.color] (hex color code) --> | |
| </balloon> | |
| <legend> <!-- LEGEND --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) if empty, will be equal to left margin --> | |
| <y></y> <!-- [] (Number / Number% / !Number) if empty, will be 20px below x axis values --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will be equal to plot area width --> | |
| <max_columns></max_columns> <!-- [] (Number) the maximum number of columns in the legend --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) background color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) border color --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) border alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <spacing></spacing> <!-- [10] (Number) vertical and horizontal gap between legend entries --> | |
| <margins></margins> <!-- [0] (Number) legend margins (space between legend border and legend entries, recommended to use only if legend border is visible or background color is different from chart area background color) --> | |
| <graph_on_off></graph_on_off> <!-- [true] (true / false) if true, color box gains "checkbox" function - it is possible to make graphs visible/invisible by clicking on this checkbox --> | |
| <reverse_order></reverse_order> <!-- [false] (true / false) whether to sort legend entries in a reverse order --> | |
| <align></align> <!-- [left] (left / center / right) alignment of legend entries --> | |
| <key> <!-- KEY (the color box near every legend entry) --> | |
| <size></size> <!-- [16] (Number) key size--> | |
| <border_color></border_color> <!-- [] (hex color code) leave empty if you don't want to have border--> | |
| <key_mark_color></key_mark_color> <!-- [#FFFFFF] (hex color code) key tick mark color --> | |
| </key> | |
| <values> <!-- VALUES --> | |
| <enabled></enabled> <!-- [false] (true / false) whether to show values near legend entries or not --> | |
| <width></width> <!-- [80] (Number) width of text field for value --> | |
| <align></align> <!-- [right] (right / left) --> | |
| <text><![CDATA[]]></text> <!-- [{value}] ({title} {value} {series} {description} {percents}) You can format any text: {value} will be replaced with value, {description} - with description and so on. You can add your own text or html code too. --> | |
| </values> | |
| </legend> | |
| <zoom_out_button> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of zoom out button, if not defined, will be aligned to right of plot area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of zoom out button, if not defined, will be aligned to top of plot area --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text and magnifying glass icon color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00] (hex color code) button text and magnifying glass icon roll over color --> | |
| <text_size></text_size> <!-- [text_size] (Number) button text size --> | |
| <text></text> <!-- [Show all] (text) --> | |
| </zoom_out_button> | |
| <help> <!-- HELP button and balloon --> | |
| <button> <!-- help button is only visible if balloon text is defined --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of help button, if not defined, will be aligned to right of chart area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of help button, if not defined, will be aligned to top of chart area --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00](hex color code) button text roll over color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text></text> <!-- [?] (text) --> | |
| </button> | |
| <balloon> <!-- help balloon --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <width></width> <!-- [300] (Number) --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text><![CDATA[]]></text> <!-- [] (text) some html tags may be used (supports <b>, <i>, <u>, <font>, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| </balloon> | |
| </help> | |
| <export_as_image> <!-- export_as_image feature works only on a web server --> | |
| <file></file> <!-- [] (filename) if you set filename here, context menu (then user right clicks on flash movie) "Export as image" will appear. This will allow user to export chart as an image. Collected image data will be posted to this file name (use amline/export.php or amline/export.aspx) --> | |
| <target></target> <!-- [] (_blank, _top ...) target of a window in which export file must be called --> | |
| <x></x> <!-- [0] (Number / Number% / !Number) x position of "Collecting data" text --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of "Collecting data" text. If not set, will be aligned to the bottom of flash movie --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of "Collecting data" text --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </export_as_image> | |
| <error_messages> <!-- "error_messages" settings will be applied for all error messages except the one which is showed if settings file wasn't found --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of error message. If not set, will be aligned to the center --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of error message. If not set, will be aligned to the center --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of error message --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code). Separate color codes with comas for gradient --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </error_messages> | |
| <strings> | |
| <no_data></no_data> <!-- [No data for selected period] (text) if data for selected period is missing, this message will be displayed --> | |
| <export_as_image></export_as_image> <!-- [Export as image] (text) text for right click menu --> | |
| <error_in_data_file></error_in_data_file> <!-- [Error in data file] (text) this text is displayed if there is an error in data file or there is no data in file. "There is no data" means that there should actually be at least one space in data file. If data file will be completly empty, it will display "error loading file" text --> | |
| <collecting_data></collecting_data> <!-- [Collecting data] (text) this text is displayed while exporting chart to an image --> | |
| <wrong_zoom_value>Wrong zoom values</wrong_zoom_value> <!-- [Incorrect values] (text) this text is displayed if you set zoom through JavaScript and entered from or to value was not find between series --> | |
| <!-- the strings below are only important if you format your axis values as durations --> | |
| <ss></ss> <!-- [] unit of seconds --> | |
| <mm></mm> <!-- [:] unit of minutes --> | |
| <hh></hh> <!-- [:] unit of hours --> | |
| <DD></DD> <!-- [d. ] unit of days --> | |
| </strings> | |
| <context_menu> <!-- context menu allows you to controll right-click menu items. You can add custom menu items to create custom controls --> | |
| <!-- "function_name" specifies JavaScript function which will be called when user clicks on this menu. You can pass variables, for example: function_name="alert('something')" --> | |
| <!-- "title" sets menu item text. Do not use for title: Show all, Zoom in, Zoom out, Print, Settings... --> | |
| <!-- you can have any number of custom menus. Uncomment the line below to enable this menu and add apropriate JS function to your html file. --> | |
| <menu function_name="selectInterval(10)" title="10 years"></menu> | |
| <menu function_name="selectInterval(20)" title="20 years"></menu> | |
| <menu function_name="showAll" title="Show full"></menu> | |
| <default_items> | |
| <zoom></zoom> <!-- [false] (true / false) to show or not flash players zoom menu --> | |
| <print></print> <!-- [true] (true / false) to show or not flash players print menu --> | |
| </default_items> | |
| </context_menu> | |
| <labels> <!-- LABELS --> | |
| <!-- you can add as many labels as you want. Some html tags supported: <b>, <i>, <u>, <font>, <a href=""> --> | |
| <!-- labels can also be added in data xml file, using exactly the same structure like it is here --> | |
| <label lid="0"> | |
| <x></x> <!-- [0] (Number / Number% / !Number) --> | |
| <y>20</y> <!-- [0] (Number / Number% / !Number) --> | |
| <rotate></rotate> <!-- [false] (true / false) --> | |
| <width>520</width> <!-- [] (Number / Number%) if empty, will stretch from left to right untill label fits --> | |
| <align>center</align> <!-- [left] (left / center / right) --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [text_size](Number) button text size --> | |
| <text> <!-- [] (text) html tags may be used (supports <b>, <i>, <u>, <font>, <a href="">, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| <![CDATA[<b>Historical Crude Oil Prices</b>]]> | |
| </text> | |
| </label> | |
| </labels> | |
| <graphs> <!-- GRAPHS SETTINGS. These settings can also be specified in data file, as attributes of <graph>, in this case you can delete everything from <graphs> to </graphs> (including) --> | |
| <!-- It is recommended to have graph settings here if you don't want to mix data with other params --> | |
| <!-- copy <graph>...</graph> (including) as many times as many graphs you have and edit settings individually --> | |
| <!-- if graph settings are defined both here and in data file, the ones from data file are used --> | |
| <graph gid="1"> <!-- if you are using XML data file, graph "gid" must match graph "gid" in data file --> | |
| <axis>left</axis> <!-- [left] (left/ right) indicates which y axis should be used --> | |
| <title>Nominal</title> <!-- [] (graph title) --> | |
| <color>#FFCC00</color> <!-- [] (hex color code) if not defined, uses colors from this array: #FF0000, #0000FF, #00FF00, #FF9900, #CC00CC, #00CCCC, #33FF00, #990000, #000066 --> | |
| <color_hover></color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <line_width></line_width> <!-- [0] (Number) 0 for hairline --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) if you want the chart to be area chart, use bigger than 0 value --> | |
| <fill_color></fill_color> <!-- [grpah.color] (hex color code) Separate color codes with comas for gradient --> | |
| <balloon_color></balloon_color> <!-- [graph color] (hex color code) leave empty to use the same color as graph --> | |
| <balloon_alpha></balloon_alpha> <!-- [100] (0 - 100) --> | |
| <balloon_text_color></balloon_text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <bullet>round</bullet> <!-- [] (square, round, square_outlined, round_outlined, square_outline, round_outline, filename.swf) can be used predefined bullets or loaded custom bullets. Leave empty if you don't want to have bullets at all. Outlined bullets use plot area color for outline color --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| <bullet_size></bullet_size> <!-- [8](Number) affects only predefined bullets, does not change size of custom loaded bullets --> | |
| <bullet_color></bullet_color> <!-- [graph color] (hex color code) affects only predefined (square and round) bullets, does not change color of custom loaded bullets. Leave empty to use the same color as graph --> | |
| <bullet_alpha></bullet_alpha> <!-- [graph alpha] (hex color code) Leave empty to use the same alpha as graph --> | |
| <hidden></hidden> <!-- [false] (true / false) vill not be visible until you check corresponding checkbox in the legend --> | |
| <selected></selected> <!-- [true] (true / false) if true, balloon indicating value will be visible then roll over plot area --> | |
| <balloon_text> | |
| <![CDATA[]]> <!-- [<b>{value}</b><br>{description}] ({title} {value} {series} {description}) You can format any balloon text: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </balloon_text> | |
| <data_labels> | |
| <![CDATA[]]> <!-- [] ({title} {value} {series} {description} {percents}) Data labels can display value (and more) near your point on the plot area. --> | |
| <!-- to avoid overlapping, data labels, the same as bullets are not visible if there are more then hide_bullets_count data points on plot area. --> | |
| </data_labels> | |
| <data_labels_text_color></data_labels_text_color> <!-- [text_color] (hex color code) --> | |
| <data_labels_text_size></data_labels_text_size> <!-- [text_size] (Number) --> | |
| <data_labels_position></data_labels_position> <!-- [above] (below / above) --> | |
| <vertical_lines></vertical_lines> <!-- [false] (true / false) whether to draw vertical lines or not. If you want to show vertical lines only (without the graph, set line_alpha to 0 --> | |
| <visible_in_legend></visible_in_legend> <!-- [true] (true / false) whether to show legend entry for this graph or not --> | |
| <clickable_bullets>true</clickable_bullets> <!-- [false] (true / false) if set to true, hand cursor will be displayed on roll-over the bullet even if it hasn't url property. When clicked or hovered, JS function will be called --> | |
| </graph> | |
| <graph gid="2"> | |
| <axis>left</axis> | |
| <title>Inflation Adjusted 2006</title> | |
| <color>#999999</color> | |
| </graph> | |
| </graphs> | |
| <guides> <!-- guides are straight lines drawn through all plot area at a give value. Can also be filled with color --> | |
| <max_min></max_min> <!-- [false] (true / false) whether to include guides' values when calculating min and max of a chart --> | |
| <guide> <!-- there can be any number of quides. guides can also be set in data xml file, using the same syntax as here --> | |
| <axis></axis> <!-- [left] (left / right) y axis of a guide. There should be at least one graph assigned to this axis in order guide to be visible --> | |
| <start_value></start_value> <!-- (Number) value at which guide should be placed --> | |
| <end_value></end_value> <!-- (Number) if you set value here too, another quide will be drawn. If you set fill alpha > 0, then the area between these quides will be filled with color --> | |
| <title></title> <!-- [] (String) text which will be displayed near the guide --> | |
| <width></width> <!-- [0] (Number) width of a guide line (0 for hairline) --> | |
| <color></color> <!-- [#000000] (hex color code) color of guide line --> | |
| <alpha></alpha> <!-- [100] (0 - 100) opacity of guide line --> | |
| <fill_color></fill_color> <!-- [guide.color] (hex color code) fill color. If not defined, color of a guide will be used. Separate color codes with comas for gradient --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of a fill --> | |
| <inside></inside> <!-- [values.y_{axis}.inside] whether to place title inside plot area --> | |
| <centered></centered> <!-- [true] (true / false) if you have start and end values defined, title can be placed in the middle between these values. If false, it will be placed near start_value --> | |
| <rotate></rotate> <!-- [values.y_{axis}.rotate](0 - 90) angle of rotation of title --> | |
| <text_size></text_size> <!-- [values.y_{axis}.text_size] (Number) --> | |
| <text_color></text_color> <!-- [values.y_{axis}.color](hex color code) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| </guide> | |
| </guides> | |
| </settings> |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | |
| <title>JavaScript control example</title> | |
| </head> | |
| <style> | |
| body{ | |
| background-color: #FFFFFF; | |
| font-family: Arial; | |
| font-size: 12px; | |
| } | |
| </style> | |
| <body> | |
| <b><font color="red">Attention! Because of security restrictions in most cases this | |
| example will work only if you upload files to your web server.</font></b><br><br> | |
| <!-- saved from url=(0013)about:internet --> | |
| <!-- amline script--> | |
| <script type="text/javascript" src="../../amline/swfobject.js"></script> | |
| <div id="flashcontent"> | |
| <strong>You need to upgrade your Flash Player</strong> | |
| </div> | |
| <script type="text/javascript"> | |
| var so = new SWFObject("../../amline/amline.swf", "amline", "520", "400", "8", "#FFFFFF"); | |
| so.addVariable("path", "../../amline/"); | |
| so.addVariable("chart_id", "amline"); // if you have more then one chart in one page, set different chart_id for each chart | |
| so.addVariable("settings_file", encodeURIComponent("amline_settings.xml")); | |
| so.addVariable("data_file", encodeURIComponent("amline_data.xml")); | |
| so.addVariable("preloader_color", "#999999"); | |
| so.write("flashcontent"); | |
| </script> | |
| <!-- end of amline script --> | |
| <script type="text/javascript"> | |
| ////////////////////////////////////////////////////////////////////////////////////////// | |
| // Functions that control the chart ////////////////////////////////////////////////////// | |
| ////////////////////////////////////////////////////////////////////////////////////////// | |
| // SET DATA ////////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.setData(data, rebuild) | |
| // This function can be used for setting the chart's data on the fly. | |
| // Data must be in CSV or XML form, as per the <data_type> setting. | |
| // The "rebuild" parameter is optional and can be "true" or "false". "false" means that | |
| // the new data will not be applied right after this function is called. | |
| function setData() { | |
| // gets data from the text area with id "data" | |
| var data = document.getElementById("data").value; | |
| // sets data | |
| flashMovie.setData(data); | |
| } | |
| // APPEND DATA /////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.appendData(data[, remove_count]) | |
| // This function can be used to append new data to the existing dataset. | |
| // The data must be in CSV or XML form, as per the <data_type> setting. | |
| // The remove_count variable is optional and sets the number of data points | |
| // that should be removed from the beginning of dataset. | |
| function appendData() { | |
| // gets data from the text area with id "data" | |
| var data = document.getElementById("data").value; | |
| // appends data | |
| flashMovie.appendData(data, 0); | |
| } | |
| // SET SETTINGS ////////////////////////////////////////////////////////////////////////// | |
| // flashMove.setSettings(settings[, rebuild]) | |
| // This function can be used to set some part or all the settings. The settings should be | |
| // in XML format, inside <settings></settings>. The "rebuild" parameter is optional and | |
| // can be "true" or "false". "false" means that the new settings will not be applied right | |
| // after this function is called. They will can be applied using flashMovie.rebuild() | |
| // function or by adding some more setings with the "rebuild" set to "true". The default | |
| // value of "rebuild" is "true" | |
| function setSettings() { | |
| var settings = document.getElementById("settings").value; | |
| flashMovie.setSettings(settings, true); | |
| } | |
| // REBUILD CHART ///////////////////////////////////////////////////////////////////////// | |
| // flashMovie.rebuild(); | |
| // This function might be used to rebuild the chart after several portions of settings were | |
| // set using setSettings(settings, rebuild) function, with the rebuild set to false | |
| function rebuild() { | |
| flashMovie.rebuild(); | |
| } | |
| // RELOAD DATA /////////////////////////////////////////////////////////////////////////// | |
| // flashMove.reloadData([file_name], [show_all]) | |
| // This function will reload the data. The file_name variable is optional, if you do not | |
| // set it here, data from the original file will be reloaded. The show_all variable | |
| // tells the chart whether it should keep the selected period or show full new data | |
| // the default value of show_all is "true" | |
| function reloadData() { | |
| flashMovie.reloadData(); | |
| } | |
| // RELOAD SETTINGS /////////////////////////////////////////////////////////////////////// | |
| // flashMovie.reloadSettings([file_name], [show_all]) | |
| // This function will reload the settings. The file_name variable is optional, if you do | |
| // not set it here, settings from the original file will be reloaded. The show_all variable | |
| // tells the chart whether it should keep the selected period or show full new data | |
| // the default value of show_all is "true" | |
| function reloadSettings() { | |
| flashMovie.reloadSettings(); | |
| } | |
| // RELOAD ALL //////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.reloadAll([data_file_name][,settings_file_name]) | |
| // This function will reload both data and settings. The names of the files are optional. | |
| // If you do not set them, the original file names will be used. | |
| function reloadAll() { | |
| flashMovie.reloadAll(); | |
| } | |
| // SET PARAM ///////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.setParam(param, value) | |
| // This function lets you change a single setting. The parameter names are formed using | |
| // the section name and the parameter name, separated with a period. For example: | |
| // background.alpha or labels.label[1].text | |
| function setParam() { | |
| // gets param name from a field with id "param" | |
| var param = document.getElementById("param").value; | |
| // gets param value from a field with id "value" | |
| var value = document.getElementById("value").value; | |
| // sets param | |
| flashMovie.setParam(param, value); | |
| } | |
| // GET PARAM ///////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.getParam(param) | |
| // This function will ask Flash to return the value of a setting. The parameter name is | |
| // formed in the same way as the setParam function (described above). When you call this | |
| // function to return the setting value, Flash will return the value by calling the | |
| // amReturnParam(chart_id, param_value, param_name) function | |
| function getParam() { | |
| // get the param name from a field with id "getparam" | |
| var param = document.getElementById("getparam").value; | |
| flashMovie.getParam(param); | |
| } | |
| // GET DATA ////////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.getData() | |
| // This function will ask Flash to return the whole data. When you call this function to | |
| // return the data, Flash will call the amReturnData(chart_id, data) function. | |
| function getData() { | |
| flashMovie.getData(); | |
| } | |
| // GET SETTINGS ////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.getSettings() | |
| // This function will ask Flash to return the whole settings XML. When you call this | |
| // function to return the settings, Flash will call the | |
| // amReturnSettings(chart_id, settings) function. | |
| function getSettings() { | |
| flashMovie.getSettings(); | |
| } | |
| // EXPORT AS IMAGE /////////////////////////////////////////////////////////////////////// | |
| // flashMovie.exportImage([file_name]) | |
| // This function will start the process of exporting the chart as an image. The file_name | |
| // is a name of a file to which image data will be posted (files provided in the download | |
| // package are export.php and export.aspx). The file_name is optional and can be set in | |
| // the <export_as_image><file> setting. | |
| function exportImage() { | |
| flashMovie.exportImage('../../amline/export.php'); | |
| } | |
| // PRINT ///////////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.print() | |
| // This function will print the chart. Use this print function if you don't have any | |
| // values rotated by 90 degrees, also if you don't have a custom bitmap background. | |
| function print(){ | |
| flashMovie.print(); | |
| } | |
| // PRINT AS BITMAP /////////////////////////////////////////////////////////////////////// | |
| // flashMovie.printAsBitmap() | |
| // Use it if you have values rotated by 90 degrees and/or a custom bitmap background. | |
| function printAsBitmap(){ | |
| flashMovie.printAsBitmap(); | |
| } | |
| // Line chart specific functions ////////////////////////////////////////////////////////// | |
| // SHOW GRAPH ///////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.showGraph(index) | |
| // This function will show the graph (if it is hidden). Index is the sequential number of a | |
| // graph in your settings, counting from 0. | |
| function showGraph(){ | |
| var index = document.getElementById("graphshow").value; | |
| flashMovie.showGraph(index); | |
| } | |
| // HIDE GRAPH //////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.hideGraph(index) | |
| // This function will hide the graph (if it is visible). Index is the sequential number of | |
| // a graph in your settings, counting from 0. | |
| function hideGraph(){ | |
| var index = document.getElementById("graphhide").value; | |
| flashMovie.hideGraph(index); | |
| } | |
| // SELECT GRAPH ////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.selectGraph(index) | |
| // This function will select the graph (the value balloon will become visible). Index is | |
| // the sequential number of a graph in your settings, counting from 0. | |
| function selectGraph(){ | |
| var index = document.getElementById("graphselect").value; | |
| flashMovie.selectGraph(index); | |
| } | |
| // DESELECT GRAPH //////////////////////////////////////////////////////////////////////// | |
| // flashMovie.deselectGraph(index) | |
| // This function will deselect the graph (the value balloon will become invisible). | |
| // Index is the sequential number of a graph in your settings, counting from 0. | |
| function deselectGraph(){ | |
| var index = document.getElementById("graphdeselect").value; | |
| flashMovie.deselectGraph(index); | |
| } | |
| // SET ZOOM ////////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.setZoom(from, to) | |
| // This function will change the selected period. "From" and "to" values must match the | |
| // values of the series in the data file, otherwise an error message will be displayed. | |
| function setZoom(){ | |
| var from = document.getElementById("from").value; | |
| var to = document.getElementById("to").value; | |
| flashMovie.setZoom(from, to); | |
| } | |
| // SHOW ALL ////////////////////////////////////////////////////////////////////////////// | |
| // flashMovie.showAll(); | |
| // This function will show the full chart if some shorter period was previously selected. | |
| function showAll(){ | |
| flashMovie.showAll(); | |
| } | |
| ////////////////////////////////////////////////////////////////////////////////////////// | |
| // Functions that are called by the chart //////////////////////////////////////////////// | |
| ////////////////////////////////////////////////////////////////////////////////////////// | |
| // CHART INITED ////////////////////////////////////////////////////////////////////////// | |
| // amChartInited(chart_id) | |
| // This function is called when the chart is fully loaded and initialized. | |
| function amChartInited(chart_id){ | |
| // get the flash object into "flashMovie" variable | |
| flashMovie = document.getElementById(chart_id); | |
| // tell the field with id "chartfinished" that this chart was initialized | |
| document.getElementById("chartfinished").value = chart_id; | |
| } | |
| // PROCESS COMPLETED ////////////////////////////////////////////////////////////////////////// | |
| // amProcessCompleted(chart_id, process_name) | |
| // This function is called when the chart finishes doing some task triggered by another | |
| // JavaScript function | |
| function amProcessCompleted(chart_id, process_name){ | |
| document.getElementById("processcompleted").value = process_name; | |
| } | |
| // RETURN DATA /////////////////////////////////////////////////////////////////////////// | |
| // amReturnData(chart_id, data) | |
| // This function is called when you request data from a chart | |
| // by calling the flashMove.getData() function. | |
| function amReturnData(chart_id, data){ | |
| document.getElementById("data").value = unescape(data); | |
| } | |
| // RETURN PARAM ////////////////////////////////////////////////////////////////////////// | |
| // amReturnParam(chart_id, value, param_name) | |
| // This function is called when you request a setting from a chart | |
| // by calling the flashMovie.getParam(param) function. | |
| function amReturnParam(chart_id, value, param_name){ | |
| document.getElementById("returnedparam").value = unescape(value); | |
| } | |
| // RETURN SETTINGS /////////////////////////////////////////////////////////////////////// | |
| // amReturnSettings(chart_id, settings) | |
| // This function is called when you request settings from a chart | |
| // by calling flashMovie.getSettings() function. | |
| function amReturnSettings(chart_id, settings){ | |
| document.getElementById("settings").value = unescape(settings); | |
| } | |
| // RETURN IMAGE DATA ///////////////////////////////////////////////////////////////////// | |
| // amReturnImageData(chart_id, data) | |
| // This function is called when the export to image process is finished and might be used | |
| // as alternative way to get image data (instead of posting it to some file) | |
| function amReturnImageData(chart_id, data){ | |
| // your own functions here | |
| } | |
| // ERROR ///////////////////////////////////////////////////////////////////////////////// | |
| // amError(chart_id, message) | |
| // This function is called when an error occurs, such as no data, or file not found. | |
| function amError(chart_id, message){ | |
| alert(message); | |
| } | |
| // GET ZOOM ////////////////////////////////////////////////////////////////////////////// | |
| // amGetZoom(chart_id, from, to, from_xid, to_xid) | |
| // This function is called when the selected period is changed. | |
| function amGetZoom(chart_id, from, to, from_xid, to_xid){ | |
| document.getElementById("from").value = from; | |
| document.getElementById("to").value = to; | |
| } | |
| // FIND OUT WHICH GRAPH WAS SELECTED ///////////////////////////////////////////////////// | |
| // amGraphSelect(chart_id, index, title) | |
| // This function is called when the viewer selects the graph by clicking on it or on the | |
| // graph's legend entry. Index is the sequential number of a graph in your settings, | |
| // counting from 0. | |
| function amGraphSelect(chart_id, index, title){ | |
| document.getElementById("graphselect").value = index; | |
| } | |
| // FIND OUT WHICH GRAPH WAS DESELECTED /////////////////////////////////////////////////// | |
| // amGraphDeselect(chart_id, index, title) | |
| // This function is called when the viewer deselects the graph by clicking on it or on the | |
| // graph's legend entry. Index is the sequential number of a graph in your settings, | |
| // counting from 0. | |
| function amGraphDeselect(chart_id, index, title){ | |
| document.getElementById("graphdeselect").value = index; | |
| } | |
| // FIND OUT WHICH GRAPH WAS HIDDEN /////////////////////////////////////////////////////// | |
| // amGraphHide(chart_id, index, title) | |
| // This function is called when the viewer hides the graph by clicking on the checkbox in | |
| // the legend. Index is the sequential number of a graph in your settings, counting from 0 | |
| function amGraphHide(chart_id, index, title){ | |
| document.getElementById("graphhide").value = index; | |
| } | |
| // FIND OUT WHICH GRAPH WAS SHOWN /////////////////////////////////////////////////////// | |
| // amGraphShow(chart_id, index, title) | |
| // This function is called when the viewer shows the graph by clicking on the checkbox in | |
| // the legend. Index is the sequential number of a graph in your settings, counting from 0 | |
| function amGraphShow(chart_id, index, title){ | |
| document.getElementById("graphshow").value = index; | |
| } | |
| // FIND CURRENTLY HOVERED SERIES //////////////////////////////////////////////////////// | |
| // amRolledOverSeries(chart_id, series) | |
| // This function is called when the viewer moves the mouse over the plot area. It returns | |
| // the value of the series over which the mouse is currently hovered. | |
| function amRolledOverSeries(chart_id, series){ | |
| document.getElementById("series_hover").value = series; | |
| } | |
| // FIND WHICH SERIES WAS CLICKED //////////////////////////////////////////////////////// | |
| // amClickedOnSeries(chart_id, series) | |
| // This function is called when the viewer clicks somewhere on the plot area. It returns | |
| // the value of the series over which the mouse hovered when it was clicked. | |
| function amClickedOnSeries(chart_id, series){ | |
| document.getElementById("series_clicked").value = series; | |
| } | |
| // FIND WHICH BULLET WAS CLICKED //////////////////////////////////////////////////////// | |
| // amClickedOnBullet(chart_id, graph_index, value, series, url, description) | |
| // This function is called when the viewer clicks on a graph bullet. It returns the | |
| // sequential number of a graph (graph_index), the value of the data point (value), | |
| // the series value (series), the URL and the description attributes. | |
| function amClickedOnBullet(chart_id, graph_index, value, series, url, description){ | |
| document.getElementById("bullet_clicked").value = value; | |
| } | |
| // FIND WHICH BULLET WAS HOVERED //////////////////////////////////////////////////////// | |
| // amRolledOverBullet(chart_id, graph_index, value, series, url, description) | |
| // This function is called when the viewer rolls over a graph bullet. It returns the | |
| // sequential number of a graph (graph_index), the value of the data point (value), | |
| // the series value (series), the URL and the description attributes. | |
| function amRolledOverBullet(chart_id, graph_index, value, series, url, description){ | |
| document.getElementById("bullet_hover").value = value; | |
| } | |
| ////////////////////////////////////////////////////////////////////////////////////////// | |
| // this is example function which is called from right-click menu //////////////////////// | |
| function selectInterval(interval){ | |
| flashMovie.setZoom(2006 - interval, 2006); | |
| } | |
| </script> | |
| <!-- Buttons and forms --> | |
| <form> | |
| <hr noshade size="1"> | |
| Chart initialized: <input type="text" id="chartfinished"> | |
| Process completed: <input type="text" id="processcompleted"> | |
| <hr noshade size="1"> | |
| <input type="button" value="reload Data" onclick="reloadData();" /> | |
| <input type="button" value="reload Settings" onclick="reloadSettings();" /> | |
| <input type="button" value="reload All" onclick="reloadAll();" /> | |
| <hr noshade size="1"> | |
| <input type="button" value="export image" onclick="exportImage();" /> | |
| <input type="button" value="print" onclick="print();" /> | |
| <input type="button" value="print as bitmap" onclick="printAsBitmap();" /> | |
| <hr noshade size="1"> | |
| Indicator is on:<input type="text" id="series_hover"> | |
| Clicked on series:<input type="text" id="series_clicked"> | |
| <hr noshade size="1"> | |
| Rolled over bullet:<input type="text" id="bullet_hover"> | |
| Clicked on bullet:<input type="text" id="bullet_clicked"> | |
| <hr noshade size="1"> | |
| <textarea id="data" rows="6" cols="62"></textarea><br> | |
| <input type="button" value="Get data" onclick="getData();" /> | |
| <input type="button" value="Set Data" onclick="setData();" /> | |
| <input type="button" value="Append Data" onclick="appendData();" /> | |
| <hr noshade size="1"> | |
| Param: <input type="text" id="param" value="graphs.graph[0].hidden"/> | |
| Value: <input type="text" id="value" value="true"/> | |
| <input type="button" value="set param" onclick="setParam();" /> | |
| <hr noshade size="1"> | |
| Param: <input type="text" id="getparam" value="axes.x.width"> | |
| Value: <input type="text" id="returnedparam" /> | |
| <input type="button" value="get param" onclick="getParam();" /> | |
| <hr noshade size="1"> | |
| Zoom from: <input type="text" id="from"/> | |
| to: <input type="text" id="to"/> | |
| <input type="button" value="set zoom" onclick="setZoom();" /> | |
| <input type="button" value="show all" onclick="showAll();" /> | |
| <hr noshade size="1"> | |
| Select:<input type="text" id="graphselect" value="0"/> | |
| <input type="button" value="select" onclick="selectGraph();" /> | |
| Deselect:<input type="text" id="graphdeselect" value="0"/> | |
| <input type="button" value="deselect" onclick="deselectGraph();" /> | |
| <hr noshade size="1"> | |
| Show:<input type="text" id="graphshow" value="1"/> | |
| <input type="button" value="show" onclick="showGraph();" /> | |
| Hide:<input type="text" id="graphhide" value="1"/> | |
| <input type="button" value="hide" onclick="hideGraph();" /> | |
| <hr noshade size="1"> | |
| <textarea id="settings" rows="6" cols="62"></textarea><br> | |
| <input type="button" value="Get settings" onclick="getSettings();" /> | |
| <input type="button" value="Set settings" onclick="setSettings();" /> | |
| <input type="button" value="Rebuild" onclick="rebuild();" /> | |
| <hr noshade size="1"> | |
| </form> | |
| Right-click on the chart - you will see custom menu items. These items are configurable - you can assign custom JavaScript functions to them. | |
| </body> | |
| </html> |
| 2007-01-01;482.5001 | |
| 2007-01-02;482.1698 | |
| 2007-01-03;482.8384 | |
| 2007-01-04;483.1293 | |
| 2007-01-05;480.0093 | |
| 2007-01-06;485.8954 | |
| 2007-01-07;485.8954 | |
| 2007-01-08;480.0832 | |
| 2007-01-09;479.9077 | |
| 2007-01-10;457.0415 | |
| 2007-01-11;453.4658 | |
| 2007-01-12;462.3433 | |
| 2007-01-13;462.3433 | |
| 2007-01-14;462.3433 | |
| 2007-01-15;461.1270 | |
| 2007-01-16;473.3008 | |
| 2007-01-17;467.6072 | |
| 2007-01-18;465.0783 | |
| 2007-01-19;465.2581 | |
| 2007-01-20;465.2581 | |
| 2007-01-21;465.2581 | |
| 2007-01-22;477.1390 | |
| 2007-01-23;474.0081 | |
| 2007-01-24;478.5857 | |
| 2007-01-25;478.5117 | |
| 2007-01-26;482.8144 | |
| 2007-01-27;482.8144 | |
| 2007-01-28;482.8144 | |
| 2007-01-29;471.3700 | |
| 2007-01-30;471.9759 | |
| 2007-01-31;476.1921 | |
| 2007-02-01;483.8653 | |
| 2007-02-02;485.5800 | |
| 2007-02-03;485.5800 | |
| 2007-02-04;485.5800 | |
| 2007-02-05;488.5777 | |
| 2007-02-06;490.0683 | |
| 2007-02-07;488.5520 | |
| 2007-02-08;477.0283 | |
| 2007-02-09;478.6511 | |
| 2007-02-10;478.6511 | |
| 2007-02-11;478.6511 | |
| 2007-02-12;466.9880 | |
| 2007-02-13;473.9600 | |
| 2007-02-14;481.0963 | |
| 2007-02-15;477.8714 | |
| 2007-02-16;480.8368 | |
| 2007-02-17;479.0914 | |
| 2007-02-18;479.0914 | |
| 2007-02-19;483.9699 | |
| 2007-02-20;479.2478 | |
| 2007-02-21;479.0233 | |
| 2007-02-22;485.3238 | |
| 2007-02-23;483.5882 | |
| 2007-02-24;483.1858 | |
| 2007-02-25;483.1858 | |
| 2007-02-26;488.8680 | |
| 2007-02-27;467.0742 | |
| 2007-02-28;457.8783 | |
| 2007-03-01;442.1513 | |
| 2007-03-02;446.9608 | |
| 2007-03-03;446.9608 | |
| 2007-03-04;446.9608 | |
| 2007-03-05;449.4007 |
| 2007-01-01;1457.7123 | |
| 2007-01-02;1460.3290 | |
| 2007-01-03;1460.3290 | |
| 2007-01-04;1450.1445 | |
| 2007-01-05;1452.6525 | |
| 2007-01-06;1450.1445 | |
| 2007-01-07;1450.1445 | |
| 2007-01-08;1450.1445 | |
| 2007-01-09;1386.7923 | |
| 2007-01-10;1363.9036 | |
| 2007-01-11;1391.4589 | |
| 2007-01-12;1391.9643 | |
| 2007-01-13;1391.9643 | |
| 2007-01-14;1391.9643 | |
| 2007-01-15;1426.7512 | |
| 2007-01-16;1432.1966 | |
| 2007-01-17;1403.4244 | |
| 2007-01-18;1412.9508 | |
| 2007-01-19;1400.9971 | |
| 2007-01-20;1400.9971 | |
| 2007-01-21;1400.9971 | |
| 2007-01-22;1420.1312 | |
| 2007-01-23;1422.2775 | |
| 2007-01-24;1442.3408 | |
| 2007-01-25;1448.7695 | |
| 2007-01-26;1445.0007 | |
| 2007-01-27;1445.0007 | |
| 2007-01-28;1445.0007 | |
| 2007-01-29;1427.1455 | |
| 2007-01-30;1402.2614 | |
| 2007-01-31;1419.1256 | |
| 2007-02-01;1452.5094 | |
| 2007-02-02;1461.2926 | |
| 2007-02-03;1461.2926 | |
| 2007-02-04;1461.2926 | |
| 2007-02-05;1472.0534 | |
| 2007-02-06;1483.1822 | |
| 2007-02-07;1476.1499 | |
| 2007-02-08;1443.7846 | |
| 2007-02-09;1455.9704 | |
| 2007-02-10;1455.9704 | |
| 2007-02-11;1455.9704 | |
| 2007-02-12;1424.6636 | |
| 2007-02-13;1430.6200 | |
| 2007-02-14;1438.2052 | |
| 2007-02-15;1442.4262 | |
| 2007-02-16;1444.8812 | |
| 2007-02-17;1444.8815 | |
| 2007-02-18;1444.8815 | |
| 2007-02-19;1455.5794 | |
| 2007-02-20;1443.7715 | |
| 2007-02-21;1450.9808 | |
| 2007-02-22;1474.3134 | |
| 2007-02-23;1474.6131 | |
| 2007-02-24;1474.3134 | |
| 2007-02-25;1474.3134 | |
| 2007-02-26;1494.2504 | |
| 2007-02-27;1436.3225 | |
| 2007-02-28;1399.8188 | |
| 2007-03-01;1344.8840 | |
| 2007-03-02;1357.7611 | |
| 2007-03-03;1357.7611 | |
| 2007-03-04;1357.7611 | |
| 2007-03-05;1308.1609 |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- Value between [] brackets, for example [#FFFFFF] shows default value which is used if this parameter is not set --> | |
| <!-- This means, that if you are happy with this value, you can delete this line at all and reduce file size --> | |
| <!-- value or explanation between () brackets shows the range or type of values you should use for this parameter --> | |
| <!-- the top left corner has coordinates x = 0, y = 0 --> | |
| <!-- "!" before x or y position (for example: <x>!20</x>) means that the coordinate will be calculated from the right side or the bottom --> | |
| <settings> | |
| <data_type>csv</data_type> <!-- [xml] (xml / csv) --> | |
| <csv_separator></csv_separator> <!-- [;] (string) csv file data separator (you need it only if you are using csv file for your data) --> | |
| <skip_rows></skip_rows> <!-- [0] (Number) if you are using csv data type, you can set the number of rows which should be skipped here --> | |
| <font></font> <!-- [Arial] (font name) use device fonts, such as Arial, Times New Roman, Tahoma, Verdana... --> | |
| <text_size></text_size> <!-- [11] (Number) text size of all texts. Every text size can be set individually in the settings below --> | |
| <text_color></text_color> <!-- [#000000] (hex color code) main text color. Every text color can be set individually in the settings below--> | |
| <decimals_separator></decimals_separator> <!-- [,] (string) decimal separator. Note, that this is for displaying data only. Decimals in data xml file must be separated with dot --> | |
| <thousands_separator></thousands_separator> <!-- [ ] (string) thousand separator. use "none" if you don't want to separate --> | |
| <digits_after_decimal></digits_after_decimal> <!-- [] (Number) if your value has less digits after decimal then is set here, zeroes will be added --> | |
| <scientific_min></scientific_min> <!-- [0.000001] If absolute value of your number is equal or less then scientific_min, this number will be formatted using scientific notation, for example: 0.0000023 -> 2.3e-6 --> | |
| <scientific_max></scientific_max> <!-- [1000000000000000] If absolute value of your number is equal or bigger then scientific_max, this number will be formatted using scientific notation, for example: 15000000000000000 -> 1.5e16 --> | |
| <redraw></redraw> <!-- [false] (true / false) if your chart's width or height is set in percents, and redraw is set to true, the chart will be redrawn then screen size changes --> | |
| <!-- Legend, buttons labels will not be repositioned if you set your x and y values for these objects --> | |
| <reload_data_interval></reload_data_interval> <!-- [0] (Number) how often data should be reloaded (time in seconds) If you are using this feature I strongly recommend to turn off zoom function (set <zoomable>false</zoomable>) --> | |
| <preloader_on_reload></preloader_on_reload> <!-- [false] (true / false) Whether to show preloaded when data or settings are reloaded --> | |
| <add_time_stamp></add_time_stamp> <!-- [false] (true / false) if true, a unique number will be added every time flash loads data. Mainly this feature is useful if you set reload _data_interval >0 --> | |
| <connect></connect> <!-- [false] (true / false) whether to connect points if y data is missing --> | |
| <hide_bullets_count></hide_bullets_count> <!-- [] (Number) if there are more then hideBulletsCount points on the screen, bullets can be hidden, to avoid mess. Leave empty, or 0 to show bullets all the time. This rule doesn't influence if custom bullet is defined near y value, in data file --> | |
| <link_target></link_target> <!-- [] (_blank, _top ...) --> | |
| <start_on_axis></start_on_axis> <!-- [true] (true / false) if set to false, graph is moved 1/2 of one series interval from Y axis --> | |
| <colors></colors> <!-- [#FF0000,#0000FF,#00FF00,#FF9900,#CC00CC,#00CCCC,#33FF00,#990000,#000066,#555555] Colors of graphs. if the graph color is not set, color from this array will be used --> | |
| <rescale_on_hide></rescale_on_hide> <!-- [true] (true/false) When you show or hide graphs, the chart recalculates min and max values (rescales the chart). If you don't want this, set this to false. --> | |
| <js_enabled></js_enabled> <!-- [true] (true / false) In case you don't use any flash - JavaScript communication, you shuold set this setting to false - this will save some CPU and will disable the security warning message which appears when opening the chart from hard drive. --> | |
| <background> <!-- BACKGROUND --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) use 0 if you are using custom swf or jpg for background --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <file></file> <!-- [] (filename) swf or jpg file of a background. Do not use progressive jpg file, it will be not visible with flash player 7 --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| </background> | |
| <plot_area> <!-- PLOT AREA (the area between axes) --> | |
| <color></color> <!-- [#FFFFFF](hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) if you want it to be different than background color, use bigger than 0 value --> | |
| <border_color>#DADADA</border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha>100</border_alpha> <!-- [0] (0 - 100) --> | |
| <margins> <!-- plot area margins --> | |
| <left>5</left> <!-- [60](Number / Number%) --> | |
| <top>22</top> <!-- [60](Number / Number%) --> | |
| <right>5</right> <!-- [60](Number / Number%) --> | |
| <bottom>28</bottom> <!-- [80](Number / Number%) --> | |
| </margins> | |
| </plot_area> | |
| <scroller> | |
| <enabled></enabled> <!-- [true] (true / false) whether to show scroller when chart is zoomed or not --> | |
| <y></y> <!-- [] (Number) Y position of scroller. If not set here, will be displayed above plot area --> | |
| <color></color> <!-- [#DADADA] (hex color code) scrollbar color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (Number) scrollbar alpha --> | |
| <bg_color></bg_color> <!-- [#F0F0F0] (hex color code) scroller background color. Separate color codes with comas for gradient --> | |
| <bg_alpha></bg_alpha> <!-- [100] (Number) scroller background alpha --> | |
| <height></height> <!-- [10] (Number) scroller height --> | |
| </scroller> | |
| <grid> <!-- GRID --> | |
| <x> <!-- vertical grid --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false](true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [4] (Number) approximate number of gridlines --> | |
| </x> | |
| <y_left> <!-- horizontal grid, Y left axis. Visible only if there is at least one graph assigned to left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_left> | |
| <y_right> <!-- horizontal grid, Y right axis. Visible only if there is at least one graph assigned to right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_right> | |
| </grid> | |
| <values> <!-- VALUES --> | |
| <x> <!-- x axis --> | |
| <enabled>false</enabled> <!-- [true] (true / false) --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [false] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| </x> | |
| <y_left> <!-- y left axis --> | |
| <enabled>false</enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically. --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_left> | |
| <y_right> <!-- y right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <unit></unit> <!-- [] (text) unit which will be added to values on y axis--> | |
| <unit_position></unit_position> <!-- [right] (left / right) --> | |
| <integers_only></integers_only> <!-- [false] (true / false) if set to true, values with decimals will be omitted --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| <duration></duration> <!-- [] (ss/mm/hh/DD) In case you want your axis to display formatted durations instead of numbers, you have to set the unit of the duration in your data file. For example, if your values in data file represents seconds, set "ss" here.--> | |
| </y_right> | |
| </values> | |
| <axes> <!-- axes --> | |
| <x> <!-- X axis --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha>0</alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length>5</tick_length> <!-- [7] (Number) --> | |
| </x> | |
| <y_left> <!-- Y left axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha>0</alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_left> | |
| <y_right> <!-- Y right axis, visible only if at least one graph is assigned to this axis --> | |
| <type></type> <!-- [line] (line, stacked, 100% stacked) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <width></width> <!-- [2] (Number) line width, 0 for hairline --> | |
| <tick_length></tick_length> <!-- [7] (Number) --> | |
| <logarithmic></logarithmic> <!-- [false] (true / false) If set to true, this axis will use logarithmic scale instead of linear --> | |
| </y_right> | |
| </axes> | |
| <indicator> <!-- INDICATOR --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <zoomable>false</zoomable> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#BBBB00] (hex color code) line and x balloon background color --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <selection_color></selection_color> <!-- [#BBBB00] (hex color code) --> | |
| <selection_alpha></selection_alpha> <!-- [25] (0 - 100) --> | |
| <x_balloon_enabled></x_balloon_enabled> <!-- [true] (true / false) --> | |
| <x_balloon_text_color></x_balloon_text_color> <!-- [text_color] (hex color code) --> | |
| </indicator> | |
| <balloon> <!-- BALLOON --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <only_one></only_one> <!-- [false] (true / false) if set to true, only one balloon at a time will be displayed --> | |
| <on_off></on_off> <!-- [true] (true/false) whether it will be possible to turn on or off y balloons by clicking on a legend or on a graph --> | |
| <color></color> <!-- [] (hex color code) balloon background color. If not set, graph.balloon_color will be used. --> | |
| <alpha></alpha> <!-- [] (0 - 100) balloon background opacity. If not set, graph.balloon_alpha will be used. --> | |
| <text_color></text_color> <!-- [] (hex color code) baloon text color. If not set, graph.balloon_text_color will be used --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <max_width></max_width> <!-- [] (Number) The maximum width of a balloon. If not set, half width of plot area will be used --> | |
| <corner_radius></corner_radius> <!-- [0] (Number) Corner radius of a balloon. If you set it > 0, the balloon will not display arrow --> | |
| <border_width></border_width> <!-- [0] (Number) --> | |
| <border_alpha></border_alpha> <!-- [balloon.alpha] (Number) --> | |
| <border_color></border_color> <!-- [balloon.color] (hex color code) --> | |
| </balloon> | |
| <legend> <!-- LEGEND --> | |
| <enabled>false</enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) if empty, will be equal to left margin --> | |
| <y></y> <!-- [] (Number / Number% / !Number) if empty, will be 20px below x axis values --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will be equal to plot area width --> | |
| <max_columns></max_columns> <!-- [] (Number) the maximum number of columns in the legend --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) background color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) border color --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) border alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <spacing></spacing> <!-- [10] (Number) vertical and horizontal gap between legend entries --> | |
| <margins></margins> <!-- [0] (Number) legend margins (space between legend border and legend entries, recommended to use only if legend border is visible or background color is different from chart area background color) --> | |
| <graph_on_off></graph_on_off> <!-- [true] (true / false) if true, color box gains "checkbox" function - it is possible to make graphs visible/invisible by clicking on this checkbox --> | |
| <reverse_order></reverse_order> <!-- [false] (true / false) whether to sort legend entries in a reverse order --> | |
| <align></align> <!-- [left] (left / center / right) alignment of legend entries --> | |
| <key> <!-- KEY (the color box near every legend entry) --> | |
| <size></size> <!-- [16] (Number) key size--> | |
| <border_color></border_color> <!-- [] (hex color code) leave empty if you don't want to have border--> | |
| <key_mark_color></key_mark_color> <!-- [#FFFFFF] (hex color code) key tick mark color --> | |
| </key> | |
| <values> <!-- VALUES --> | |
| <enabled></enabled> <!-- [false] (true / false) whether to show values near legend entries or not --> | |
| <width></width> <!-- [80] (Number) width of text field for value --> | |
| <align></align> <!-- [right] (right / left) --> | |
| <text><![CDATA[]]></text> <!-- [{value}] ({title} {value} {series} {description} {percents}) You can format any text: {value} will be replaced with value, {description} - with description and so on. You can add your own text or html code too. --> | |
| </values> | |
| </legend> | |
| <zoom_out_button> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of zoom out button, if not defined, will be aligned to right of plot area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of zoom out button, if not defined, will be aligned to top of plot area --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text and magnifying glass icon color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00] (hex color code) button text and magnifying glass icon roll over color --> | |
| <text_size></text_size> <!-- [text_size] (Number) button text size --> | |
| <text></text> <!-- [Show all] (text) --> | |
| </zoom_out_button> | |
| <help> <!-- HELP button and balloon --> | |
| <button> <!-- help button is only visible if balloon text is defined --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of help button, if not defined, will be aligned to right of chart area --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of help button, if not defined, will be aligned to top of chart area --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_color_hover></text_color_hover> <!-- [#BBBB00](hex color code) button text roll over color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text></text> <!-- [?] (text) --> | |
| </button> | |
| <balloon> <!-- help balloon --> | |
| <color></color> <!-- [#000000] (hex color code) background color --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <width></width> <!-- [300] (Number) --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [] (Number) button text size --> | |
| <text><![CDATA[]]></text> <!-- [] (text) some html tags may be used (supports <b>, <i>, <u>, <font>, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| </balloon> | |
| </help> | |
| <export_as_image> <!-- export_as_image feature works only on a web server --> | |
| <file></file> <!-- [] (filename) if you set filename here, context menu (then user right clicks on flash movie) "Export as image" will appear. This will allow user to export chart as an image. Collected image data will be posted to this file name (use amline/export.php or amline/export.aspx) --> | |
| <target></target> <!-- [] (_blank, _top ...) target of a window in which export file must be called --> | |
| <x></x> <!-- [0] (Number / Number% / !Number) x position of "Collecting data" text --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of "Collecting data" text. If not set, will be aligned to the bottom of flash movie --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of "Collecting data" text --> | |
| <alpha></alpha> <!-- [0] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </export_as_image> | |
| <error_messages> <!-- "error_messages" settings will be applied for all error messages except the one which is showed if settings file wasn't found --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <x></x> <!-- [] (Number / Number% / !Number) x position of error message. If not set, will be aligned to the center --> | |
| <y></y> <!-- [] (Number / Number% / !Number) y position of error message. If not set, will be aligned to the center --> | |
| <color></color> <!-- [#BBBB00] (hex color code) background color of error message. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (0 - 100) background alpha --> | |
| <text_color></text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| </error_messages> | |
| <strings> | |
| <no_data></no_data> <!-- [No data for selected period] (text) if data for selected period is missing, this message will be displayed --> | |
| <export_as_image></export_as_image> <!-- [Export as image] (text) text for right click menu --> | |
| <error_in_data_file></error_in_data_file> <!-- [Error in data file] (text) this text is displayed if there is an error in data file or there is no data in file. "There is no data" means that there should actually be at least one space in data file. If data file will be completly empty, it will display "error loading file" text --> | |
| <collecting_data></collecting_data> <!-- [Collecting data] (text) this text is displayed while exporting chart to an image --> | |
| <wrong_zoom_value></wrong_zoom_value> <!-- [Incorrect values] (text) this text is displayed if you set zoom through JavaScript and entered from or to value was not find between series --> | |
| <!-- the strings below are only important if you format your axis values as durations --> | |
| <ss></ss> <!-- [] unit of seconds --> | |
| <mm></mm> <!-- [:] unit of minutes --> | |
| <hh></hh> <!-- [:] unit of hours --> | |
| <DD></DD> <!-- [d. ] unit of days --> | |
| </strings> | |
| <context_menu> <!-- context menu allows you to controll right-click menu items. You can add custom menu items to create custom controls --> | |
| <!-- "function_name" specifies JavaScript function which will be called when user clicks on this menu. You can pass variables, for example: function_name="alert('something')" --> | |
| <!-- "title" sets menu item text. Do not use for title: Show all, Zoom in, Zoom out, Print, Settings... --> | |
| <!-- you can have any number of custom menus. Uncomment the line below to enable this menu and add apropriate JS function to your html file. --> | |
| <!-- <menu function_name="printChart" title="Print chart"></menu> --> | |
| <default_items> | |
| <zoom></zoom> <!-- [false] (true / false) to show or not flash players zoom menu --> | |
| <print></print> <!-- [true] (true / false) to show or not flash players print menu --> | |
| </default_items> | |
| </context_menu> | |
| <vertical_lines> <!-- line chart can also display vertical lines/columns (set <vertical_lines>true</vertical_lines> in graph settings for that). If you also set <line_alpha>0</line_alpha> your line chart will become column chart --> | |
| <width></width> <!-- [0] (0 - 100) width of vertical line in percents. 0 for hairline. Set > 0 if you want to have column --> | |
| <alpha></alpha> <!-- [100] (0 - 100) --> | |
| <clustered></clustered> <!-- [false] in case you have more then one graph with vertical lines enabled, you might want to place your columns next to each other, set true for that. --> | |
| <mask></mask> <!-- [true] (true / false) as line chart by default starts on axis, and your column width is >0, then some part of first and last column will be outside plot area (incase you don't set <start_on_axis>false</false> Mask will cut off the part outside the plot area. Set to false if you don't want this. --> | |
| </vertical_lines> | |
| <labels> <!-- LABELS --> | |
| <!-- you can add as many labels as you want. Some html tags supported: <b>, <i>, <u>, <font>, <a href=""> --> | |
| <!-- labels can also be added in data xml file, using exactly the same structure like it is here --> | |
| <label lid="0"> | |
| <x></x> <!-- [0] (Number / Number% / !Number) --> | |
| <y>25</y> <!-- [0] (Number / Number% / !Number) --> | |
| <rotate></rotate> <!-- [false] (true / false) --> | |
| <width></width> <!-- [] (Number / Number%) if empty, will stretch from left to right untill label fits --> | |
| <align>center</align> <!-- [left] (left / center / right) --> | |
| <text_color></text_color> <!-- [text_color] (hex color code) button text color --> | |
| <text_size></text_size> <!-- [text_size](Number) button text size --> | |
| <text> <!-- [] (text) html tags may be used (supports <b>, <i>, <u>, <font>, <a href="">, <br/>. Enter text between []: <![CDATA[your <b>bold</b> and <i>italic</i> text]]>--> | |
| <![CDATA[<b>Index 1</b>]]> | |
| </text> | |
| </label> | |
| </labels> | |
| <graphs> <!-- GRAPHS SETTINGS. These settings can also be specified in data file, as attributes of <graph>, in this case you can delete everything from <graphs> to </graphs> (including) --> | |
| <!-- It is recommended to have graph settings here if you don't want to mix data with other params --> | |
| <!-- copy <graph>...</graph> (including) as many times as many graphs you have and edit settings individually --> | |
| <!-- if graph settings are defined both here and in data file, the ones from data file are used --> | |
| <graph gid="1"> <!-- if you are using XML data file, graph "gid" must match graph "gid" in data file --> | |
| <axis>left</axis> <!-- [left] (left/ right) indicates which y axis should be used --> | |
| <title></title> <!-- [] (graph title) --> | |
| <color>#FFCC00</color> <!-- [] (hex color code) if not defined, uses colors from this array: #FF0000, #0000FF, #00FF00, #FF9900, #CC00CC, #00CCCC, #33FF00, #990000, #000066 --> | |
| <color_hover></color_hover> <!-- [#BBBB00] (hex color code) --> | |
| <line_alpha></line_alpha> <!-- [100] (0 - 100) --> | |
| <line_width></line_width> <!-- [0] (Number) 0 for hairline --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) if you want the chart to be area chart, use bigger than 0 value --> | |
| <fill_color></fill_color> <!-- [grpah.color] (hex color code) Separate color codes with comas for gradient --> | |
| <balloon_color></balloon_color> <!-- [graph color] (hex color code) leave empty to use the same color as graph --> | |
| <balloon_alpha></balloon_alpha> <!-- [100] (0 - 100) --> | |
| <balloon_text_color></balloon_text_color> <!-- [#FFFFFF] (hex color code) --> | |
| <bullet></bullet> <!-- [] (square, round, square_outlined, round_outlined, square_outline, round_outline, filename.swf) can be used predefined bullets or loaded custom bullets. Leave empty if you don't want to have bullets at all. Outlined bullets use plot area color for outline color --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| <bullet_size></bullet_size> <!-- [8](Number) affects only predefined bullets, does not change size of custom loaded bullets --> | |
| <bullet_color></bullet_color> <!-- [graph color] (hex color code) affects only predefined (square and round) bullets, does not change color of custom loaded bullets. Leave empty to use the same color as graph --> | |
| <bullet_alpha></bullet_alpha> <!-- [graph alpha] (hex color code) Leave empty to use the same alpha as graph --> | |
| <hidden></hidden> <!-- [false] (true / false) vill not be visible until you check corresponding checkbox in the legend --> | |
| <selected></selected> <!-- [true] (true / false) if true, balloon indicating value will be visible then roll over plot area --> | |
| <balloon_text> | |
| <![CDATA[${value}]]> <!-- [<b>{value}</b><br>{description}] ({title} {value} {series} {description} {percents}) You can format any balloon text: {title} will be replaced with real title, {value} - with value and so on. You can add your own text or html code too. --> | |
| </balloon_text> | |
| <data_labels> | |
| <![CDATA[]]> <!-- [] ({title} {value} {series} {description} {percents}) Data labels can display value (and more) near your point on the plot area. --> | |
| <!-- to avoid overlapping, data labels, the same as bullets are not visible if there are more then hide_bullets_count data points on plot area. --> | |
| </data_labels> | |
| <data_labels_text_color></data_labels_text_color> <!-- [text_color] (hex color code) --> | |
| <data_labels_text_size></data_labels_text_size> <!-- [text_size] (Number) --> | |
| <data_labels_position></data_labels_position> <!-- [above] (below / above) --> | |
| <vertical_lines></vertical_lines> <!-- [false] (true / false) whether to draw vertical lines or not. If you want to show vertical lines only (without the graph, set line_alpha to 0 --> | |
| <visible_in_legend></visible_in_legend> <!-- [true] (true / false) whether to show legend entry for this graph or not --> | |
| </graph> | |
| </graphs> | |
| <guides> <!-- guides are straight lines drawn through all plot area at a give value. Can also be filled with color --> | |
| <max_min></max_min> <!-- [false] (true / false) whether to include guides' values when calculating min and max of a chart --> | |
| <guide> <!-- there can be any number of quides. guides can also be set in data xml file, using the same syntax as here --> | |
| <axis></axis> <!-- [left] (left / right) y axis of a guide. There should be at least one graph assigned to this axis in order guide to be visible --> | |
| <start_value></start_value> <!-- (Number) value at which guide should be placed --> | |
| <end_value></end_value> <!-- (Number) if you set value here too, another quide will be drawn. If you set fill alpha > 0, then the area between these quides will be filled with color --> | |
| <title></title> <!-- [] (String) text which will be displayed near the guide --> | |
| <width></width> <!-- [0] (Number) width of a guide line (0 for hairline) --> | |
| <color></color> <!-- [#000000] (hex color code) color of guide line --> | |
| <alpha></alpha> <!-- [100] (0 - 100) opacity of guide line --> | |
| <fill_color></fill_color> <!-- [guide.color] (hex color code) fill color. If not defined, color of a guide will be used. Separate color codes with comas for gradient --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of a fill --> | |
| <inside></inside> <!-- [values.y_{axis}.inside] whether to place title inside plot area --> | |
| <centered></centered> <!-- [true] (true / false) if you have start and end values defined, title can be placed in the middle between these values. If false, it will be placed near start_value --> | |
| <rotate></rotate> <!-- [values.y_{axis}.rotate](0 - 90) angle of rotation of title --> | |
| <text_size></text_size> <!-- [values.y_{axis}.text_size] (Number) --> | |
| <text_color></text_color> <!-- [values.y_{axis}.color](hex color code) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| </guide> | |
| </guides> | |
| </settings> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
| <%@ page contentType="text/html; charset=UTF-8"%> | |
| <html> | |
| <head> | |
| <title>流程定义部署</title> | |
| <meta http-equiv="pragma" content="no-cache"> | |
| <meta http-equiv="cache-control" content="no-cache"> | |
| <meta http-equiv="content-type" content="text/html; charset=UTF-8"> | |
| <script type="text/javascript"> | |
| </script> | |
| </head> | |
| <body> | |
| <form id="deployProcess" name="deployProcess" action="${pageContext.request.contextPath}/flow/flowAction_deployprocesssubmit.action" method="post" enctype="multipart/form-data" > | |
| <TABLE border=0 cellSpacing=0 cellPadding=0 width="100%" bgColor=#c4d8ed> | |
| <TBODY> | |
| <TR> | |
| <TD background=images/r_0.gif width="100%"> | |
| <TABLE cellSpacing=0 cellPadding=0 width="100%"> | |
| <TBODY> | |
| <TR> | |
| <TD> 流程定义部署</TD> | |
| <TD align=right> </TD> | |
| </TR> | |
| </TBODY> | |
| </TABLE> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD> | |
| <TABLE class="toptable grid" border=1 cellSpacing=1 cellPadding=4 | |
| align=center> | |
| <TBODY> | |
| <TR> | |
| <TD height=30 align=right>流程定义部署说明:</TD> | |
| <TD > | |
| 请在下边分别选择流程定义bpmn文件和png文件 | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD height=30 align=right>选择流程定义bpmn文件</TD> | |
| <TD class=category> | |
| <input type="file" name="resourcebpmn" /> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD height=30 align=right>选择流程定义png文件</TD> | |
| <TD class=category> | |
| <input type="file" name="resourcepng" /> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD colspan=2 align=center class=category> | |
| <input type="submit" value="确认部署"/> | |
| </TD> | |
| </TR> | |
| </TBODY> | |
| </TABLE> | |
| </TD> | |
| </TR> | |
| </TBODY> | |
| </TABLE> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../baselist.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/left.css" media="all"/> | |
| </head> | |
| <body id="left_frame"> | |
| <div class="PositionFrame_black" id="PositionFrame"></div> | |
| <!-- begin1 --> | |
| <div id="sidebar" class="sidebar"> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_t_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_t_r"></div> | |
| </div> | |
| <div class="panel"> | |
| <div class="panel_icon"><img src="${ctx}/skin/default/images/icon/user1_lock.png"/></div> | |
| <div class="panel-header"> | |
| <div class="panel-title">流程管理</div> | |
| <div class="panel-content"> | |
| <%-- <ul> | |
| <li><a href="${ctx}/sysadmin/deptAction_list" onclick="linkHighlighted(this)" target="main" id="aa_1">部门管理</a></li> | |
| <li><a href="${ctx}/sysadmin/userAction_list" onclick="linkHighlighted(this)" target="main" id="aa_1">用户管理</a></li> | |
| <li><a href="${ctx}/sysadmin/roleAction_list" onclick="linkHighlighted(this)" target="main" id="aa_1">角色管理</a></li> | |
| <li><a href="${ctx}/sysadmin/moduleAction_list" onclick="linkHighlighted(this)" target="main" id="aa_1">模块管理</a></li> | |
| </ul> --%> | |
| <!-- 引入动态的菜单生成 --> | |
| <%@include file="../leftmenu.jsp" %> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_b_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_b_r"></div> | |
| </div> | |
| </div> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../base.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title>模块介绍</title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/main.css" media="all"/> | |
| </head> | |
| <body> | |
| <form> | |
| <div class="textbox"></div> | |
| <div class="modelDiv"> | |
| <table class="modelTable" cellspacing="1"> | |
| <tr> | |
| <td colspan="2" class="modelTitle">流程管理模块介绍</td> | |
| </tr> | |
| <tr> | |
| <td colspan="2" class="subModelTitle">流程管理</td> | |
| </tr> | |
| <tr> | |
| <td class="model_intro_left">部署流程:</td> | |
| <td class="model_intro_right">横向模块权限控制(菜单、按钮、状态、功能点), 纵向数据权限控制(行政部门、职务等级、管辖部门、管辖人员)。 | |
| <p>=严密的数据访问控制,充分保障数据的安全性。</p> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="model_intro_left">查询流程:</td> | |
| <td class="model_intro_right">对人员角色进行权限分配, 实现用户权限批量设置, 支持细粒度权限控制分配(菜单、按钮、状态、功能点)。</td> | |
| </tr> | |
| <tfoot> | |
| <tr> | |
| <td colspan="2" class="tableFooter"></td> | |
| </tr> | |
| </tfoot> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" contentType="text/html; charset=UTF-8" | |
| pageEncoding="UTF-8"%> | |
| <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> | |
| <%-- <%@ include file="/WEB-INF/jsp/tag.jsp"%> --%> | |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | |
| <!-- 引用jquery easy ui的js库及css --> | |
| <LINK rel="stylesheet" type="text/css" href="${baseurl}js/easyui/styles/default.css"> | |
| <%-- <%@ include file="/WEB-INF/jsp/common_css.jsp"%> | |
| <%@ include file="/WEB-INF/jsp/common_js.jsp"%> --%> | |
| <title>流程定义列表</title> | |
| <script type="text/javascript"> | |
| function deleteDeployment(id){ | |
| if(window.confirm("您确认删除该流程吗?")){ | |
| window.location="${pageContext.request.contextPath}/flow/flowAction_deleteDeployment.action?deploymentId="+id; | |
| } | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form id="queryProcessDefinition" name="queryProcessDefinition" | |
| method="post"> | |
| <TABLE class="toptable grid" > | |
| <TBODY> | |
| <tr> | |
| <td>流程部署id</td> | |
| <td>流程定义id</td> | |
| <td>流程定义名称</td> | |
| <td>流程定义key</td> | |
| <td>流程定义版本</td> | |
| <td>bpmn</td> | |
| <td>图片</td> | |
| <td>删除流程</td> | |
| </tr> | |
| <c:forEach items="${list }" var="processDefinition"> | |
| <tr> | |
| <td class=category>${processDefinition.deploymentId}</td> | |
| <td class=category>${processDefinition.id}</td> | |
| <td class=category>${processDefinition.name}</td> | |
| <td class=category>${processDefinition.key}</td> | |
| <td class=category>${processDefinition.version}</td> | |
| <td class=category><a href="${pageContext.request.contextPath}/flow/flowAction_findResource.action?processDefinitionId=${processDefinition.id}&resourceType=bpmn" target="_blank">查看bpmn</a></td> | |
| <td class=category><a href="${pageContext.request.contextPath}/flow/flowAction_findResource.action?processDefinitionId=${processDefinition.id}&resourceType=png" target="_blank">查看图片</a></td> | |
| <td class=category><a href=javascript:deleteDeployment('${processDefinition.deploymentId}') >删除流程</a></td> | |
| </tr> | |
| </c:forEach> | |
| </TBODY> | |
| </TABLE> | |
| </form> | |
| </body> | |
| </html> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
| <%@ page language="java" isELIgnored="false" pageEncoding="UTF-8"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> | |
| <%@ taglib uri="/struts-tags" prefix="s" %> | |
| <c:set var="ctx" value="${pageContext.request.contextPath}"/> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/default.css" media="all"/> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/table.css" media="all"/> | |
| <script language="javascript" src="${ctx}/js/common.js"></script> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../baselist.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/left.css" media="all"/> | |
| </head> | |
| <body id="left_frame"> | |
| <div class="PositionFrame_black" id="PositionFrame"></div> | |
| <!-- begin1 --> | |
| <div id="sidebar" class="sidebar"> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_t_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_t_r"></div> | |
| </div> | |
| <div class="panel"> | |
| <div class="panel_icon"><img src="${ctx}/skin/default/images/icon/document_into.png" /></div> | |
| <div class="panel-header"> | |
| <div class="panel-title">基础代码管理</div> | |
| <div class="panel-content"> | |
| <%-- <ul> | |
| <li> | |
| <a href="#" id="aa_1" onclick="linkHighlighted(this)">系统代码</a> | |
| </li> | |
| <li><a href="${ctx}/basicinfo/factoryAction_list" onclick="linkHighlighted(this)" target="main" id="aa_1">厂家信息</a></li> | |
| </ul> --%> | |
| <%@include file="../leftmenu.jsp" %> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_b_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_b_r"></div> | |
| </div> | |
| </div> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../base.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title>模块介绍</title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/main.css" media="all"/> | |
| </head> | |
| <body> | |
| <form> | |
| <div class="textbox"></div> | |
| <div class="modelDiv"> | |
| <table class="modelTable" cellspacing="1"> | |
| <tr> | |
| <td colspan="2" class="modelTitle">基础信息管理模块介绍</td> | |
| </tr> | |
| <tr> | |
| <td colspan="2" class="subModelTitle">基础代码管理</td> | |
| </tr> | |
| <tr> | |
| <td class="model_intro_left" width="169">系统代码:</td> | |
| <td class="model_intro_right" width="81%">统一管理系统中的基础代码, 相比“基础代码”它结果将形成多级树型结构。</td> | |
| </tr> | |
| <tr> | |
| <td colspan="2" class="subModelTitle">基础信息管理</td> | |
| </tr> | |
| <tr> | |
| <td class="model_intro_left">厂家信息:</td> | |
| <td class="model_intro_right">在购销合同中货物和附件中可选择对应的厂家。</td> | |
| </tr> | |
| <tfoot> | |
| <tr> | |
| <td colspan="2" class="tableFooter"></td> | |
| </tr> | |
| </tfoot> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="base.jsp"%> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/css/extreme/extremecomponents.css" /> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/css/extreme/extremesite.css" /> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx }/js/datepicker/WdatePicker.js""></script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('contractAction_insert','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 新增购销合同 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">客户名称:</td> | |
| <td class="tableContent"><input type="text" name="customName" value=""/></td> | |
| <td class="columnTitle">打印版式:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="printStyle" value="2" checked class="input">两款 | |
| <input type="radio" name="printStyle" value="1" class="input">一款 | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">合同号:</td> | |
| <td class="tableContent"><input type="text" name="contractNo" value=""/></td> | |
| <td class="columnTitle">收购方:</td> | |
| <td class="tableContent"><input type="text" name="offeror" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">制单人:</td> | |
| <td class="tableContent"><input type="text" name="inputBy" value=""/></td> | |
| <td class="columnTitle">审单人:</td> | |
| <td class="tableContent"><input type="text" name="checkBy" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">验货员:</td> | |
| <td class="tableContent"><input type="text" name="inspector" value=""/></td> | |
| <td class="columnTitle">签单日期:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="signingDate" | |
| value="" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">重要程度:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="importNum" value="3" checked class="input">★★★ | |
| <input type="radio" name="importNum" value="2" class="input">★★ | |
| <input type="radio" name="importNum" value="1" class="input">★ | |
| </td> | |
| <td class="columnTitle">船期:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="shipTime" | |
| value="" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">贸易条款:</td> | |
| <td class="tableContent"><input type="text" name="tradeTerms" value=""/></td> | |
| <td class="columnTitle">交货期限:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="deliveryPeriod" | |
| value="" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">要求:</td> | |
| <td class="tableContent"><textarea name="crequest" style="height:150px;"></textarea> | |
| <td class="columnTitle">说明:</td> | |
| <td class="tableContent"><textarea name="remark" style="height:150px;"></textarea> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="view"><a href="#" onclick="formSubmit('contractAction_toview','_self');this.blur();">查看</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('contractAction_tocreate','_self');this.blur();">新增</a></li> | |
| <li id="update"><a href="#" onclick="formSubmit('contractAction_toupdate','_self');this.blur();">修改</a></li> | |
| <li id="delete"><a href="#" onclick="formSubmit('contractAction_delete','_self');this.blur();">删除</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('contractAction_submit','_self');this.blur();">提交</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('contractAction_cancel','_self');this.blur();">取消</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('contractAction_print','_self');this.blur();">打印</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 购销合同列表 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">客户名称</td> | |
| <td class="tableHeader">合同号</td> | |
| <td class="tableHeader">货物数/附件数</td> | |
| <td class="tableHeader">制单人</td> | |
| <td class="tableHeader">审单人</td> | |
| <td class="tableHeader">验货员</td> | |
| <td class="tableHeader">签单日期</td> | |
| <td class="tableHeader">交货期限</td> | |
| <td class="tableHeader">船期</td> | |
| <td class="tableHeader">贸易条款</td> | |
| <td class="tableHeader">总金额</td> | |
| <td class="tableHeader">状态</td> | |
| <td class="tableHeader">操作</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${links } | |
| <c:forEach items="${results}" var="o" varStatus="status"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="id" value="${o.id}"/></td> | |
| <td>${status.index+1}</td> | |
| <td>${o.customName}</td> | |
| <td><a href="contractAction_toview?id=${o.id}">${o.contractNo}</a></td> | |
| <td> | |
| ${o.contractProducts.size() } | |
| / | |
| <c:set var="extNo" value="0"></c:set> | |
| <c:forEach items="${o.contractProducts }" var="cp" > | |
| <c:if test="${cp.extCproducts.size()!=0 }"> | |
| <c:set var="extNo" value="${extNo+cp.extCproducts.size() }"></c:set> | |
| </c:if> | |
| </c:forEach> | |
| ${extNo } | |
| </td> | |
| <td>${o.inputBy}</td> | |
| <td>${o.checkBy}</td> | |
| <td>${o.inspector}</td> | |
| <td><fmt:formatDate value="${o.signingDate}" pattern="yyyy-MM-dd"/></td> | |
| <td><fmt:formatDate value="${o.deliveryPeriod}" pattern="yyyy-MM-dd"/></td> | |
| <td><fmt:formatDate value="${o.shipTime}" pattern="yyyy-MM-dd"/></td> | |
| <td>${o.tradeTerms}</td> | |
| <td>${o.totalAmount}</td> | |
| <td><c:if test="${o.state==0}">草稿</c:if> | |
| <c:if test="${o.state==1}"><font color="green">已上报</font></c:if></td> | |
| <td><a href="${ctx }/cargo/contractProductAction_tocreate?contract.id=${o.id}">[货物]</a></td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="../../js/datepicker/WdatePicker.js"></script> | |
| <script type="text/javascript"> | |
| //动态设置生产厂家的名称 | |
| function setFactoryName(val){ | |
| document.getElementById("factoryName").value = val; | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="contract.id" value="${contract.id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('contractProductAction_insert','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 新增货物 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">生产厂家:</td> | |
| <td class="tableContent"> | |
| <s:select name="factory.id" list="factoryList" | |
| onchange="setFactoryName(this.options[this.selectedIndex].text);" | |
| listKey="id" listValue="factoryName" | |
| headerKey="" headerValue="--请选择--"/> | |
| <input type="hidden" id="factoryName" name="factoryName" value=""/> | |
| </td> | |
| <td class="columnTitle">货号:</td> | |
| <td class="tableContentAuto"><input type="text" name="productNo" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">货物照片:</td> | |
| <td class="tableContent"><input type="text" name="productImage" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">数量:</td> | |
| <td class="tableContent"><input type="text" name="cnumber" value=""/></td> | |
| <td class="columnTitle">包装单位:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="packingUnit" value="PCS" class="input">只 | |
| <input type="radio" name="packingUnit" value="SETS" class="input">套 | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">装率:</td> | |
| <td class="tableContent"><input type="text" name="loadingRate" value=""/></td> | |
| <td class="columnTitle">箱数:</td> | |
| <td class="tableContent"><input type="text" name="boxNum" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">单价:</td> | |
| <td class="tableContent"><input type="text" name="price" value=""/></td> | |
| <td class="columnTitle">排序号:</td> | |
| <td class="tableContent"><input type="text" name="orderNo" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">货物描述:</td> | |
| <td class="tableContent"><textarea name="productDesc" style="height:150px;"></textarea> | |
| <td class="columnTitle">要求:</td> | |
| <td class="tableContent"><textarea name="productRequest" style="height:150px;"></textarea> | |
| </tr> | |
| </table> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 货物列表 | |
| </div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">厂家</td> | |
| <td class="tableHeader">货号</td> | |
| <td class="tableHeader">装率</td> | |
| <td class="tableHeader">箱数</td> | |
| <td class="tableHeader">包装单位</td> | |
| <td class="tableHeader">数量</td> | |
| <td class="tableHeader">单价</td> | |
| <td class="tableHeader">总金额</td> | |
| <td class="tableHeader">操作</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${links } | |
| <c:forEach items="${results}" var="o" varStatus="status"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="id" value="${o.id}"/></td> | |
| <td>${status.index+1}</td> | |
| <td>${o.factoryName}</td> | |
| <td>${o.productNo}</td> | |
| <td>${o.loadingRate}</td> | |
| <td>${o.boxNum}</td> | |
| <td>${o.packingUnit}</td> | |
| <td>${o.cnumber}</td> | |
| <td>${o.price}</td> | |
| <td>${o.amount}</td> | |
| <td> | |
| <a href="contractProductAction_toupdate.action?id=${o.id}">[修改]</a> | |
| <a href="contractProductAction_delete.action?id=${o.id}&contract.id=${o.contract.id}">[删除]</a> | |
| <a href="extCproductAction_tocreate.action?contractProduct.contract.id=${o.contract.id}&contractProduct.id=${o.id}">[附件]</a> | |
| </td> | |
| </tr> | |
| <c:forEach items="${o.extCproducts}" var="ext" varStatus="status"> | |
| <tr height="40" class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td> </td> | |
| <td align="right"><font color="blue">附件:${status.index+1} </font></td> | |
| <td>${ext.factoryName}</td> | |
| <td>${ext.productNo}</td> | |
| <td> </td> | |
| <td> </td> | |
| <td>${ext.packingUnit}</td> | |
| <td>${ext.cnumber}</td> | |
| <td>${ext.price}</td> | |
| <td>${ext.amount}</td> | |
| </tr> | |
| </c:forEach> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx }/js/datepicker/WdatePicker.js"></script> | |
| <script type="text/javascript"> | |
| //动态设置生产厂家的名称 | |
| function setFactoryName(val){ | |
| document.getElementById("factoryName").value = val; | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <input type="hidden" name="contract.id" value="${contract.id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('contractProductAction_update','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 修改货物 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">生产厂家:</td> | |
| <td class="tableContent"> | |
| <s:select name="factory.id" list="factoryList" | |
| onchange="setFactoryName(this.options[this.selectedIndex].text);" | |
| listKey="id" listValue="factoryName" | |
| headerKey="" headerValue="--请选择--"/> | |
| <input type="hidden" id="factoryName" name="factoryName" value="${factoryName }"/> | |
| </td> | |
| <td class="columnTitle">货号:</td> | |
| <td class="tableContentAuto"><input type="text" name="productNo" value="${productNo }"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">货物照片:</td> | |
| <td class="tableContent"><input type="text" name="productImage" value="${productImage }"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">数量:</td> | |
| <td class="tableContent"><input type="text" name="cnumber" value="${cnumber }"/> | |
| <input type="hidden" name="amount" value="${amount }"/> | |
| </td> | |
| <td class="columnTitle">包装单位:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="packingUnit" value="PCS" ${packingUnit=='PCS'?"checked":"" } class="input">只 | |
| <input type="radio" name="packingUnit" value="SETS" ${packingUnit=='SETS'?"checked":"" } class="input">套 | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">装率:</td> | |
| <td class="tableContent"><input type="text" name="loadingRate" value="${loadingRate }"/></td> | |
| <td class="columnTitle">箱数:</td> | |
| <td class="tableContent"><input type="text" name="boxNum" value="${boxNum }"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">单价:</td> | |
| <td class="tableContent"><input type="text" name="price" value="${price }"/></td> | |
| <td class="columnTitle">排序号:</td> | |
| <td class="tableContent"><input type="text" name="orderNo" value="${orderNo }"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">货物描述:</td> | |
| <td class="tableContent"><textarea name="productDesc" style="height:150px;">${productDesc }</textarea> | |
| <td class="columnTitle">要求:</td> | |
| <td class="tableContent"><textarea name="productRequest" style="height:150px;">${productRequest }</textarea> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx }/js/datepicker/WdatePicker.js""></script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id }"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('contractAction_update','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 更新购销合同 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">客户名称:</td> | |
| <td class="tableContent"><input type="text" name="customName" value="${customName }"/></td> | |
| <td class="columnTitle">打印版式:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="printStyle" value="2" ${printStyle=='2'?"checked":"" } class="input">两款 | |
| <input type="radio" name="printStyle" value="1" ${printStyle=='1'?"checked":"" } class="input">一款 | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">合同号:</td> | |
| <td class="tableContent"><input type="text" name="contractNo" value="${contractNo }"/></td> | |
| <td class="columnTitle">收购方:</td> | |
| <td class="tableContent"><input type="text" name="offeror" value="${offeror }"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">制单人:</td> | |
| <td class="tableContent"><input type="text" name="inputBy" value="${inputBy }"/></td> | |
| <td class="columnTitle">审单人:</td> | |
| <td class="tableContent"><input type="text" name="checkBy" value="${checkBy }"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">验货员:</td> | |
| <td class="tableContent"><input type="text" name="inspector" value="${inspector }"/></td> | |
| <td class="columnTitle">签单日期:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="signingDate" | |
| value="<fmt:formatDate value='${signingDate }' pattern='yyyy-MM-dd' />" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">重要程度:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="importNum" value="3" ${importNum==3?"checked":"" } class="input">★★★ | |
| <input type="radio" name="importNum" value="2" ${importNum==2?"checked":"" } class="input">★★ | |
| <input type="radio" name="importNum" value="1" ${importNum==1?"checked":"" } class="input">★ | |
| </td> | |
| <td class="columnTitle">船期:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="shipTime" | |
| value="<fmt:formatDate value='${shipTime }' pattern='yyyy-MM-dd' />" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">贸易条款:</td> | |
| <td class="tableContent"><input type="text" name="tradeTerms" value="${tradeTerms }"/></td> | |
| <td class="columnTitle">交货期限:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="deliveryPeriod" | |
| value="<fmt:formatDate value='${deliveryPeriod }' pattern='yyyy-MM-dd' />" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">要求:</td> | |
| <td class="tableContent"><textarea name="crequest" style="height:150px;">${crequest }</textarea> | |
| <td class="columnTitle">说明:</td> | |
| <td class="tableContent"><textarea name="remark" style="height:150px;">${remark }</textarea> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 浏览购销合同 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">客户名称:</td> | |
| <td class="tableContent">${customName }</td> | |
| <td class="columnTitle">打印版式:</td> | |
| <td class="tableContentAuto"> | |
| ${printStyle=='2'?"两款":"一款" } | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">合同号:</td> | |
| <td class="tableContent">${contractNo }</td> | |
| <td class="columnTitle">收购方:</td> | |
| <td class="tableContent">${offeror }</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">制单人:</td> | |
| <td class="tableContent">${inputBy }</td> | |
| <td class="columnTitle">审单人:</td> | |
| <td class="tableContent">${checkBy }</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">验货员:</td> | |
| <td class="tableContent">${inspector }</td> | |
| <td class="columnTitle">签单日期:</td> | |
| <td class="tableContent"> | |
| <fmt:formatDate value='${signingDate }' pattern='yyyy-MM-dd' /> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">重要程度:</td> | |
| <td class="tableContentAuto"> | |
| ${importNum==3?"★★★":(importNum==2?"★★":"★") } | |
| </td> | |
| <td class="columnTitle">船期:</td> | |
| <td class="tableContent"> | |
| <fmt:formatDate value='${shipTime }' pattern='yyyy-MM-dd' /> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">贸易条款:</td> | |
| <td class="tableContent">${tradeTerms }</td> | |
| <td class="columnTitle">交货期限:</td> | |
| <td class="tableContent"> | |
| <fmt:formatDate value='${deliveryPeriod }' pattern='yyyy-MM-dd' /> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">要求:</td> | |
| <td class="tableContent"><pre>${crequest }</pre></td> | |
| <td class="columnTitle">说明:</td> | |
| <td class="tableContent"><pre>${remark }</pre></td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 货物列表 | |
| </div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">厂家</td> | |
| <td class="tableHeader">货号</td> | |
| <td class="tableHeader">装率</td> | |
| <td class="tableHeader">箱数</td> | |
| <td class="tableHeader">包装单位</td> | |
| <td class="tableHeader">数量</td> | |
| <td class="tableHeader">单价</td> | |
| <td class="tableHeader">总金额</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| <c:forEach items="${contractProducts}" var="cp" varStatus="status"> | |
| <tr bgcolor="#c3f3c3" height="30" class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td>${status.index+1}</td> | |
| <td>${cp.factoryName}</td> | |
| <td>${cp.productNo}</td> | |
| <td>${cp.loadingRate}</td> | |
| <td>${cp.boxNum}</td> | |
| <td>${cp.packingUnit}</td> | |
| <td>${cp.cnumber}</td> | |
| <td>${cp.price}</td> | |
| <td>${cp.amount}</td> | |
| </tr> | |
| <c:forEach items="${cp.extCproducts}" var="ext" varStatus="status"> | |
| <tr height="30" class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td align="right"><font color="blue">附件:${status.index+1} </font></td> | |
| <td>${ext.factoryName}</td> | |
| <td>${ext.productNo}</td> | |
| <td> </td> | |
| <td> </td> | |
| <td>${ext.packingUnit}</td> | |
| <td>${ext.cnumber}</td> | |
| <td>${ext.price}</td> | |
| <td>${ext.amount}</td> | |
| </tr> | |
| </c:forEach> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="../../js/datepicker/WdatePicker.js"></script> | |
| <script type="text/javascript"> | |
| //设置厂家名称隐藏域,这样无需再次查询数据库 | |
| function setFactoryName( val ){ | |
| document.getElementById("factoryName").value = val; | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="contractProduct.contract.id" value="${contractProduct.contract.id}"/> | |
| <input type="hidden" name="contractProduct.id" value="${contractProduct.id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('extCproductAction_insert','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 新增附件 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">生产厂家:</td> | |
| <td class="tableContent"> | |
| <s:select name="factory.id" list="factoryList" | |
| onchange="setFactoryName(this.options[this.selectedIndex].text);" | |
| listKey="id" listValue="factoryName" | |
| headerKey="" headerValue="--请选择--"/> | |
| <input type="hidden" id="factoryName" name="factoryName" value=""/> | |
| </td> | |
| <td class="columnTitle">货号:</td> | |
| <td class="tableContentAuto"><input type="text" name="productNo" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">货物照片:</td> | |
| <td class="tableContent"><input type="text" name="productImage" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">数量:</td> | |
| <td class="tableContent"><input type="text" name="cnumber" value=""/></td> | |
| <td class="columnTitle">包装单位:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="packingUnit" value="PCS" class="input">只 | |
| <input type="radio" name="packingUnit" value="SETS" class="input">套 | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">单价:</td> | |
| <td class="tableContent"><input type="text" name="price" value=""/></td> | |
| <td class="columnTitle">排序号:</td> | |
| <td class="tableContent"><input type="text" name="orderNo" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">货物描述:</td> | |
| <td class="tableContent"><textarea name="productDesc" style="height:150px;"></textarea> | |
| <td class="columnTitle">要求:</td> | |
| <td class="tableContent"><textarea name="productRequest" style="height:150px;"></textarea> | |
| </tr> | |
| </table> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 附件列表 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">厂家</td> | |
| <td class="tableHeader">货号</td> | |
| <td class="tableHeader">包装单位</td> | |
| <td class="tableHeader">数量</td> | |
| <td class="tableHeader">单价</td> | |
| <td class="tableHeader">总金额</td> | |
| <td class="tableHeader">操作</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${links } | |
| <c:forEach items="${results}" var="o" varStatus="status"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="id" value="${o.id}"/></td> | |
| <td>${status.index+1}</td> | |
| <td>${o.factoryName}</td> | |
| <td>${o.productNo}</td> | |
| <td>${o.packingUnit}</td> | |
| <td>${o.cnumber}</td> | |
| <td>${o.price}</td> | |
| <td>${o.amount}</td> | |
| <td> | |
| <a href="extCproductAction_toupdate.action?id=${o.id}">[修改]</a> | |
| <a href="extCproductAction_delete.action?id=${o.id}&contractProduct.id=${o.contractProduct.id}&contractProduct.contract.id=${contractProduct.contract.id}">[删除]</a> | |
| </td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <title></title> | |
| <script type="text/javascript" src="../../js/datepicker/WdatePicker.js"></script> | |
| <script type="text/javascript"> | |
| //设置厂家名称隐藏域,这样无需再次查询数据库 | |
| function setFactoryName( val ){ | |
| document.getElementById("factoryName").value = val; | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="text" name="id" value="${id}"/> | |
| <input type="text" name="contractProduct.contract.id" value="${contractProduct.contract.id}"/> | |
| <input type="text" name="contractProduct.id" value="${contractProduct.id}"/> | |
| <input type="hidden" name="amount" value="${amount }"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('extCproductAction_update','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 修改附件 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">生产厂家:</td> | |
| <td class="tableContent"> | |
| <s:select name="factory.id" list="factoryList" | |
| listKey="id" listValue="factoryName" | |
| onchange="setFactoryName(this.options[this.selectedIndex].text);" | |
| headerKey="" headerValue="--请选择--"/> | |
| <input type="hidden" id="factoryName" name="factoryName" value=""/> | |
| </td> | |
| <td class="columnTitle">货号:</td> | |
| <td class="tableContentAuto"><input type="text" name="productNo" value="${productNo}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">货物照片:</td> | |
| <td class="tableContent"><input type="text" name="productImage" value="${productImage}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">数量:</td> | |
| <td class="tableContent"><input type="text" name="cnumber" value="${cnumber}"/></td> | |
| <td class="columnTitle">包装单位:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="packingUnit" value="PCS" <c:if test="${packingUnit=='PCS'}">checked</c:if> class="input">只 | |
| <input type="radio" name="packingUnit" value="SETS" <c:if test="${packingUnit=='SETS'}">checked</c:if> class="input">套 | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">单价:</td> | |
| <td class="tableContent"><input type="text" name="price" value="${price}"/></td> | |
| <td class="columnTitle">排序号:</td> | |
| <td class="tableContent"><input type="text" name="orderNo" value="${orderNo}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">货物描述:</td> | |
| <td class="tableContent"><textarea name="productDesc" style="height:150px;">${productDesc}</textarea> | |
| <td class="columnTitle">要求:</td> | |
| <td class="tableContent"><textarea name="productRequest" style="height:150px;">${productRequest}</textarea> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="view"><a href="#" onclick="formSubmit('${ctx}/cargo/contractAction_toview','_self');this.blur();">查看</a></li> | |
| <li id="print"><a href="#" onclick="formSubmit('${ctx}/cargo/contractAction_print','_self');this.blur();">打印</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('${ctx}/cargo/exportAction_tocreate','_self');this.blur();">报运</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 购销合同列表 | |
| </div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">客户名称</td> | |
| <td class="tableHeader">合同号</td> | |
| <td class="tableHeader">货物数/附件数</td> | |
| <td class="tableHeader">制单人</td> | |
| <td class="tableHeader">审单人</td> | |
| <td class="tableHeader">验货员</td> | |
| <td class="tableHeader">签单日期</td> | |
| <td class="tableHeader">交货期限</td> | |
| <td class="tableHeader">船期</td> | |
| <td class="tableHeader">贸易条款</td> | |
| <td class="tableHeader">总金额</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${links } | |
| <c:forEach items="${results}" var="o" varStatus="status"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="id" value="${o.id}"/></td> | |
| <td>${status.index+1}</td> | |
| <td>${o.customName}</td> | |
| <td> | |
| <a href="contractAction_toview?id=${o.id}">${o.contractNo}</a> | |
| </td> | |
| <td align="center"> | |
| ${o.contractProducts.size()} | |
| / | |
| <c:set var="extNumber" value="0"></c:set><!-- 设置一个变量,用来累加,初始值0 --> | |
| <c:forEach items="${o.contractProducts}" var="cp"> | |
| <c:set var="extNumber" value="${extNumber + cp.extCproducts.size()}"/> | |
| </c:forEach> | |
| ${extNumber} | |
| </td> | |
| <td>${o.inputBy}</td> | |
| <td>${o.checkBy}</td> | |
| <td>${o.inspector}</td> | |
| <td><fmt:formatDate value="${o.signingDate}" pattern="yyyy-MM-dd"/></td> | |
| <td><fmt:formatDate value="${o.deliveryPeriod}" pattern="yyyy-MM-dd"/></td> | |
| <td><fmt:formatDate value="${o.shipTime}" pattern="yyyy-MM-dd"/></td> | |
| <td>${o.tradeTerms}</td> | |
| <td>${o.totalAmount}</td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <!-- 保存的是购销合同的id,用逗号空格进行分隔 --> | |
| <input type="hidden" name="id" value="${id }" /> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('exportAction_insert','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 新增出口报运 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">信用证号</td> | |
| <td class="tableContent"><input type="text" name="lcno" /></td> | |
| <td class="columnTitle">收货人及地址</td> | |
| <td class="tableContent"><input type="text" name="consignee"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">唛头</td> | |
| <td class="tableContent"><input type="text" name="marks"/></td> | |
| <td class="columnTitle">装运港</td> | |
| <td class="tableContent"><input type="text" name="shipmentPort"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">目的港</td> | |
| <td class="tableContent"><input type="text" name="destinationPort"/></td> | |
| <td class="columnTitle">运输方式</td> | |
| <td class="tableContent"><input type="text" name="transportMode" /></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">价格条件</td> | |
| <td class="tableContent"><input type="text" name="priceCondition"/></td> | |
| <td class="columnTitle">备注</td> | |
| <td class="tableContent"><input type="text" name="remark" /></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">总箱数</td> | |
| <td class="tableContent"><input type="text" name="boxNums"/></td> | |
| <td class="columnTitle">总毛重</td> | |
| <td class="tableContent"><input type="text" name="grossWeights"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">体积</td> | |
| <td class="tableContent"><input type="text" name="measurements"/></td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="view"><a href="#" onclick="formSubmit('exportAction_toview','_self');this.blur();">查看</a></li> | |
| <li id="update"><a href="#" onclick="formSubmit('exportAction_toupdate','_self');this.blur();">修改</a></li> | |
| <li id="delete"><a href="#" onclick="formSubmit('exportAction_delete','_self');this.blur();">删除</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('exportAction_submit','_self');this.blur();">提交</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('exportAction_cancel','_self');this.blur();">取消</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 出口报运列表 | |
| </div> | |
| <div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">报运号</td> | |
| <td class="tableHeader">货物数/附件数</td> | |
| <td class="tableHeader">信用证号</td> | |
| <td class="tableHeader">收货人及地址</td> | |
| <td class="tableHeader">装运港</td> | |
| <td class="tableHeader">目的港</td> | |
| <td class="tableHeader">运输方式</td> | |
| <td class="tableHeader">价格条件</td> | |
| <td class="tableHeader">制单日期</td> | |
| <td class="tableHeader">状态</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${links} | |
| <c:forEach items="${results}" var="o" varStatus="status"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="id" value="${o.id}"/></td> | |
| <td>${status.index+1}</td> | |
| <td>${o.id}</td> | |
| <td align="center"> | |
| ${o.exportProducts.size()} | |
| / | |
| <c:set var="extNumber" value="0"></c:set><!-- 设置一个变量,用来累加,初始值0 --> | |
| <c:forEach items="${o.exportProducts}" var="ep"> | |
| <c:if test="${ep.extEproducts.size()!=0 }"> | |
| <c:set var="extNumber" value="${extNumber + ep.extEproducts.size()}"/> | |
| </c:if> | |
| </c:forEach> | |
| ${extNumber} | |
| </td> | |
| <td>${o.lcno}</td> | |
| <td>${o.consignee}</td> | |
| <td>${o.shipmentPort}</td> | |
| <td>${o.destinationPort}</td> | |
| <td>${o.transportMode}</td> | |
| <td>${o.priceCondition}</td> | |
| <td><fmt:formatDate value="${o.inputDate }" pattern="yyyy-MM-dd"/></td> | |
| <td>${o.state==0?"草稿":"已上报"}</td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx}/components/jquery-ui/jquery-1.2.6.js"></script> | |
| <script type="text/javascript" src="${ctx}/js/tabledo.js"></script> | |
| <script type="text/javascript" src="${ctx}/js/datepicker/WdatePicker.js"></script> | |
| <script language="JavaScript"> | |
| $().ready(function(){ | |
| ${mRecordData} | |
| //发送ajax请求-------------返回json------------后面就去组织数据(调用函数) | |
| //当进入更新页面时-----------直接获取服务器返回的串 | |
| }); | |
| /* 实现表格序号列自动调整 created by wyj 20081219 */ | |
| function sortnoTR(){ | |
| sortno('mRecordTable', 2, 1); | |
| } | |
| function addTRRecord(objId, id, productNo, cnumber, grossWeight, netWeight, sizeLength, sizeWidth, sizeHeight, exPrice, tax) { | |
| var _tmpSelect = ""; | |
| var tableObj = document.getElementById(objId); | |
| var rowLength = tableObj.rows.length; | |
| oTR = tableObj.insertRow(); | |
| oTD = oTR.insertCell(0); | |
| oTD.style.whiteSpace="nowrap"; | |
| oTD.ondragover = function(){this.className="drag_over" }; //动态加事件, 改变样式类 | |
| oTD.ondragleave = function(){this.className="drag_leave" }; | |
| oTD.onmousedown = function(){ clearTRstyle("result"); this.parentNode.style.background = '#0099cc';}; | |
| //this.style.background="#0099cc url(../images/arroww.gif) 4px 9px no-repeat"; | |
| oTD.innerHTML = " "; | |
| oTD = oTR.insertCell(1); | |
| oTD.innerHTML = "<input class=\"input\" type=\"checkbox\" name=\"del\" value=\""+id+"\"><input type=\"hidden\" name=\"mr_id\" value=\""+id+"\"><input class=\"input\" type=\"hidden\" id=\"mr_changed\" name=\"mr_changed\">"; | |
| oTD = oTR.insertCell(2); | |
| oTD.innerHTML = "<input class=\"input\" type=\"text\" name=\"mr_orderNo\" readonly size=\"3\" value=\"\">"; | |
| oTD = oTR.insertCell(3); | |
| oTD.innerHTML = "<b><font face='微软雅黑'><font color='blue'>"+productNo;+"</font></font></b> " | |
| oTD = oTR.insertCell(4); | |
| oTD.innerHTML = "<input type=\"text\" name=\"mr_cnumber\" maxLength=\"10\" value=\""+cnumber+"\" onBlur=\"setTRUpdateFlag(this);\" size=\"15\">"; | |
| oTD = oTR.insertCell(5); | |
| oTD.innerHTML = "<input type=\"text\" name=\"mr_grossWeight\" maxLength=\"10\" value=\""+grossWeight+"\" onBlur=\"setTRUpdateFlag(this);\" size=\"15\">"; | |
| oTD = oTR.insertCell(6); | |
| oTD.innerHTML = "<input type=\"text\" name=\"mr_netWeight\" maxLength=\"10\" value=\""+netWeight+"\" onBlur=\"setTRUpdateFlag(this);\" size=\"15\">"; | |
| oTD = oTR.insertCell(7); | |
| oTD.innerHTML = "<input type=\"text\" name=\"mr_sizeLength\" maxLength=\"10\" value=\""+sizeLength+"\" onBlur=\"setTRUpdateFlag(this);\" size=\"15\">"; | |
| oTD = oTR.insertCell(8); | |
| oTD.innerHTML = "<input type=\"text\" name=\"mr_sizeWidth\" maxLength=\"10\" value=\""+sizeWidth+"\" onBlur=\"setTRUpdateFlag(this);\" size=\"15\">"; | |
| oTD = oTR.insertCell(9); | |
| oTD.innerHTML = "<input type=\"text\" name=\"mr_sizeHeight\" maxLength=\"10\" value=\""+sizeHeight+"\" onBlur=\"setTRUpdateFlag(this);\" size=\"15\">"; | |
| oTD = oTR.insertCell(10); | |
| oTD.innerHTML = "<input type=\"text\" name=\"mr_exPrice\" maxLength=\"10\" value=\""+exPrice+"\" onBlur=\"setTRUpdateFlag(this);\" size=\"15\">"; | |
| oTD = oTR.insertCell(11); | |
| oTD.innerHTML = "<input type=\"text\" name=\"mr_tax\" maxLength=\"10\" value=\""+tax+"\" onBlur=\"setTRUpdateFlag(this);\" size=\"15\">"; | |
| dragtableinit(); //拖动表格行 | |
| sortnoTR(); //排序号 | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('exportAction_update','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 修改出口报运 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">报运号:</td> | |
| <td class="tableContent">${customerContract}</td> | |
| <td class="columnTitle">制单日期:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="inputDate" | |
| value="<fmt:formatDate value="${inputDate}" pattern="yyyy-MM-dd"/>" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">信用证号</td> | |
| <td class="tableContent"><input type="text" name="lcno" value="${lcno}"/></td> | |
| <td class="columnTitle">收货人及地址:</td> | |
| <td class="tableContent"><input type="text" name="consignee" value="${consignee}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">装运港:</td> | |
| <td class="tableContent"><input type="text" name="shipmentPort" value="${shipmentPort}"/></td> | |
| <td class="columnTitle">目的港:</td> | |
| <td class="tableContent"><input type="text" name="destinationPort" value="${destinationPort}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">运输方式:</td> | |
| <td class="tableContent"><input type="text" name="transportMode" value="${transportMode}"/></td> | |
| <td class="columnTitle">价格条件:</td> | |
| <td class="tableContent"><input type="text" name="priceCondition" value="${priceCondition}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">唛头:</td> | |
| <td class="tableContent"><textarea name="marks" style="height:120px;">${marks}</textarea></td> | |
| <td class="columnTitle">备注:</td> | |
| <td class="tableContent"><textarea name="remark" style="height:120px;">${remark}</textarea></td> | |
| </tr> | |
| </table> | |
| </div> | |
| <div class="listTablew"> | |
| <table class="commonTable_main" cellSpacing="1" id="mRecordTable"> | |
| <tr class="rowTitle" align="middle"> | |
| <td width="25" title="可以拖动下面行首,实现记录的位置移动."> | |
| <img src="${ctx }/images/drag.gif"> | |
| </td> | |
| <td width="20"> | |
| <input class="input" type="checkbox" name="ck_del" onclick="checkGroupBox(this);" /> | |
| </td> | |
| <td width="33">序号</td> | |
| <td>货号</td> | |
| <td>数量</td> | |
| <td>毛重</td> | |
| <td>净重</td> | |
| <td>长</td> | |
| <td>宽</td> | |
| <td>高</td> | |
| <td>出口单价</td> | |
| <td>含税</td> | |
| </tr> | |
| </table> | |
| </div> | |
| </div> | |
| <div class="textbox-bottom"> | |
| <div class="textbox-inner-bottom"> | |
| <div class="textbox-go-top"> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx }/js/datepicker/WdatePicker.js"></script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 浏览出口报运 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">报运号:</td> | |
| <td class="tableContent">${customerContract}</td> | |
| <td class="columnTitle">制单日期:</td> | |
| <td class="tableContent">${inputDate}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">信用证号</td> | |
| <td class="tableContent">${lcno}</td> | |
| <td class="columnTitle">收货人及地址:</td> | |
| <td class="tableContent">${consignee}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">装运港:</td> | |
| <td class="tableContent">${shipmentPort}</td> | |
| <td class="columnTitle">目的港:</td> | |
| <td class="tableContent">${destinationPort}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">运输方式:</td> | |
| <td class="tableContent">${transportMode}</td> | |
| <td class="columnTitle">价格条件:</td> | |
| <td class="tableContent">${priceCondition}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">唛头:</td> | |
| <td class="tableContent"><pre>${marks}</pre></td> | |
| <td class="columnTitle">备注:</td> | |
| <td class="tableContent"><pre>${remark}</pre></td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../baselist.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/left.css" media="all"/> | |
| </head> | |
| <body id="left_frame"> | |
| <div class="PositionFrame_black" id="PositionFrame"></div> | |
| <!-- begin1 --> | |
| <div id="sidebar" class="sidebar"> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_t_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_t_r"></div> | |
| </div> | |
| <div class="panel"> | |
| <div class="panel_icon"><img src="${ctx}/skin/default/images/icon/components.png"/></div> | |
| <div class="panel-header"> | |
| <div class="panel-title">货运管理</div> | |
| <div class="panel-content"> | |
| <%-- <ul> | |
| <li><a href="${ctx}/cargo/contractAction_list" onclick="linkHighlighted(this)" target="main" id="aa_1">购销合同</a></li> | |
| <li><a href="${ctx}/cargo/outProductAction_toedit" onclick="linkHighlighted(this)" target="main" id="aa_1">出货表</a></li> | |
| <li><a href="${ctx}/cargo/export/exportAction_contractList" onclick="linkHighlighted(this)" target="main" id="aa_1">合同查询</a></li> | |
| <li><a href="${ctx}/cargo/export/exportAction_list.action" onclick="linkHighlighted(this)" target="main" id="aa_1">出口报运</a></li> | |
| </ul> --%> | |
| <%@include file="../leftmenu.jsp" %> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_b_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_b_r"></div> | |
| </div> | |
| </div> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../base.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title>模块介绍</title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/main.css" media="all"/> | |
| </head> | |
| <body> | |
| <form> | |
| <div class="textbox"></div> | |
| <div class="modelDiv"> | |
| <table class="modelTable" cellspacing="1"> | |
| <tr> | |
| <td colspan="2" class="modelTitle">货运模块介绍</td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle">购销合同</td> | |
| <td class="model_intro_right">客户签单后,公司向厂家下达购销合同,包括货物的具体要求和交期。合同按不同厂家打印购销合同单,附件单独打印,由公司驻当地销售人员分发到各工厂。<br> | |
| 归档:标识彻底完成的项目,方便统计。在报运时也不能在选这些合同。<br> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle">出货表</td> | |
| <td class="model_intro_right">根据合同和指定的船期月份,统计当月的出货情况。<br></td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle">出口报运单</td> | |
| <td class="model_intro_right">根据购销合同制定出口商品报运单。报运时可以将多个购销合同形成一单报运;也可以只走部分货物。<br> | |
| 分批走货:合同可以多个一起报运; 而一个合同可以分多次走货; 根据合同和合同货物的走货状态可以查看合同的走货情况。 | |
| <!-- 修改走货状态:1)合同新增货物、修改货物 2)报运货物修改、删除货物、增补货物、删除报运 --> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle">HOME装箱单</td> | |
| <td class="model_intro_right">根据出口报运单制定HOME装箱单,先制作HOME装箱单给客户看,客人同意,则直接制定相应装箱单;如有调整,则重新复制修改出口报运单,可能拆成多个报运。<br></td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle">装箱单</td> | |
| <td class="model_intro_right">根据出口报运单制定装箱单,填写发票号、发票时间,以及客人等相关信息。<br></td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle">委托书</td> | |
| <td class="model_intro_right">根据装箱制定海运或空运委托书。<br></td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle">发票</td> | |
| <td class="model_intro_right">根据装箱制定发票。<br></td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle" nowrap>财务出口报运单</td> | |
| <td class="model_intro_right">根据报运制定财务出口报运单。<br></td> | |
| </tr> | |
| <tfoot> | |
| <tr> | |
| <td colspan="2" class="tableFooter"></td> | |
| </tr> | |
| </tfoot> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx }/js/datepicker/WdatePicker.js"></script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('outProductAction_print','_self');this.blur();">打印</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/folder_edit.png"/> | |
| 购销合同月统计(出货表) | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">船期:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="inputDate" | |
| value="2015-07" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM'});"/> | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx }/js/datepicker/WdatePicker.js""></script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('packingListAction_insert','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 新增装箱单 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">卖方:</td> | |
| <td class="tableContent"><input type="text" name="seller" value=""/></td> | |
| <td class="columnTitle">买方:</td> | |
| <td class="tableContent"><input type="text" name="buyer" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">发票号:</td> | |
| <td class="tableContent"><input type="text" name="invoiceNo" value=""/></td> | |
| <td class="columnTitle">发票日期:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="invoiceDate" | |
| value="" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">唛头:</td> | |
| <td class="tableContent"><input type="text" name="marks" value=""/></td> | |
| <td class="columnTitle">描述:</td> | |
| <td class="tableContent"><input type="text" name="descriptions" value=""/></td> | |
| </tr> | |
| </table> | |
| </div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">报运号</td> | |
| <td class="tableHeader">货物数/附件数</td> | |
| <td class="tableHeader">信用证号</td> | |
| <td class="tableHeader">收货人及地址</td> | |
| <td class="tableHeader">装运港</td> | |
| <td class="tableHeader">目的港</td> | |
| <td class="tableHeader">运输方式</td> | |
| <td class="tableHeader">价格条件</td> | |
| <td class="tableHeader">制单日期</td> | |
| <td class="tableHeader">状态</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${links} | |
| <c:forEach items="${results}" var="o" varStatus="status"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="exportIds" value="${o.id}"/></td> | |
| <td>${status.index+1}</td> | |
| <td>${o.id}</td> | |
| <td align="center"> | |
| ${o.exportProducts.size()} | |
| / | |
| <c:set var="extNumber" value="0"></c:set><!-- 设置一个变量,用来累加,初始值0 --> | |
| <c:forEach items="${o.exportProducts}" var="ep"> | |
| <c:if test="${ep.extEproducts.size()!=0 }"> | |
| <c:set var="extNumber" value="${extNumber + ep.extEproducts.size()}"/> | |
| </c:if> | |
| </c:forEach> | |
| ${extNumber} | |
| </td> | |
| <td>${o.lcno}</td> | |
| <td>${o.consignee}</td> | |
| <td>${o.shipmentPort}</td> | |
| <td>${o.destinationPort}</td> | |
| <td>${o.transportMode}</td> | |
| <td>${o.priceCondition}</td> | |
| <td><fmt:formatDate value="${o.inputDate }" pattern="yyyy-MM-dd"/></td> | |
| <td>${o.state==0?"草稿":"已上报"}</td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="view"><a href="#" onclick="formSubmit('packingListAction_toview','_self');this.blur();">查看</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('packingListAction_tocreate','_self');this.blur();">新增</a></li> | |
| <li id="update"><a href="#" onclick="formSubmit('packingListAction_toupdate','_self');this.blur();">修改</a></li> | |
| <li id="delete"><a href="#" onclick="formSubmit('packingListAction_delete','_self');this.blur();">删除</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 装箱单列表 | |
| </div> | |
| <div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">卖方</td> | |
| <td class="tableHeader">买方</td> | |
| <td class="tableHeader">发票号</td> | |
| <td class="tableHeader">发票日期</td> | |
| <td class="tableHeader">状态</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${page.links} | |
| <c:forEach items="${page.results}" var="o" varStatus="status"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="id" value="${o.id}"/></td> | |
| <td>${status.index+1}</td> | |
| <td>${o.seller}</td> | |
| <td>${o.buyer}</td> | |
| <td>${o.invoiceNo}</td> | |
| <td>${o.invoiceDate}</td> | |
| <td> | |
| <c:if test="${o.state==0}">草稿</c:if> | |
| <c:if test="${o.state==1}"><b><font color="green">已上报</font></b></c:if> | |
| </td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx }/js/datepicker/WdatePicker.js""></script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('packingListAction_update','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 修改装箱单 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">卖方:</td> | |
| <td class="tableContent"><input type="text" name="seller" value="${seller}"/></td> | |
| <td class="columnTitle">买方:</td> | |
| <td class="tableContent"><input type="text" name="buyer" value="${buyer}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">发票号:</td> | |
| <td class="tableContent"><input type="text" name="invoiceNo" value="${invoiceNo}"/></td> | |
| <td class="columnTitle">发票日期:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="invoiceDate" | |
| value="${invoiceDate}" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">唛头:</td> | |
| <td class="tableContent"><input type="text" name="marks" value="${marks}"/></td> | |
| <td class="columnTitle">描述:</td> | |
| <td class="tableContent"><input type="text" name="descriptions" value="${descriptions}"/></td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 浏览装箱单 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">卖方:</td> | |
| <td class="tableContent">${seller}</td> | |
| <td class="columnTitle">买方:</td> | |
| <td class="tableContent">${buyer}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">发票号:</td> | |
| <td class="tableContent">${invoiceNo}</td> | |
| <td class="columnTitle">发票日期:</td> | |
| <td class="tableContent">${invoiceDate}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">唛头:</td> | |
| <td class="tableContent">${marks}</td> | |
| <td class="columnTitle">描述:</td> | |
| <td class="tableContent">${descriptions}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">状态:</td> | |
| <td class="tableContent"> | |
| <c:if test="${state==0}">草稿</c:if> | |
| <c:if test="${state==1}"><b><font color="green">已上报</font></b></c:if> | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page contentType="text/html;charset=UTF-8" isErrorPage="true" %> | |
| <%@taglib prefix="s" uri="/struts-tags"%> | |
| <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> | |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
| <html> | |
| <head> | |
| <title>Error Page</title> | |
| <script language="javascript"> | |
| function showDetail() | |
| { | |
| var elm = document.getElementById('detail_system_error_msg'); | |
| if(elm.style.display == '') { | |
| elm.style.display = 'none'; | |
| }else { | |
| elm.style.display = ''; | |
| } | |
| } | |
| </script> | |
| </head> | |
| <body style="font-family:微软雅黑;"> | |
| <div id="content" style="text-align:left;"> | |
| <table> | |
| <tr> | |
| <td><img alt="system internal error" src="${pageContext.request.contextPath }/images/error01.jpg"/></td> | |
| <br> | |
| <b>错误信息:</b> | |
| <div style="color:blue;padding:15px;"> | |
| <s:property value="exception.message"/> | |
| </div> | |
| <button onclick="history.back();">返回</button> | |
| <p><a href="#" onclick="showDetail();">点击这里查看具体错误消息</a>, | |
| <br/> | |
| 报告以下错误消息给系统管理员,可以更加快速的解决问题; | |
| <br/>联系电话:120 | |
| </p> | |
| </td> | |
| </tr> | |
| </table> | |
| <div id="detail_system_error_msg" style="display:none;text-align:left;padding-bottom:100px;"> | |
| <pre><s:property value="exceptionStack"/></pre> | |
| </div> | |
| </div> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <html> | |
| <head> | |
| <title>陕西杰信商务综合管理平台</title> | |
| </head> | |
| <frameset rows="125,*" name="topFrameset" border="0"> | |
| <frame name="top_frame" scrolling="no" target="middleFrameSet" src="homeAction_title"> | |
| <frameset cols="202,*" height="100%" name="middle" frameborder="no" border="0" framespacing="0"> | |
| <frame name="leftFrame" class="leftFrame" target="main" scrolling="no" src="homeAction_toleft.action?moduleName=home" /> | |
| <frame name="main" class="rightFrame" src="homeAction_tomain.action?moduleName=home" /> | |
| </frameset> | |
| </frameset> | |
| <noframes> | |
| <body> | |
| <p>此网页使用了框架,但您的浏览器不支持框架。</p> | |
| </body> | |
| </noframes> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../base.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/left.css" media="all"/> | |
| <script language="javascript" src="${ctx}/js/common.js"></script> | |
| <script language="javascript" src="${ctx}/js/ajax/setFastMenu.js"></script> | |
| <script language="javascript" src="${ctx}/js/pngfix_map.js"></script> | |
| <script type="text/javascript" src="${ctx}/components/jquery-ui/jquery-1.2.6.js"></script> | |
| <script type="text/javascript" src="${ctx}/skin/default/js/toggle.js"></script> | |
| <script language="javascript"> | |
| $().ready(function(){ | |
| $(fastMenu).hide(); | |
| //document.getElementById('aa_3').click(); //默认打开我的留言板页面 | |
| }); | |
| function showMenu( who ){ | |
| if(who=="fastMenu"){ | |
| $(fastMenu).show(); | |
| $(customerMenu).hide(); | |
| }else if(who=="customerMenu"){ | |
| $(customerMenu).show(); | |
| $(fastMenu).hide(); | |
| } | |
| } | |
| </script> | |
| </head> | |
| <body id="left_frame"> | |
| <div class="PositionFrame_black" id="PositionFrame"></div> | |
| <div id="sidebar" class="sidebar"> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_t_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_t_r"></div> | |
| </div> | |
| <div class="panel"> | |
| <div class="panel_icon"><img src="${ctx}/skin/default/images/icon/user2.png" /></div> | |
| <div class="panel-header"> | |
| <div class="panel-title">个人工作台</div> | |
| <div class="panel-content"> | |
| <ul> | |
| <li><a href="${ctx}/tomain.action?modelName=home" target="main" id="aa_3" onclick="linkHighlighted(this)">我的留言板</a></li> | |
| <li><a href="${ctx}/home/workflow/tasklist.action" target="main" id="aa_2" onclick="linkHighlighted(this)">我的代办任务</a></li> | |
| <li><a href="${ctx}/baseinfo/leavebill/list.action" target="main" id="aa_1" onclick="linkHighlighted(this)">意见反馈</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_b_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_b_r"></div> | |
| </div> | |
| </div> | |
| <div id="sidebar" class="sidebar"> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_t_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_t_r"></div> | |
| </div> | |
| <div class="panel"> | |
| <div class="panel_icon"><img src="${ctx}/skin/default/images/icon/cubes.png" /></div> | |
| <div class="panel-header"> | |
| <div class="panel-title">我的常用功能</div> | |
| <div style="margin-top:5px;"></div> | |
| <!-- 以上为永久固定栏目,以下为活动栏目 --> | |
| <div style="border-bottom:1px dotted #cee1df;"> | |
| 切换:<a href="#" onmousemove="javascript:showMenu('fastMenu');">快捷菜单</a> | |
| / | |
| <a href="#" onmousemove="javascript:showMenu('customerMenu');">自定义菜单</a> | |
| </div> | |
| <div id="fastMenu"> | |
| <div class="panel-content"></div><a href="#" class="DelFastMenu"><font color="gray">清除常用功能列表</font></a> | |
| </div> | |
| <div id="customerMenu"> | |
| <div class="FastMenu"><img src="${ctx}/skin/default/images/notice.gif" style="margin-right:5px;" border="0" /><font color="gray">您还没定义您的菜单</font></div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_b_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_b_r"></div> | |
| </div> | |
| </div> | |
| <!-- begin1 --> | |
| <div id="sidebar" class="sidebar"> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_t_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_t_r"></div> | |
| </div> | |
| <div class="panel"> | |
| <div class="panel_icon"><img src="${ctx}/skin/default/images/icon/businessman2.png" /></div> | |
| <div class="panel-header"> | |
| <div class="panel-title"> | |
| 用户设定 | |
| </div> | |
| <div class="panel-content"> | |
| <ul> | |
| <li><a href="#" id="aa_2" onclick="linkHighlighted(this)">个人信息修改</a></li> | |
| <li><a href="#" id="aa_2" onclick="linkHighlighted(this)">系统使用反馈</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_b_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_b_r"></div> | |
| </div> | |
| </div> | |
| <!-- end1 --> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../base.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <html> | |
| <head> | |
| <title></title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/default.css" media="all"/> | |
| <script type="text/javascript" src="/components/jquery-ui/jquery-1.2.6.js"></script> | |
| <script language="javascript" src="${ctx}/js/common.js"></script> | |
| <style> | |
| .curbody{ CURSOR: url(${ctx}/images/olmsg/shubiao.ani);background:url(${ctx}/images/olmsg/pic738x571.jpg); } | |
| .msgcontent{ width:218px;overflow:hidden;word-break:break-all;padding:10px;font-size:14px;color:#339966;font-family:Tahoma;line-height:180%; } | |
| .msgcontent p{ text-indent:0px;} | |
| .msgcontent ul( margin:0px;} | |
| .msgbackcontent{ width:218px;overflow:hidden;word-break:break-all;padding:10px;font-size:14px;color:#339966;font-family:Tahoma;line-height:180%; } | |
| .msgbackcontent p{ text-indent:0px;} | |
| .msgbackcontent ul( margin:0px;} | |
| li{ text-indent:0px;margin:0px;list-style:default; } | |
| </style> | |
| </head> | |
| <script language="javascript"> | |
| if(top.location!=main.location){ | |
| top.location = main.location; | |
| } | |
| //-- 控制层移动start of script --> | |
| var Obj=''; | |
| var index=10000;//z-index; | |
| var color=''; | |
| var str=''; | |
| document.onmouseup=MUp | |
| document.onmousemove=MMove | |
| function MMove(){ | |
| if(Obj!=''){ | |
| document.all(Obj).style.left=event.x-pX; | |
| document.all(Obj).style.top=event.y-pY; | |
| } | |
| } | |
| function MUp(){ | |
| if(Obj!=''){ | |
| document.all(Obj).releaseCapture(); | |
| Obj=''; | |
| } | |
| var srcEle = event.srcElement; | |
| var children = srcEle.children; | |
| if(children.length>0){ | |
| children[1].value = "1"; //isChange | |
| children[2].value = event.x-pX; | |
| children[3].value = event.y-pY; | |
| } | |
| } | |
| function MDown(objtd,id){ | |
| Obj=id | |
| document.all(Obj).setCapture() | |
| pX = event.x-document.all(Obj).style.pixelLeft; | |
| pY = event.y-document.all(Obj).style.pixelTop; | |
| } | |
| //-- 控制层移动end of script --> | |
| //获得焦点; | |
| function getFocus(obj) | |
| { | |
| if(obj.style.zIndex!=index) | |
| { | |
| index = index + 2; | |
| var idx = index; | |
| obj.style.zIndex=idx; | |
| //obj.nextSibling.style.zIndex=idx-1; | |
| } | |
| } | |
| //针对未已阅的、未回复的、工作任务 | |
| function msgrevoke( id ){ | |
| if(confirm("是否确定要撤销此条信息?")){ | |
| //_Submit("/home/olmsgRevokeAction.do?flag=revoke&id="+id,null,"撤销"); | |
| } | |
| } | |
| //需回复的留言 | |
| function msgback( id ){ | |
| //_Submit("/home/olmsgUpdateAction.do?flag=back&id="+id,null,"回复"); | |
| } | |
| function msgupdate( id , flag ){ | |
| if(flag=="read"){ | |
| if(!confirm("是否确定已阅此条信息?")){ | |
| return false; | |
| } | |
| }else if(flag=="accept"){ | |
| if(!confirm("是否确定接受此任务?")){ | |
| return false; | |
| } | |
| }else if(flag=="fail"){ | |
| if(!confirm("是否确定此任务未完成?")){ | |
| return false; | |
| } | |
| }else if(flag=="success"){ | |
| if(!confirm("是否确定此任务已完成?")){ | |
| return false; | |
| } | |
| }else if(flag=="finished"){ | |
| if(!confirm("是否确定完成?")){ | |
| return false; | |
| } | |
| } | |
| //_Submit("/home/olmsgUpdateAction.do?flag="+flag+"&id="+id,null,"修改"); | |
| } | |
| function msgdel( id ){ | |
| if(confirm("是否确定要删除此条信息?")){ | |
| //_Submit("/home/olmsgDeleteAction.do?delId="+id,null,"删除"); | |
| } | |
| } | |
| function msgstate( id , flag ){ | |
| if(flag=="read"){ | |
| if(!confirm("是否确定已阅此条信息?")){ | |
| return false; | |
| } | |
| }else if(flag=="accept"){ | |
| if(!confirm("是否确定接受此任务?")){ | |
| return false; | |
| } | |
| }else if(flag=="fail"){ | |
| if(!confirm("是否确定此任务未完成?")){ | |
| return false; | |
| } | |
| }else if(flag=="success"){ | |
| if(!confirm("是否确定此任务已完成?")){ | |
| return false; | |
| } | |
| }else if(flag=="finished"){ | |
| if(!confirm("是否确定完成?")){ | |
| return false; | |
| } | |
| } | |
| //_Submit("/home/olmsgStateAction.do?flag="+flag+"&delId="+id,null,"已阅"); | |
| } | |
| function changRowColor(obj){ | |
| //obj.removeAttribute("className"); | |
| //alert(obj.className); | |
| //obj.setAttribute("bgcolor","#FFECB0"); | |
| //obj.sytle.backgroundColor = "#FFECB0"; | |
| } | |
| function removeOverRowColor(obj){ | |
| //alert(obj.getAttribute("style")); | |
| } | |
| function killErrors() { | |
| return true; | |
| } | |
| window.onerror = killErrors; | |
| </script> | |
| <body class="curbody"> | |
| <form name="form2"> | |
| <!-- 工具栏部分 ToolBar --> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="new"><a href="#">新建</a></li> | |
| <li id="save"><a href="#" title="保存留言窗口的位置信息">位置</a></li> | |
| <li id="stat"><a href="#">历史</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <logic:notEmpty name="olmsgList"> | |
| <div id='ff8080813d00613e013d0067909e0009' style='position:absolute;left:122px;top:97px;z-index:1001; height:164px;background:none;' onmousedown='getFocus(this)'> | |
| <table border=0 cellspacing="0" cellpadding="0" width="220"> | |
| <tr> | |
| <td style='cursor:move;' onmousedown="MDown(this,'ff8080813d00613e013d0067909e0009')" background="${ctx}/images/olmsg/C0FFE51.gif" height="45"> | |
| <input type="hidden" name="id" class="input" value="ff8080813d00613e013d0067909e0009" /> | |
| <input type="hidden" name="isChange" class="input" value="0" /> | |
| <input type="hidden" name="posX" class="input" value="122" /> | |
| <input type="hidden" name="posY" class="input" value="97" /> | |
| | |
| </td> | |
| </tr> | |
| <tr> | |
| <td style='cursor:move;white-space:nowrap;' width='100%' onmousedown="MDown('ff8080813d00613e013d0067909e0009')" background="${ctx}/images/olmsg/C0FFE52.gif" > | |
| <div style="float:left;width:130px;padding-left:7px;font-family:Tahoma;color:gray;font-style : oblique;"> | |
| 2013-02-22 13:37 | |
| </div> | |
| <div style="float:right;width:80px;text-align:right;padding-right:7px;"> | |
| <a style='cursor:pointer;' title="编辑" onclick="msgupdate('ff8080813d00613e013d0067909e0009','edit')"><img src="${ctx}/images/olmsg/doc_edit.gif"/></a> | |
| <a style='cursor:pointer;' title="删除" onclick="msgdel('ff8080813d00613e013d0067909e0009')"><img src="${ctx}/images/olmsg/doc_del.gif"/></a> | |
| </div> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td background="${ctx}/images/olmsg/C0FFE52.gif"> | |
| <div class="msgcontent"> | |
| 欢迎使用杰管理平台 | |
| </div> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td id="tagBPic" background="${ctx}/images/olmsg/C0FFE53.gif" height="63"> | |
| <table border="0" width="100%" cellspacing="0" cellpadding="0"> | |
| <tr> | |
| <td width="50" align="center"> | |
| <img border="0" src="${ctx}/images/olmsg/2.gif"> | |
| </td> | |
| <td style="text-align:right;padding-right:8px;" nowrap> | |
| [备忘] | |
| <!-- [回复] --> | |
| <!-- [回执] --> | |
| <!-- [撤销原因] --> | |
| <!-- state==99[完成] --> | |
| </td> | |
| </tr> | |
| </table> | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| <div id='ff8080813d00613e013d00681494000a' style='position:absolute;left:442px;top:91px;z-index:1002; height:164px;background:none;' onmousedown='getFocus(this)'> | |
| <table border=0 cellspacing="0" cellpadding="0" width="220"> | |
| <tr> | |
| <td style='cursor:move;' onmousedown="MDown(this,'ff8080813d00613e013d00681494000a')" background="${ctx}/images/olmsg/FFE7E81.gif" height="45"> | |
| <input type="hidden" name="id" class="input" value="ff8080813d00613e013d00681494000a" /> | |
| <input type="hidden" name="isChange" class="input" value="0" /> | |
| <input type="hidden" name="posX" class="input" value="442" /> | |
| <input type="hidden" name="posY" class="input" value="91" /> | |
| | |
| </td> | |
| </tr> | |
| <tr> | |
| <td style='cursor:move;white-space:nowrap;' width='100%' onmousedown="MDown('ff8080813d00613e013d00681494000a')" background="${ctx}/images/olmsg/FFE7E82.gif" > | |
| <div style="float:left;width:130px;padding-left:7px;font-family:Tahoma;color:gray;font-style : oblique;"> | |
| 2013-02-22 13:37 | |
| </div> | |
| <div style="float:right;width:80px;text-align:right;padding-right:7px;"> | |
| <a style='cursor:pointer;' title="编辑" onclick="msgupdate('ff8080813d00613e013d00681494000a','edit')"><img src="${ctx}/images/olmsg/doc_edit.gif"/></a> | |
| <a style='cursor:pointer;' title="删除" onclick="msgdel('ff8080813d00613e013d00681494000a')"><img src="${ctx}/images/olmsg/doc_del.gif"/></a> | |
| </div> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td background="${ctx}/images/olmsg/FFE7E82.gif"> | |
| <div class="msgcontent"> | |
| 本系统实现货运企业日常管理<br /> | |
| 包括合同、报运、装箱、委托、发票等业务 | |
| </div> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td id="tagBPic" background="${ctx}/images/olmsg/FFE7E83.gif" height="63"> | |
| <table border="0" width="100%" cellspacing="0" cellpadding="0"> | |
| <tr> | |
| <td width="50" align="center"> | |
| <img border="0" src="${ctx}/images/olmsg/0.gif"> | |
| </td> | |
| <td style="text-align:right;padding-right:8px;" nowrap> | |
| [备忘] | |
| <!-- [回复] --> | |
| <!-- [回执] --> | |
| <!-- [撤销原因] --> | |
| <!-- state==99[完成] --> | |
| </td> | |
| </tr> | |
| </table> | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </logic:notEmpty> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" isELIgnored="false" pageEncoding="UTF-8"%> | |
| <%@ include file="../base.jsp" %> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%> | |
| <%@ taglib uri="http://shiro.apache.org/tags" prefix="shiro" %> | |
| <jsp:useBean id="now" class="java.util.Date" /> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <!-- 调用样式表 --> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/default.css" media="all"/> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/title.css" media="all"/> | |
| <script type="text/javascript" src="${ctx}/components/jquery-ui/jquery-1.2.6.js"></script> | |
| <script language="javascript" src="${ctx}/js/pngfix_map.js"></script> | |
| <script language="javascript" src="${ctx}/js/common.js"></script> | |
| <!-- 调用外部 JavaScript 脚本语言 --> | |
| <script language="javascript"> | |
| function CustomTitle(){ | |
| var Me = document.getElementById('memos'); | |
| var Loin = document.getElementById('logins'); | |
| var Lout = document.getElementById('logout'); | |
| Me.onmouseover = function(){document.getElementById('memo').style.background='url(${ctx}/skin/default/images/title/memo2.gif) no-repeat'}; | |
| Me.onmouseout = function(){document.getElementById('memo').style.background='url(${ctx}/skin/default/images/title/memo.gif) no-repeat'}; | |
| Loin.onmouseover = function(){document.getElementById('small_login').style.background='url(${ctx}/skin/default/images/title/small_login2.gif) no-repeat'}; | |
| Loin.onmouseout = function(){document.getElementById('small_login').style.background='url(${ctx}/skin/default/images/title/small_login.gif) no-repeat'}; | |
| Lout.onmouseover = function(){document.getElementById('small_login_out').style.background='url(${ctx}/skin/default/images/title/login_out2.gif) no-repeat left -55px;'}; | |
| Lout.onmouseout = function(){document.getElementById('small_login_out').style.background='url(${ctx}/skin/default/images/title/login_out.gif) no-repeat'}; | |
| } | |
| function linkHighlightMenu(obj){ | |
| var links=document.getElementsByTagName('span'); | |
| for(var i=0;i<links.length;i++){ | |
| if(links[i].id.indexOf('topmenu')!=-1){ | |
| links[i].style.background = 'url("${ctx}/skin/default/images/title/li_dot.gif1") no-repeat right 8px'; | |
| links[i].style.color = ''; | |
| links[i].style.fontWeight = ''; | |
| links[i].style.borderTop = ''; | |
| links[i].style.borderLeft = ''; | |
| links[i].style.borderRight = ''; | |
| links[i].style.padding = ''; | |
| } | |
| } | |
| obj.style.background ='url("${ctx}/skin/default/images/title/button_bg.jpg") no-repeat'; | |
| obj.style.color = "#fff"; | |
| obj.style.fontWeight = 'bold'; | |
| obj.style.padding= '6px 11x 5px 13px;'; | |
| obj.blur(); //去掉图片的焦点框,使界面看起来漂亮 updated by tony | |
| } | |
| //sendRequest('000001'); | |
| var y = -5; //个人信息栏初始Y坐标 | |
| var dy = -40; //显示后Y坐标 | |
| function doLoginDiv(){ | |
| ShowLoginDiv(); | |
| } | |
| function HideLoginDiv(){ | |
| dy = dy - 5; | |
| MoveHideLoginDiv(); | |
| } | |
| function MoveHideLoginDiv(){ | |
| if( dy > -40){setTimeout("HideLoginDiv()",10);}else{ y = -40; dy = -40;} | |
| document.getElementById("userInfo").style.top = dy; | |
| } | |
| function ShowLoginDiv(){ | |
| y = y + 5; | |
| MoveShowLoginDiv(); | |
| } | |
| function MoveShowLoginDiv(){ | |
| if( y < -5){setTimeout("ShowLoginDiv()",10);}else{ dy = -5; y = -1 } | |
| document.getElementById("userInfo").style.top = y; | |
| } | |
| function ShowFrameDiv(queryString){ | |
| return false; //暂时屏蔽 | |
| top.middle.switches.loading.style.display = 'block'; | |
| // top.middle.switches.note_iframe.location.href="../home/empmemo/empMemoExpressCreate.jsp"; | |
| setTimeout(ShowFrameMain(queryString),10); | |
| } | |
| function ShowFrameMain(passValue){ | |
| var url = "../home/doConsoleListAction.do"; //../home/empMemoCreateAction.do | |
| var topFrame = top.middle.switches; | |
| document.getElementById('PositionFrame').style.display = "block"; | |
| top.middle.contents.left_frame.style.border = "none"; | |
| top.middle.contents.left_frame.style.overflow = "hidden"; | |
| topFrame.PositionFrame_main.style.display ="block"; | |
| topFrame.PositionFrame.style.display ="block"; | |
| topFrame.PositionFrame_notebook.style.display = 'block'; | |
| topFrame.PositionFrame_notebook2.style.display = 'none'; | |
| topFrame.PositionFrame_my_note.style.display = 'block'; | |
| //topFrame.note_iframe.location.href=url; | |
| form1.action = url; | |
| form1.method = "post"; | |
| form1.target = "note_iframe"; | |
| // alert(passValue); | |
| if(passValue){ | |
| form1.innerHTML='<input type="hidden" name="passTitle" value="' + passValue[0] + '"/>'; | |
| form1.innerHTML=form1.innerHTML + '<input type="hidden" name="passContent" value="' +passValue[1]+ '"/>'; | |
| } | |
| form1.submit(); | |
| top.middle.contents.PositionFrame.style.display ="block"; | |
| topFrame.loading.style.display = 'none'; | |
| topFrame.PositionFrame_main.style.visibility = 'visible'; | |
| topFrame.visibility.style.display = 'block'; | |
| } | |
| function offset(place){ | |
| var mask = $('#mask'); | |
| var targetObj = $('#menuContent'); | |
| var maxOffset = targetObj.width()-mask.width(); | |
| var currLeft = targetObj.css('left'); | |
| // alert(maxOffset + " " + currLeft); | |
| var currLeft = Number(currLeft.substring(0,currLeft.length-2)); | |
| if(place=="right" && (0-currLeft) <= maxOffset){ | |
| targetObj.css('left', currLeft - 5); | |
| } else if(place=="left" && currLeft < 0){ | |
| targetObj.css('left', currLeft + 5); | |
| } | |
| } | |
| function periodOffset(thisObj, place){ | |
| var intervalId = window.setInterval(function(){offset(place)}, 1); | |
| $(thisObj).mouseout(function(){window.clearInterval(intervalId)}); | |
| } | |
| function checkDirectionKey(){ | |
| var mask = $('#mask'); | |
| var bodyWidth = $('body').width(); | |
| //alert(bodyWidth - 450); | |
| mask.width(bodyWidth - 250); //450 | |
| //alert(mask.width()); | |
| var targetObj = $('#menuContent'); | |
| var maxOffset = targetObj.width()-mask.width(); | |
| var currLeft = targetObj.css('left'); | |
| // alert(maxOffset + " " + currLeft); | |
| var currLeft = Number(currLeft.substring(0,currLeft.length-2)); | |
| // alert((0-currLeft) <= maxOffset); | |
| if(!(0-currLeft) <= maxOffset || currLeft < 0) { | |
| $("#rightKey").show("slow"); | |
| $("#leftKey").show("slow"); | |
| if(!isShow){ | |
| $("#prompt_div").show("slow", function(){window.setTimeout(function(){$("#prompt_div").hide("slow")}, 10000);isShow = true;}); | |
| } | |
| } else { | |
| $("#rightKey").hide(); | |
| $("#leftKey").hide(); | |
| $("#prompt_div").hide(); | |
| } | |
| } | |
| var isShow = false; | |
| $(function(){ | |
| window.onresize = checkDirectionKey; | |
| $("#rightKey").hide(); | |
| $("#leftKey").hide(); | |
| $("#prompt_div").hide(); | |
| checkDirectionKey(); | |
| }); | |
| function logout(){ | |
| return formSubmit("${ctx}/logout", "_top"); | |
| } | |
| function toModule(moduleName){ | |
| top.leftFrame.location.href = 'homeAction_toleft.action?moduleName=' + moduleName; | |
| top.main.location.href = 'homeAction_tomain.action?moduleName=' + moduleName; | |
| linkHighlightMenu(this); | |
| } | |
| </script> | |
| </head> | |
| <body onSelectStart="return true"><!-- 文档主题部分开始 --> | |
| <div class="PositionFrame_black" id="PositionFrame"></div> | |
| <div id="userInfo" style="z-index:999;" onclick="HideLoginDiv()" title="点击关闭"> | |
| <img src="${ctx}/skin/default/images/title/avataronline.gif" border="0" style="margin-top:-1px;"/> | |
| 您好:<strong>${_CURRENT_USER.userInfo.name}</strong> | | |
| 您所属单位: | |
| <c:if test="${!empty _CURRENT_USER.dept}"> | |
| <strong>${_CURRENT_USER.dept.deptName}</strong> | |
| </c:if> | |
| <img src="${ctx}/skin/default/images/title/close.gif" border="0" /> | |
| </div> | |
| <a id="memos" style="cursor:pointer;" onclick="toModule('home');" target="_top" title="点击切换到系统首页"><div id="memo" class="memo" title="点击切换到系统首页"></div></a> | |
| <a id="logins" style="cursor:pointer;" onclick="doLoginDiv();" title="点击显示您的登录信息"><div id="small_login" class="small_login" title="点击显示您的登录信息"></div></a> | |
| <a id="logout" style="cursor:pointer;" onclick="logout();" target="_top" title="点击退出系统"><div id="small_login_out" class="small_login_out" title="点击退出系统"></div></a> | |
| <div class="headerBg"> | |
| <div class="top_logo"> | |
| <div class="navMenu" style="float:left;text-align:left;"> | |
| <div class="titleDate" style="float:left;"><fmt:formatDate value="${now}" pattern="yyyy年M月d日 E" /> </div> | |
| <div style="height:29px;"> | |
| <span id="leftKey" onmouseover="periodOffset(this, 'left')"><img src="${ctx}/skin/default/images/title/left_arrow.png"/></span> | |
| <div class="mavMeau_top"></div> | |
| <div id="mask"> | |
| <div id="menuContent"> | |
| <span id="topmenu" onclick="toModule('home');">系统首页</span><span id="tm_separator"></span> | |
| <span id="topmenu" onclick="toModule('cargo');">货运管理</span><span id="tm_separator"></span> | |
| <span id="topmenu" onclick="toModule('stat');">统计分析</span><span id="tm_separator"></span> | |
| <span id="topmenu" onclick="toModule('baseinfo');">基础信息</span><span id="tm_separator"></span> | |
| <span id="topmenu" onclick="toModule('sysadmin');">系统管理</span> | |
| <!-- 当jsp页面碰到shiro标签时就执行AuthRealm中授权方法 --> | |
| <%-- <shiro:hasPermission name="系统首页"> | |
| <span id="topmenu" onclick="toModule('home');">系统首页</span><span id="tm_separator"></span> | |
| </shiro:hasPermission> | |
| <shiro:hasPermission name="货运管理"> | |
| <span id="topmenu" onclick="toModule('cargo');">货运管理</span><span id="tm_separator"></span> | |
| </shiro:hasPermission> | |
| <shiro:hasPermission name="统计分析"> | |
| <span id="topmenu" onclick="toModule('stat');">统计分析</span><span id="tm_separator"></span> | |
| </shiro:hasPermission> | |
| <shiro:hasPermission name="基础信息"> | |
| <span id="topmenu" onclick="toModule('baseinfo');">基础信息</span><span id="tm_separator"></span> | |
| </shiro:hasPermission> | |
| <shiro:hasPermission name="系统管理"> | |
| <span id="topmenu" onclick="toModule('sysadmin');">系统管理</span> | |
| </shiro:hasPermission> | |
| <shiro:hasPermission name="流程管理"> | |
| <span id="topmenu" onclick="toModule('activiti');">流程管理</span> | |
| </shiro:hasPermission> --%> | |
| </div> | |
| <span id="rightKey" onmouseover="periodOffset(this, 'right')"><img src="${ctx}/skin/default/images/title/right_arrow.png"/></span> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div id="prompt_div"><img src="${ctx}/skin/default/images/title/prompt.png"/><span style="position:absolute;top:2px;left:35px;z-index: 99999;width:100%;color:#FFFFFF;text-align: left; ">鼠标指向箭头位置<br/>可显示更多菜单项</span></div> | |
| <form name="form1" style="display: none;"></form> <%//备忘录等使用%> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="base.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title>陕西杰信商务综合管理平台</title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/login.css" media="all" /> | |
| <script src="${ctx}/components/pngfix/DD_belatedPNG.js"></script> | |
| <script> DD_belatedPNG.fix('*'); </script> | |
| </head> | |
| <body> | |
| <form id="login_main" method="post"> | |
| <div id="png"> | |
| <div class="box"> | |
| <div class="zck"> | |
| <div class="inputstyle"> | |
| <div class="inputlable">用户名: | |
| <input type="text" value="" name="userName" id="userName" onFocus="this.select();" title="请您输入用户名"/> | |
| <div id="ts" style="z-index:1;"> | |
| </div> | |
| </div> | |
| <div class="inputlable">密 码: | |
| <input type="password" value="" name="password" id="password" onfocus="$('#ts').css('display','none');this.select();" | |
| onKeyDown="javascript:if(event.keyCode==13){ submitFind(); }" title="请您输入密码"/> | |
| </div> | |
| </div> | |
| <div class="btnstyle"> | |
| <input class="loginImgOut" value="" type="button" onclick="formSubmit('${ctx}/fmain.action','_self');" | |
| onmouseover="this.className='loginImgOver'" | |
| onmouseout="this.className='loginImgOut'" | |
| /> | |
| <input class="resetImgOut" value="" type="button" | |
| onmouseover="this.className='resetImgOver'" | |
| onmouseout="this.className='resetImgOut'" | |
| /> | |
| </div> | |
| </div> | |
| <div class="mirro"></div> | |
| <logic:notEmpty name="loginFailed"> | |
| <c:if test="${loginFailed==1}"> | |
| <c:set var="errorInfo" value="用户名或密码错误, 请重新输入!"/> | |
| </c:if> | |
| <c:if test="${loginFailed==2}"> | |
| <c:set var="errorInfo" value="用户名不存在, 请重新输入!"/> | |
| </c:if> | |
| <div class="erro" id="erro"> | |
| <div class="erro_intro"> | |
| ${errorInfo} | |
| </div> | |
| </div> | |
| </logic:notEmpty> | |
| </div> | |
| </div> | |
| </div> | |
| </form> | |
| <script type="text/JavaScript"> | |
| document.getElementById('login_main').userName.focus(); | |
| </script> | |
| </body> | |
| </html> | |
| <%@ page language="java" contentType="text/html; charset=UTF-8" | |
| pageEncoding="UTF-8"%> | |
| <%@ include file="../baselist.jsp" %> | |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | |
| <LINK rel="stylesheet" type="text/css" href="${ctx}js/easyui/styles/default.css"> | |
| <title>创建采购单</title> | |
| <script type="text/javascript"> | |
| function ordersave(){ | |
| document.orderform.submit(); | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form id="orderform" name="orderform" action="${ctx}/flow/orderFlowAction_addOrderSubmit.action" method="post"> | |
| <TABLE border=0 cellSpacing=0 cellPadding=0 width="100%" bgColor=#c4d8ed> | |
| <TBODY> | |
| <TR> | |
| <TD background=images/r_0.gif width="100%"> | |
| <TABLE cellSpacing=0 cellPadding=0 width="100%"> | |
| <TBODY> | |
| <TR> | |
| <TD> 添加采购单</TD> | |
| <TD align=right> </TD> | |
| </TR> | |
| </TBODY> | |
| </TABLE> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD> | |
| <TABLE class="toptable grid" border=1 cellSpacing=1 cellPadding=4 | |
| align=center> | |
| <TBODY> | |
| <TR> | |
| <TD height=30 width="15%" align=right >采购单名称:</TD> | |
| <TD class=category width="35%"> | |
| <input type="text" name="orderCustom.name"/> | |
| </TD> | |
| <TD height=30 width="15%" align=right >采购单内容:</TD> | |
| <TD class=category width="35%"> | |
| <textarea rows="3" cols="30" name="orderCustom.content"></textarea> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD height=30 width="15%" align=right >采购金额:</TD> | |
| <TD class=category width="35%"> | |
| <input type="text" name="orderCustom.price"/> | |
| </TD> | |
| <TD height=30 width="15%" align=right ></TD> | |
| <TD class=category width="35%"> | |
| </div> | |
| </TD> | |
| </TR> | |
| <tr> | |
| <td colspan=4 align=center class=category> | |
| <a id="submitbtn" class="easyui-linkbutton" iconCls="icon-ok" href="#" onclick="ordersave()">提交</a> | |
| <a id="closebtn" class="easyui-linkbutton" iconCls="icon-cancel" href="#" onclick="parent.closemodalwindow()">关闭</a> | |
| </td> | |
| </tr> | |
| </TBODY> | |
| </TABLE> | |
| </TD> | |
| </TR> | |
| </TBODY> | |
| </TABLE> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" contentType="text/html; charset=UTF-8" | |
| pageEncoding="UTF-8"%> | |
| <%@ include file="../baselist.jsp" %> | |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | |
| <!-- 引用jquery easy ui的js库及css --> | |
| <LINK rel="stylesheet" type="text/css" href="${baseurl}js/easyui/styles/default.css"> | |
| <title>采购单审核</title> | |
| <script type="text/javascript"> | |
| function orderAudit(){ | |
| document.oorderAuditForm.submit(); | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form id="oorderAuditForm" name="oorderAuditForm" action="${ctx}/flow/orderFlowAction_submitOrderAudit.action" method="post"> | |
| <TABLE border=0 cellSpacing=0 cellPadding=0 width="100%" bgColor=#c4d8ed> | |
| <TBODY> | |
| <TR> | |
| <TD background=images/r_0.gif width="100%"> | |
| <TABLE cellSpacing=0 cellPadding=0 width="100%"> | |
| <TBODY> | |
| <TR> | |
| <TD> 审核采购单</TD> | |
| <TD align=right> </TD> | |
| </TR> | |
| </TBODY> | |
| </TABLE> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD> | |
| <TABLE class="toptable grid" border=1 cellSpacing=1 cellPadding=4 | |
| align=center> | |
| <TBODY> | |
| <TR> | |
| <TD height=30 width="15%" align=right >任务id/采购单id:</TD> | |
| <TD class=category width="35%"> | |
| 任务id:<input type="text" name="taskId" value="${taskId}"/><br/> | |
| 采购单id:<input type="text" name="orderId" value="${orderId}"/> | |
| </TD> | |
| <TD height=30 width="15%" align=right >审核类型:</TD> | |
| <TD class=category width="35%"> | |
| <input type="text" name="auditType" value="${auditType}"/> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD height=30 width="15%" align=right >审核结果:</TD> | |
| <TD class=category width="35%"> | |
| <input type="radio" name="orderAuditCustom.status" value="1"/>通过 | |
| <input type="radio" name="orderAuditCustom.status" value="0" />不通过 | |
| </TD> | |
| <TD height=30 width="15%" align=right >审核意见</TD> | |
| <TD class=category width="35%"> | |
| <textarea rows="3" cols="30" name="orderAuditCustom.auditInfo" ></textarea> | |
| </div> | |
| </TD> | |
| </TR> | |
| <tr> | |
| <td colspan=4 align=center class=category> | |
| <a id="submitbtn" class="easyui-linkbutton" iconCls="icon-ok" href="#" onclick="orderAudit()">提交</a> | |
| </td> | |
| </tr> | |
| </TBODY> | |
| </TABLE> | |
| </TD> | |
| </TR> | |
| </TBODY> | |
| </TABLE> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 任务列表 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td>任务id</td> | |
| <td>任务名称</td> | |
| <td>任务标识</td> | |
| <td>所属流程实例id</td> | |
| <td>负责人</td> | |
| <td>采购单名称</td> | |
| <td>采购金额</td> | |
| <td>创建时间</td> | |
| <td>任务类型</td> | |
| </tr> | |
| <c:forEach items="${list }" var="order"> | |
| <tr> | |
| <td class=category>${order.taskId}</td> | |
| <td class=category>${order.taskName }</td> | |
| <td class=category>${order.taskDefinitionKey }</td> | |
| <td class=category>${order.processInstanceId }</td> | |
| <td class=category>${order.assignee}</td> | |
| <td class=category>${order.name}</td> | |
| <td class=category>${order.price}</td> | |
| <td class=category><fmt:formatDate value="${order.createtime}" | |
| pattern="yyyy-MM-dd hh:mm:ss" /></td> | |
| <td class=category> | |
| <c:if | |
| test="${order.taskDefinitionKey=='inputPurchase' }"> | |
| <a href="${ctx}/flow/orderFlowAction_submitOrder.action?taskId=${order.taskId}">提交采购单</a> | |
| </c:if> <c:if test="${order.taskDefinitionKey=='firstAudit' }"> | |
| <a | |
| href="${ctx}/flow/orderFlowAction_orderAudit.action?taskId=${order.taskId}&auditType=${order.taskDefinitionKey}&orderId=${order.id}">部门经理审核</a> | |
| </c:if> <c:if test="${order.taskDefinitionKey=='secondAudit' }"> | |
| <a | |
| href="${ctx}/flow/orderFlowAction_orderAudit.action?taskId=${order.taskId}&auditType=${order.taskDefinitionKey}&orderId=${order.id}">总经理审核</a> | |
| </c:if> <c:if test="${order.taskDefinitionKey=='thirdAudit' }"> | |
| <a | |
| href="${ctx}/flow/orderFlowAction_orderAudit.action?taskId=${order.taskId}&auditType=${order.taskDefinitionKey}&orderId=${order.id}">财务审核</a> | |
| </c:if> | |
| <%-- <c:if test="${order.taskDefinitionKey=='settlement' }"> | |
| <a | |
| href="${ctx}/orderflow/settlement.action?taskId=${order.taskId}">财务结算</a> | |
| </c:if> | |
| <c:if test="${order.taskDefinitionKey=='storage' }"> | |
| <a | |
| href="${ctx}/orderflow/storage.action?taskId=${order.taskId}">入库</a> | |
| </c:if> --%> | |
| </td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" contentType="text/html; charset=UTF-8" | |
| pageEncoding="UTF-8"%> | |
| <%@ include file="../baselist.jsp" %> | |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | |
| <!-- 引用jquery easy ui的js库及css --> | |
| <LINK rel="stylesheet" type="text/css" | |
| href="${baseurl}js/easyui/styles/default.css"> | |
| <title>当前运行采购流程</title> | |
| <script type="text/javascript"> | |
| function queryorder() { | |
| $("#queryOrderForm").submit(); | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form id="queryOrderForm" name="queryOrderForm" | |
| action="${baseurl}/orderflow/queryActivityOrder.action" method="post"> | |
| <!-- <TABLE class="table_search"> | |
| <TBODY> | |
| <TR> | |
| <TD class="left">采购单号:</td> | |
| <td><input type="text" name="orderCustom.name" /></TD> | |
| <TD class="left">采购单名称:</TD> | |
| <td><INPUT type="text" name="orderCustom.name" /></TD> | |
| <td><a id="btn" href="#" onclick="queryorder()" | |
| class="easyui-linkbutton" iconCls='icon-search'>查询</a></td> | |
| </TR> | |
| </TBODY> | |
| </TABLE> --> | |
| <TABLE class="toptable grid"> | |
| <TBODY> | |
| <tr> | |
| <td>流程实例id</td> | |
| <td>采购单名称</td> | |
| <td>采购金额</td> | |
| <td>创建时间</td> | |
| <td>当前活动</td> | |
| <td>查看任务</td> | |
| <td>查看流程图</td> | |
| </tr> | |
| <c:forEach items="${list}" var="order"> | |
| <tr> | |
| <td class=category>${order.processinstanceId}</td> | |
| <td class=category>${order.name}</td> | |
| <td class=category>${order.price}</td> | |
| <td class=category><fmt:formatDate | |
| value="${order.createtime}" pattern="yyyy-MM-dd hh:mm:ss" /></td> | |
| <td class=category>${order.activityId}</td> | |
| <td class=category><a | |
| href="${baseurl}orderflow/queryOrderTaskByPid.action?pid=${order.processinstanceId}" | |
| target="_blank">查看任务</a></td> | |
| <td class=category><a | |
| href="${baseurl }flow/queryActivityMap.action?processInstanceId=${order.processinstanceId}" | |
| target="_blank">查看流程图</a></td> | |
| </tr> | |
| </c:forEach> | |
| </TBODY> | |
| </TABLE> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" contentType="text/html; charset=UTF-8" | |
| pageEncoding="UTF-8"%> | |
| <%@ include file="../baselist.jsp" %> | |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | |
| <!-- 引用jquery easy ui的js库及css --> | |
| <LINK rel="stylesheet" type="text/css" | |
| href="${baseurl}js/easyui/styles/default.css"> | |
| <title>结束运行采购流程查询</title> | |
| <script type="text/javascript"> | |
| function queryorder() { | |
| $("#queryOrderForm").submit(); | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form id="queryOrderForm" name="queryOrderForm" | |
| action="${baseurl}/order/queryHistoryOrder.action" method="post"> | |
| <TABLE class="toptable grid"> | |
| <TBODY> | |
| <tr> | |
| <td>流程实例id</td> | |
| <td>采购单名称</td> | |
| <td>采购金额</td> | |
| <td>创建时间</td> | |
| <td>结束时间</td> | |
| <td>查看任务</td> | |
| </tr> | |
| <c:forEach items="${list}" var="order"> | |
| <tr> | |
| <td class=category>${order.processinstanceId}</td> | |
| <td class=category>${order.name}</td> | |
| <td class=category>${order.price}</td> | |
| <td class=category><fmt:formatDate | |
| value="${order.createtime}" pattern="yyyy-MM-dd hh:mm:ss" /></td> | |
| <td class=category><fmt:formatDate | |
| value="${order.endTime}" pattern="yyyy-MM-dd hh:mm:ss" /></td> | |
| <td class=category><a | |
| href="${baseurl}orderflow/queryOrderTaskByPid.action?pid=${order.processinstanceId}" | |
| target="_blank">查看任务</a></td> | |
| </tr> | |
| </c:forEach> | |
| </TBODY> | |
| </TABLE> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" contentType="text/html; charset=UTF-8" | |
| pageEncoding="UTF-8"%> | |
| <%@ include file="../baselist.jsp" %> | |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
| <html> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | |
| <!-- 引用jquery easy ui的js库及css --> | |
| <LINK rel="stylesheet" type="text/css" | |
| href="${baseurl}js/easyui/styles/default.css"> | |
| <title>任务列表</title> | |
| <script type="text/javascript"> | |
| function queryOrderTask() { | |
| $("#queryOrderForm").submit(); | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form id="queryOrderForm" name="queryOrderForm" | |
| action="${baseurl}/order/queryOrderTaskByPid.action" | |
| method="post"> | |
| <input type="hidden" id="page_index" name="page_index" value="1"/> | |
| <input type="hidden" id="page_size" name="page_size" value="15"> | |
| <TABLE class="toptable grid" > | |
| <TBODY> | |
| <tr> | |
| <td>任务id</td> | |
| <td>任务名称</td> | |
| <td>负责人</td> | |
| <td>任务标识</td> | |
| <td>开始时间</td> | |
| <td>结束时间</td> | |
| </tr> | |
| <c:forEach items="${list}" var="order"> | |
| <tr> | |
| <td class=category>${order.taskId}</td> | |
| <td class=category>${order.taskName }</td> | |
| <td class=category>${order.assignee}</td> | |
| <td class=category>${order.taskDefinitionKey}</td> | |
| <td class=category><fmt:formatDate value="${order.startTime}" | |
| pattern="yyyy-MM-dd hh:mm:ss" /></td> | |
| <td class=category><fmt:formatDate value="${order.endTime}" | |
| pattern="yyyy-MM-dd hh:mm:ss" /></td> | |
| </tr> | |
| </c:forEach> | |
| </TBODY> | |
| </TABLE> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page contentType="text/html; charset=utf-8"%> | |
| <html> | |
| <head> | |
| </head> | |
| <script type="text/javascript"> | |
| //必须从此转向,否则路径错误会导致读取配置xml和数据xml文件错误。 | |
| var _date = new Date(); | |
| window.location.href = "${pageContext.request.contextPath}/stat/chart/<%=request.getParameter("forward")%>/index.html?d="+_date; | |
| </script> | |
| <body> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../base.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/left.css" media="all"/> | |
| <script language="javascript" src="${ctx}js/common.js"></script> | |
| <script language="javascript" src="${ctx}/js/ajax/setFastMenu.js"></script> | |
| <script language="javascript" src="${ctx}/js/pngfix_map.js"></script> | |
| <script type="text/javascript" src="${ctx}/components/jquery-ui/jquery-1.2.6.js"></script> | |
| <script type="text/javascript" src="${ctx}/skin/default/js/toggle.js"></script> | |
| </head> | |
| <body id="left_frame"> | |
| <!-- begin1 --> | |
| <div id="sidebar" class="sidebar"> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_t_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_t_r"></div> | |
| </div> | |
| <div class="panel"> | |
| <div class="panel_icon"><img src="${ctx}/skin/default/images/icon/document_chart.png" /></div> | |
| <div class="panel-header"> | |
| <div class="panel-title"> | |
| 统计查询 | |
| </div> | |
| <div class="panel-content"> | |
| <%-- <ul> | |
| <li><a href="${ctx}/stat/statChartAction_factorySale" onclick="linkHighlighted(this)" target="main" id="aa_1">生产厂家销售情况</a></li> | |
| <li><a href="${ctx}/stat/statChartAction_productSale" onclick="linkHighlighted(this)" target="main" id="aa_1">产品销售排行</a></li> | |
| <li><a href="${ctx}/stat/statChartAction_onlineInfo" onclick="linkHighlighted(this)" target="main" id="aa_1">系统访问压力图</a></li> | |
| </ul> --%> | |
| <%@include file="../leftmenu.jsp" %> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_b_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_b_r"></div> | |
| </div> | |
| </div> | |
| <!-- end1 --> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../base.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title>模块介绍</title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/staticfile/skin/default/css/main.css" media="all"/> | |
| </head> | |
| <body> | |
| <form> | |
| <div class="textbox"></div> | |
| <div class="modelDiv"> | |
| <table class="modelTable" cellspacing="1"> | |
| <tr> | |
| <td colspan="2" class="modelTitle">统计分析介绍</td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle">生产厂家销售情况</td> | |
| <td class="model_intro_right">和公司合作的生产厂家销售情况饼形图<br> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle">产品销售排行</td> | |
| <td class="model_intro_right">统计公司最畅销的产品是哪些?<br>统计公司最滞销的产品是哪些?</td> | |
| </tr> | |
| <tr> | |
| <td class="subModelTitle">系统访问</td> | |
| <td class="model_intro_right">统计系统一天用户访问系统的情况,何时访问频繁,何时访问较少,方便开发人员对系统进行优化。</td> | |
| </tr> | |
| <tfoot> | |
| <tr> | |
| <td colspan="2" class="tableFooter"></td> | |
| </tr> | |
| </tfoot> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('deptAction_insert','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 新增部门 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">上级部门:</td> | |
| <td class="tableContent"> | |
| <s:select name="parent.id" list="#deptList" headerKey="" headerValue="--请选择--" listKey="id" listValue="deptName"></s:select> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">部门名称:</td> | |
| <td class="tableContent"><input type="text" name="deptName" value=""/></td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx }/js/jquery-1.4.4.js"></script> | |
| <script> | |
| function isOnlyChecked(){ | |
| var checkBoxArray = document.getElementsByName('id'); | |
| var count=0; | |
| for(var index=0; index<checkBoxArray.length; index++) { | |
| if (checkBoxArray[index].checked) { | |
| count++; | |
| } | |
| } | |
| //jquery | |
| //var count = $("[input name='id']:checked").size(); | |
| if(count==1) | |
| return true; | |
| else | |
| return false; | |
| } | |
| function toView(){ | |
| if(isOnlyChecked()){ | |
| formSubmit('deptAction_toview','_self'); | |
| }else{ | |
| alert("请先选择一项并且只能选择一项,再进行操作!"); | |
| } | |
| } | |
| //实现更新 | |
| function toUpdate(){ | |
| if(isOnlyChecked()){ | |
| formSubmit('deptAction_toupdate','_self'); | |
| }else{ | |
| alert("请先选择一项并且只能选择一项,再进行操作!"); | |
| } | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="view"><a href="#" onclick="javascript:toView()">查看</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('deptAction_tocreate','_self');this.blur();">新增</a></li> | |
| <li id="update"><a href="#" onclick="javascript:toUpdate()">修改</a></li> | |
| <li id="delete"><a href="#" onclick="formSubmit('deptAction_delete','_self');this.blur();">删除</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 部门列表 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">编号</td> | |
| <td class="tableHeader">上级</td> | |
| <td class="tableHeader">名称</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${links } | |
| <c:forEach items="${results }" var="dept" varStatus="st"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="id" value="${dept.id }"/></td> | |
| <td>${st.count }</td> | |
| <td>${dept.id }</td> | |
| <td>${dept.parent.deptName }</td> | |
| <td><a href="deptAction_toview?id=${dept.id }">${dept.deptName }</a></td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('deptAction_update','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 修改部门 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">上级部门:</td> | |
| <td class="tableContent"> | |
| <s:select name="parent.id" list="deptList" | |
| listKey="id" listValue="deptName" | |
| headerKey="" headerValue="--请选择--" | |
| ></s:select> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">部门名称:</td> | |
| <td class="tableContent"><input type="text" name="deptName" value="${deptName }"/> | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 查看部门 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">上级部门:</td> | |
| <td class="tableContent"> | |
| ${parent.deptName } | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">部门名称:</td> | |
| <td class="tableContent"> | |
| ${deptName }</td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../baselist.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/left.css" media="all"/> | |
| </head> | |
| <body id="left_frame"> | |
| <div class="PositionFrame_black" id="PositionFrame"></div> | |
| <!-- begin1 --> | |
| <div id="sidebar" class="sidebar"> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_t_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_t_r"></div> | |
| </div> | |
| <div class="panel"> | |
| <div class="panel_icon"><img src="${ctx}/skin/default/images/icon/user1_lock.png"/></div> | |
| <div class="panel-header"> | |
| <div class="panel-title">权限管理</div> | |
| <div class="panel-content"> | |
| <ul> | |
| <li><a href="${ctx}/sysadmin/deptAction_list" onclick="linkHighlighted(this)" target="main" id="aa_1">部门管理</a></li> | |
| <li><a href="${ctx}/sysadmin/userAction_list" onclick="linkHighlighted(this)" target="main" id="aa_1">用户管理</a></li> | |
| <li><a href="${ctx}/sysadmin/roleAction_list" onclick="linkHighlighted(this)" target="main" id="aa_1">角色管理</a></li> | |
| <li><a href="${ctx}/sysadmin/moduleAction_list" onclick="linkHighlighted(this)" target="main" id="aa_1">模块管理</a></li> | |
| </ul> | |
| <!-- 引入动态的菜单生成 --> | |
| <%@include file="../leftmenu.jsp" %> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="sidebar_t"> | |
| <div class="sidebar_b_l"></div> | |
| <div class="sidebar_t_c"></div> | |
| <div class="sidebar_b_r"></div> | |
| </div> | |
| </div> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title>商务综合管理平台</title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/login.css" media="all" /> | |
| <script src="${ctx}/components/pngfix/DD_belatedPNG.js"></script> | |
| <script> DD_belatedPNG.fix('*'); </script> | |
| </head> | |
| <body> | |
| <form id="login_main" method="post"> | |
| <div id="png"> | |
| <div class="box"> | |
| <div class="inputstyle"> | |
| <div class="inputlable">用户名: | |
| <input type="text" value="${userName}" name="username" id="userName" onFocus="this.select();" title="请您输入用户名"/> | |
| <div id="ts" style="z-index:1;"> | |
| </div> | |
| </div> | |
| <div class="inputlable">密 码: | |
| <input type="password" value="${password}" name="password" id="password" onfocus="$('#ts').css('display','none');this.select();" | |
| onKeyDown="javascript:if(event.keyCode==13){ submitFind(); }" title="请您输入密码"/> | |
| </div> | |
| </div> | |
| <div class="btnstyle"> | |
| <input class="loginImgOut" value="" type="button" onclick="formSubmit('${ctx}/login.action','_self');" | |
| onmouseover="this.className='loginImgOver'" | |
| onmouseout="this.className='loginImgOut'" | |
| /> | |
| <input class="resetImgOut" value="" type="button" | |
| onmouseover="this.className='resetImgOver'" | |
| onmouseout="this.className='resetImgOut'" | |
| /> | |
| </div> | |
| <div class="msgtip"> | |
| <c:if test="${!empty errorInfo}"> | |
| ${errorInfo} | |
| </c:if> | |
| </div> | |
| </div> | |
| </div> | |
| </form> | |
| <script type="text/JavaScript"> | |
| document.getElementById('login_main').userName.focus(); | |
| </script> | |
| </body> | |
| </html> | |
| <%@ page contentType="text/html; charset=utf-8"%> | |
| <%@ include file="../../base.jsp" %> | |
| <html> | |
| <head> | |
| </head> | |
| <script type="text/javascript"> | |
| window.top.location.href = "login"; //javascript页面跳转,top防止帧框架嵌套难看 | |
| </script> | |
| <body> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../base.jsp" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title>模块介绍</title> | |
| <link rel="stylesheet" rev="stylesheet" type="text/css" href="${ctx}/skin/default/css/main.css" media="all"/> | |
| </head> | |
| <body> | |
| <form> | |
| <div class="textbox"></div> | |
| <div class="modelDiv"> | |
| <table class="modelTable" cellspacing="1"> | |
| <tr> | |
| <td colspan="2" class="modelTitle">系统维护模块介绍</td> | |
| </tr> | |
| <tr> | |
| <td colspan="2" class="subModelTitle">权限管理</td> | |
| </tr> | |
| <tr> | |
| <td class="model_intro_left">多维权限控制模型:</td> | |
| <td class="model_intro_right">横向模块权限控制(菜单、按钮、状态、功能点), 纵向数据权限控制(行政部门、职务等级、管辖部门、管辖人员)。 | |
| <p>=严密的数据访问控制,充分保障数据的安全性。</p> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="model_intro_left">角色管理:</td> | |
| <td class="model_intro_right">对人员角色进行权限分配, 实现用户权限批量设置, 支持细粒度权限控制分配(菜单、按钮、状态、功能点)。</td> | |
| </tr> | |
| <tr> | |
| <td class="model_intro_left" width="169">部门管理:</td> | |
| <td class="model_intro_right" width="81%">对企业部门进行维护和管理。</td> | |
| </tr> | |
| <tr> | |
| <td class="model_intro_left" width="169">用户管理:</td> | |
| <td class="model_intro_right" width="81%">可对系统操作用户进行维护管理, 维护信息包括用户账号、所属部门、功能权限等, 并支持对特殊用户账号锁定禁用操作。 | |
| <br/>管辖部门管辖人员:实现对特定部门, 特定人员分管关系。 | |
| </td> | |
| </tr> | |
| <tfoot> | |
| <tr> | |
| <td colspan="2" class="tableFooter"></td> | |
| </tr> | |
| </tfoot> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('moduleAction_insert','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 新增模块 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">模块名:</td> | |
| <td class="tableContent"><input type="text" name="name" value=""/></td> | |
| <td class="columnTitle">层数:</td> | |
| <td class="tableContent"><input type="text" name="layerNum" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">权限标识:</td> | |
| <td class="tableContent"><input type="text" name="cpermission" value=""/></td> | |
| <td class="columnTitle">链接:</td> | |
| <td class="tableContent"><input type="text" name="curl" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">类型:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="ctype" value="0" class="input"/>主菜单 | |
| <input type="radio" name="ctype" value="1" class="input"/>左侧菜单 | |
| <input type="radio" name="ctype" value="2" class="input"/>按钮 | |
| <input type="radio" name="ctype" value="3" class="input"/>链接 | |
| <input type="radio" name="ctype" value="4" class="input"/>状态 | |
| </td> | |
| <td class="columnTitle">状态:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="state" value="1" checked class="input"/>启用 | |
| <input type="radio" name="state" value="0" class="input"/>停用 | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">从属:</td> | |
| <td class="tableContent"><input type="text" name="belong" value=""/></td> | |
| <td class="columnTitle">复用标识:</td> | |
| <td class="tableContent"><input type="text" name="cwhich" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">说明:</td> | |
| <td class="tableContent"> | |
| <textarea name="remark" style="height:120px;"></textarea> | |
| </td> | |
| <td class="columnTitle">排序号:</td> | |
| <td class="tableContent"><input type="text" name="orderNo" value=""/></td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="view"><a href="#" onclick="formSubmit('moduleAction_toview','_self');this.blur();">查看</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('moduleAction_tocreate','_self');this.blur();">新增</a></li> | |
| <li id="update"><a href="#" onclick="formSubmit('moduleAction_toupdate','_self');this.blur();">修改</a></li> | |
| <li id="delete"><a href="#" onclick="formSubmit('moduleAction_delete','_self');this.blur();">删除</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 模块列表 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">模块名</td> | |
| <td class="tableHeader">层数</td> | |
| <td class="tableHeader">权限标识</td> | |
| <td class="tableHeader">链接</td> | |
| <td class="tableHeader">类型</td> | |
| <td class="tableHeader">从属</td> | |
| <td class="tableHeader">状态</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${links } | |
| <c:forEach items="${results}" var="o" varStatus="status"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="id" value="${o.id}"/></td> | |
| <td>${status.index+1}</td> | |
| <td><a href="moduleAction_toview?id=${o.id}">${o.name}</a></td> | |
| <td>${o.layerNum}</td> | |
| <td>${o.cpermission}</td> | |
| <td>${o.curl}</td> | |
| <td>${o.ctype}</td> | |
| <td>${o.belong}</td> | |
| <td>${o.state}</td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('moduleAction_update','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 修改模块 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">模块名:</td> | |
| <td class="tableContent"><input type="text" name="name" value="${name}"/></td> | |
| <td class="columnTitle">层数:</td> | |
| <td class="tableContent"><input type="text" name="layerNum" value="${layerNum}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">权限标识:</td> | |
| <td class="tableContent"><input type="text" name="cpermission" value="${cpermission}"/></td> | |
| <td class="columnTitle">链接:</td> | |
| <td class="tableContent"><input type="text" name="curl" value="${curl}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">类型:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="ctype" value="0" <c:if test="${ctype==0}">checked</c:if> class="input"/>主菜单 | |
| <input type="radio" name="ctype" value="1" <c:if test="${ctype==1}">checked</c:if> class="input"/>左侧菜单 | |
| <input type="radio" name="ctype" value="2" <c:if test="${ctype==2}">checked</c:if> class="input"/>按钮 | |
| <input type="radio" name="ctype" value="3" <c:if test="${ctype==3}">checked</c:if> class="input"/>链接 | |
| <input type="radio" name="ctype" value="4" <c:if test="${ctype==4}">checked</c:if> class="input"/>状态 | |
| </td> | |
| <td class="columnTitle">状态:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="state" value="1" <c:if test="${state==1}">checked</c:if> class="input"/>启用 | |
| <input type="radio" name="state" value="0" <c:if test="${state==0}">checked</c:if> class="input"/>停用 | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">从属:</td> | |
| <td class="tableContent"><input type="text" name="belong" value="${belong}"/></td> | |
| <td class="columnTitle">复用标识:</td> | |
| <td class="tableContent"><input type="text" name="cwhich" value="${cwhich}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">说明:</td> | |
| <td class="tableContent"> | |
| <textarea name="remark" style="height:120px;">${remark}</textarea> | |
| </td> | |
| <td class="columnTitle">排序号:</td> | |
| <td class="tableContent"><input type="text" name="orderNo" value="${orderNo}"/></td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 浏览模块 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">模块名:</td> | |
| <td class="tableContent">${name}</td> | |
| <td class="columnTitle">层数:</td> | |
| <td class="tableContent">${layerNum}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">权限标识:</td> | |
| <td class="tableContent">${cpermission}</td> | |
| <td class="columnTitle">链接:</td> | |
| <td class="tableContent">${curl}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">类型:</td> | |
| <td class="tableContentAuto"> | |
| <c:if test="${ctype==1}">主菜单</c:if> | |
| <c:if test="${ctype==2}">左侧菜单</c:if> | |
| <c:if test="${ctype==3}">按钮</c:if> | |
| <c:if test="${ctype==4}">链接</c:if> | |
| <c:if test="${ctype==5}">状态</c:if> | |
| </td> | |
| <td class="columnTitle">状态:</td> | |
| <td class="tableContentAuto"> | |
| <c:if test="${state==1}">启用</c:if> | |
| <c:if test="${state==0}">停用</c:if> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">从属:</td> | |
| <td class="tableContent">${belong}</td> | |
| <td class="columnTitle">复用标识:</td> | |
| <td class="tableContent">${cwhich}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">说明:</td> | |
| <td class="tableContent"><pre>${remark}</pre></td> | |
| <td class="columnTitle">排序号:</td> | |
| <td class="tableContent">${orderNo}</td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('roleAction_insert','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 新增角色 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">名称:</td> | |
| <td class="tableContent"><input type="text" name="name" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">说明:</td> | |
| <td class="tableContent"><input type="text" name="remark" value=""/></td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="view"><a href="#" onclick="formSubmit('roleAction_toview','_self');this.blur();">查看</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('roleAction_tocreate','_self');this.blur();">新增</a></li> | |
| <li id="update"><a href="#" onclick="formSubmit('roleAction_toupdate','_self');this.blur();">修改</a></li> | |
| <li id="delete"><a href="#" onclick="formSubmit('roleAction_delete','_self');this.blur();">删除</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('roleAction_tomodule','_self');this.blur();" title="分配权限">权限</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 角色列表 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">编号</td> | |
| <td class="tableHeader">名称</td> | |
| <td class="tableHeader">说明</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${links } | |
| <c:forEach items="${results}" var="o" varStatus="status"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="id" value="${o.id}"/></td> | |
| <td>${status.index+1}</td> | |
| <td>${o.id}</td> | |
| <td><a href="roleAction_toview?id=${o.id}">${o.name}</a></td> | |
| <td>${o.remark}</td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <link rel="stylesheet" href="${ctx }/components/zTree/css/zTreeStyle/zTreeStyle.css" type="text/css" /> | |
| <script type="text/javascript" src="${ctx }/components/zTree/js/jquery-1.4.4.min.js"></script> | |
| <script type="text/javascript" src="${ctx }/components/zTree/js/jquery.ztree.core-3.5.min.js"></script> | |
| <script type="text/javascript" src="${ctx }/components/zTree/js/jquery.ztree.excheck-3.5.min.js"></script> | |
| <script type="text/javascript"> | |
| var zTreeObj; | |
| var setting = { | |
| check : { | |
| enable : true | |
| }, | |
| data : { | |
| simpleData : { | |
| enable : true | |
| } | |
| } | |
| }; | |
| $(document).ready(function() { | |
| $.ajax( { | |
| url : "${ctx}/sysadmin/roleAction_roleModuleJsonStr.action?id=${id}", | |
| type : "get", | |
| dataType : "text", | |
| success : initZtree | |
| }); | |
| }); | |
| //初始化ZTree树 | |
| function initZtree(data) { | |
| var zNodes = eval("(" + data + ")"); //动态js语句 | |
| zTreeObj = $.fn.zTree.init($('#jkTree'), setting, zNodes); //jkTree 树的id,支持多个树 | |
| zTreeObj.expandAll(true); //展开所有树节点 | |
| } | |
| //获取所有选择的节点 | |
| function submitCheckedNodes() { | |
| var nodes = new Array(); | |
| nodes = zTreeObj.getCheckedNodes(true); //取得选中的结点 | |
| var str = ""; | |
| for (i = 0; i < nodes.length; i++) { | |
| if (str != "") { | |
| str += ","; | |
| } | |
| str += nodes[i].id; | |
| } | |
| $('#moduleIds').val(str); | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <input type="hidden" id="moduleIds" name="moduleIds" value="" /> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="submitCheckedNodes();formSubmit('roleAction_module','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="formSubmit('roleAction_list','_self');this.blur();">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 配置 [${name}] 角色的模块 | |
| </div> | |
| </div> | |
| </div> | |
| <%-- <div> | |
| <div style="text-align:left"> | |
| <c:forEach items="${moduleList}" var="o"> | |
| <div style="padding:3px;"> | |
| <input type="checkbox" name="moduleIds" value="${o.id}" class="input" | |
| <c:if test="${fn:contains(roleModuleStr,o.id)}">checked</c:if> | |
| > | |
| ${o.name} | |
| </div> | |
| </c:forEach> | |
| </div> | |
| </div> --%> | |
| <div> | |
| <ul id="jkTree" class="ztree"></ul> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('roleAction_update','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 修改角色 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">名称:</td> | |
| <td class="tableContent"><input type="text" name="name" value="${name}"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">说明:</td> | |
| <td class="tableContent"><input type="text" name="remark" value="${remark}"/></td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="back"><a href="#" onclick="history.back()">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 浏览角色 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">名称:</td> | |
| <td class="tableContent">${name}</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">说明:</td> | |
| <td class="tableContent">${remark}</td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx }/js/datepicker/WdatePicker.js"></script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('userAction_insert','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 新增用户 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">所在部门:</td> | |
| <td class="tableContent"> | |
| <s:select name="dept.id" list="deptList" | |
| listKey="id" listValue="deptName" | |
| headerKey="" headerValue="--请选择--" | |
| ></s:select> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">登录名:</td> | |
| <td class="tableContent"><input type="text" name="userName" value=""/></td> | |
| <td class="columnTitle">状态:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="state" value="1" checked class="input"/>启用 | |
| <input type="radio" name="state" value="0" class="input"/>停用 | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">姓名:</td> | |
| <td class="tableContent"><input type="text" name="userInfo.name" value=""/></td> | |
| <td class="columnTitle">直属领导:</td> | |
| <td class="tableContent"> | |
| <s:select name="userInfo.manager.id" list="userList" | |
| listKey="id" listValue="userInfo.name" | |
| headerKey="" headerValue="--请选择--" | |
| ></s:select> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">入职时间:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="userInfo.joinDate" | |
| value="" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| <td class="columnTitle">薪水:</td> | |
| <td class="tableContent"><input type="text" name="userInfo.salary" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">等级:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="userInfo.degree" value="0" class="input"/>超级管理员 | |
| <input type="radio" name="userInfo.degree" value="1" class="input"/>跨部门跨人员 | |
| <input type="radio" name="userInfo.degree" value="2" class="input"/>管理所有下属部门和人员 | |
| <input type="radio" name="userInfo.degree" value="3" class="input"/>管理本部门 | |
| <input type="radio" name="userInfo.degree" value="4" class="input"/>普通员工 | |
| </td> | |
| <td class="columnTitle">性别:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="userInfo.gender" value="1" class="input"/>男 | |
| <input type="radio" name="userInfo.gender" value="0" class="input"/>女 | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">岗位:</td> | |
| <td class="tableContent"><input type="text" name="userInfo.station" value=""/></td> | |
| <td class="columnTitle">电话:</td> | |
| <td class="tableContent"><input type="text" name="userInfo.telephone" value=""/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">邮箱:</td> | |
| <td class="tableContent"><input type="text" name="userInfo.email" value=""/></td> | |
| <td class="columnTitle">出生年月:</td> | |
| <td class="tableContent"> | |
| <input type="text" style="width:90px;" name="userInfo.birthday" | |
| value="" | |
| onclick="WdatePicker({el:this,isShowOthers:true,dateFmt:'yyyy-MM-dd'});"/> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">排序号:</td> | |
| <td class="tableContent"><input type="text" name="userInfo.orderNo" value=""/></td> | |
| <td class="columnTitle">说明:</td> | |
| <td class="tableContent"> | |
| <textarea name="userInfo.remark" style="height:120px;"></textarea> | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <script type="text/javascript" src="${ctx }/js/jquery-1.4.4.js"></script> | |
| <script> | |
| function isOnlyChecked(){ | |
| var checkBoxArray = document.getElementsByName('id'); | |
| var count=0; | |
| for(var index=0; index<checkBoxArray.length; index++) { | |
| if (checkBoxArray[index].checked) { | |
| count++; | |
| } | |
| } | |
| //jquery | |
| //var count = $("[input name='id']:checked").size(); | |
| if(count==1) | |
| return true; | |
| else | |
| return false; | |
| } | |
| function toView(){ | |
| if(isOnlyChecked()){ | |
| formSubmit('userAction_toview','_self'); | |
| }else{ | |
| alert("请先选择一项并且只能选择一项,再进行操作!"); | |
| } | |
| } | |
| //实现更新 | |
| function toUpdate(){ | |
| if(isOnlyChecked()){ | |
| formSubmit('userAction_toupdate','_self'); | |
| }else{ | |
| alert("请先选择一项并且只能选择一项,再进行操作!"); | |
| } | |
| } | |
| </script> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="view"><a href="javascript:toView()">查看</a></li> | |
| <li id="new"><a href="#" onclick="formSubmit('userAction_tocreate','_self');this.blur();">新增</a></li> | |
| <li id="update"><a href="#" onclick="javascript:toUpdate()">修改</a></li> | |
| <li id="update"><a href="#" onclick="formSubmit('userAction_torole','_self');this.blur();">角色</a></li> | |
| <li id="delete"><a href="#" onclick="formSubmit('userAction_delete','_self');this.blur();">删除</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 用户列表 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <div class="eXtremeTable" > | |
| <table id="ec_table" class="tableRegion" width="98%" > | |
| <thead> | |
| <tr> | |
| <td class="tableHeader"><input type="checkbox" name="selid" onclick="checkAll('id',this)"></td> | |
| <td class="tableHeader">序号</td> | |
| <td class="tableHeader">用户名</td> | |
| <td class="tableHeader">状态</td> | |
| </tr> | |
| </thead> | |
| <tbody class="tableBody" > | |
| ${links} | |
| <c:forEach items="${results}" var="o" varStatus="status"> | |
| <tr class="odd" onmouseover="this.className='highlight'" onmouseout="this.className='odd'" > | |
| <td><input type="checkbox" name="id" value="${o.id}"/></td> | |
| <td>${status.index+1}</td> | |
| <td><a href="userAction_toview?id=${o.id}">${o.userName}</a></td> | |
| <td>${o.state }</td> | |
| </tr> | |
| </c:forEach> | |
| </tbody> | |
| </table> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../baselist.jsp"%> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> | |
| <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| <style type="text/css"> | |
| span{display: inline-block;width: 200px} | |
| </style> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('userAction_role','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="formSubmit('userAction_list','_self');this.blur();">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox" id="centerTextbox"> | |
| <div class="textbox-header"> | |
| <div class="textbox-inner-header"> | |
| <div class="textbox-title"> | |
| 用户 [${userInfo.name}] 角色列表 | |
| </div> | |
| </div> | |
| </div> | |
| <div> | |
| <div style="text-align:left"> | |
| <c:forEach items="${roleList}" var="o"> | |
| <span style="padding:3px;"> | |
| <input type="checkbox" name="roleIds" value="${o.id}" class="input" | |
| <c:if test="${fn:contains(userRoleStr,o.name)}">checked</c:if> | |
| > | |
| ${o.name} | |
| </span> | |
| </c:forEach> | |
| </div> | |
| </div> | |
| </form> | |
| </body> | |
| </html> | |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('userAction_update','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 查看用户 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">所在部门:</td> | |
| <td class="tableContent"> | |
| <s:select name="dept.id" list="deptList" | |
| listKey="id" listValue="deptName" | |
| headerKey="" headerValue="--请选择--" | |
| ></s:select> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">用户名:</td> | |
| <td class="tableContent"><input type="text" name="userName" value="${userName }"/></td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">状态:</td> | |
| <td class="tableContentAuto"> | |
| <input type="radio" name="state" class="input" ${state==0?'checked':'' } value="0">停用 | |
| <input type="radio" name="state" class="input" ${state==1?'checked':'' } value="1">启用 | |
| </td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> |
| <%@ page language="java" pageEncoding="UTF-8"%> | |
| <%@ include file="../../base.jsp"%> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title></title> | |
| </head> | |
| <body> | |
| <form name="icform" method="post"> | |
| <input type="hidden" name="id" value="${id}"/> | |
| <div id="menubar"> | |
| <div id="middleMenubar"> | |
| <div id="innerMenubar"> | |
| <div id="navMenubar"> | |
| <ul> | |
| <li id="save"><a href="#" onclick="formSubmit('deptAction_update','_self');this.blur();">保存</a></li> | |
| <li id="back"><a href="#" onclick="history.go(-1);">返回</a></li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <div class="textbox-title"> | |
| <img src="${ctx }/skin/default/images/icon/currency_yen.png"/> | |
| 查看用户 | |
| </div> | |
| <div> | |
| <table class="commonTable" cellspacing="1"> | |
| <tr> | |
| <td class="columnTitle">所在部门:</td> | |
| <td class="tableContent"> | |
| ${dept.deptName } | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">用户名:</td> | |
| <td class="tableContent">${userName }</td> | |
| </tr> | |
| <tr> | |
| <td class="columnTitle">状态:</td> | |
| <td class="tableContent">${state==0?'停用':'启用' }</td> | |
| </tr> | |
| </table> | |
| </div> | |
| </form> | |
| </body> | |
| </html> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
| xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> | |
| <!--spring配置文件的加载的监听 器--> | |
| <context-param> | |
| <param-name>contextConfigLocation</param-name> | |
| <param-value>classpath:applicationContext.xml</param-value> | |
| </context-param> | |
| <listener> | |
| <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> | |
| </listener> | |
| <!--2.懒加载 OpenSessionInviewFilter noSession or session is closed--> | |
| <filter> | |
| <filter-name>openSessionInViewFilter</filter-name> | |
| <filter-class>org.springframework.orm.hibernate5.support.OpenSessionInViewFilter</filter-class> | |
| <init-param> | |
| <param-name>singleSession</param-name> | |
| <param-value>true</param-value> | |
| </init-param> | |
| <init-param> | |
| <param-name>sessionFactoryBeanName</param-name> | |
| <param-value>sessionFactory</param-value> | |
| </init-param> | |
| </filter> | |
| <filter-mapping> | |
| <filter-name>openSessionInViewFilter</filter-name> | |
| <url-pattern>/*</url-pattern> | |
| </filter-mapping> | |
| <!-- Shiro Security filter filter-name这个名字的值将来还会在spring中用到 --> | |
| <!--3.struts2核心控制器--> | |
| <filter> | |
| <filter-name>struts2</filter-name> | |
| <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> | |
| </filter> | |
| <filter-mapping> | |
| <filter-name>struts2</filter-name> | |
| <url-pattern>/*</url-pattern> | |
| </filter-mapping> | |
| <!--CharacterEncodingFilter进行编码过滤--> | |
| <filter> | |
| <filter-name>characterEncodingFilter</filter-name> | |
| <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> | |
| </filter> | |
| <filter-mapping> | |
| <filter-name>characterEncodingFilter</filter-name> | |
| <url-pattern>/*</url-pattern> | |
| </filter-mapping> | |
| </web-app> |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- Value between [] brackets, for example [#FFFFFF] shows default value which is used if this parameter is not set --> | |
| <!-- This means, that if you are happy with this value, you can delete this line at all and reduce file size --> | |
| <!-- value or explanation between () brackets shows the range or type of values you should use for this parameter --> | |
| <!-- the top left corner has coordinates x = 0, y = 0 --> | |
| <!-- "!" before x or y position (for example: <x>!20</x>) means that the coordinate will be calculated from the right side or the bottom --> | |
| <settings> | |
| <data_type>csv</data_type> <!-- [xml] (xml / csv) --> | |
| <csv_separator></csv_separator> <!-- [;] (string) csv file data separator (you need it only if you are using csv file for your data) --> | |
| <skip_rows></skip_rows> <!-- [0] (Number) if you are using csv data type, you can set the number of rows which should be skipped here --> | |
| <font></font> <!-- [Arial] (font name) use device fonts, such as Arial, Times New Roman, Tahoma, Verdana... --> | |
| <text_size></text_size> <!-- [11] (Number) text size of all texts. Every text size can be set individually in the settings below --> | |
| <text_color></text_color> <!-- [#000000] (hex color code) main text color. Every text color can be set individually in the settings below--> | |
| <decimals_separator></decimals_separator> <!-- [,] (string) decimal separator. Note, that this is for displaying data only. Decimals in data xml file must be separated with dot --> | |
| <thousands_separator></thousands_separator> <!-- [ ] (string) thousand separator. use "none" if you don't want to separate --> | |
| <digits_after_decimal></digits_after_decimal> <!-- [] (Number) if your value has less digits after decimal then is set here, zeroes will be added --> | |
| <scientific_min></scientific_min> <!-- [0.000001] If absolute value of your number is equal or less then scientific_min, this number will be formatted using scientific notation, for example: 0.0000023 -> 2.3e-6 --> | |
| <scientific_max></scientific_max> <!-- [1000000000000000] If absolute value of your number is equal or bigger then scientific_max, this number will be formatted using scientific notation, for example: 15000000000000000 -> 1.5e16 --> | |
| <redraw></redraw> <!-- [false] (true / false) if your chart's width or height is set in percents, and redraw is set to true, the chart will be redrawn then screen size changes --> | |
| <!-- Legend, buttons labels will not be repositioned if you set your x and y values for these objects --> | |
| <reload_data_interval></reload_data_interval> <!-- [0] (Number) how often data should be reloaded (time in seconds) If you are using this feature I strongly recommend to turn off zoom function (set <zoomable>false</zoomable>) --> | |
| <preloader_on_reload></preloader_on_reload> <!-- [false] (true / false) Whether to show preloaded when data or settings are reloaded --> | |
| <add_time_stamp></add_time_stamp> <!-- [false] (true / false) if true, a unique number will be added every time flash loads data. Mainly this feature is useful if you set reload _data_interval >0 --> | |
| <connect></connect> <!-- [false] (true / false) whether to connect points if y data is missing --> | |
| <hide_bullets_count></hide_bullets_count> <!-- [] (Number) if there are more then hideBulletsCount points on the screen, bullets can be hidden, to avoid mess. Leave empty, or 0 to show bullets all the time. This rule doesn't influence if custom bullet is defined near y value, in data file --> | |
| <link_target></link_target> <!-- [] (_blank, _top ...) --> | |
| <start_on_axis></start_on_axis> <!-- [true] (true / false) if set to false, graph is moved 1/2 of one series interval from Y axis --> | |
| <colors></colors> <!-- [#FF0000,#0000FF,#00FF00,#FF9900,#CC00CC,#00CCCC,#33FF00,#990000,#000066,#555555] Colors of graphs. if the graph color is not set, color from this array will be used --> | |
| <rescale_on_hide></rescale_on_hide> <!-- [true] (true/false) When you show or hide graphs, the chart recalculates min and max values (rescales the chart). If you don't want this, set this to false. --> | |
| <js_enabled></js_enabled> <!-- [true] (true / false) In case you don't use any flash - JavaScript communication, you shuold set this setting to false - this will save some CPU and will disable the security warning message which appears when opening the chart from hard drive. --> | |
| <background> <!-- BACKGROUND --> | |
| <color></color> <!-- [#FFFFFF] (hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) use 0 if you are using custom swf or jpg for background --> | |
| <border_color></border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha></border_alpha> <!-- [0] (0 - 100) --> | |
| <file></file> <!-- [] (filename) swf or jpg file of a background. Do not use progressive jpg file, it will be not visible with flash player 7 --> | |
| <!-- The chart will look for this file in "path" folder ("path" is set in HTML) --> | |
| </background> | |
| <plot_area> <!-- PLOT AREA (the area between axes) --> | |
| <color></color> <!-- [#FFFFFF](hex color code) Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [0] (0 - 100) if you want it to be different than background color, use bigger than 0 value --> | |
| <border_color>#DADADA</border_color> <!-- [#000000] (hex color code) --> | |
| <border_alpha>100</border_alpha> <!-- [0] (0 - 100) --> | |
| <margins> <!-- plot area margins --> | |
| <left>5</left> <!-- [60](Number / Number%) --> | |
| <top>22</top> <!-- [60](Number / Number%) --> | |
| <right>5</right> <!-- [60](Number / Number%) --> | |
| <bottom>28</bottom> <!-- [80](Number / Number%) --> | |
| </margins> | |
| </plot_area> | |
| <scroller> | |
| <enabled></enabled> <!-- [true] (true / false) whether to show scroller when chart is zoomed or not --> | |
| <y></y> <!-- [] (Number) Y position of scroller. If not set here, will be displayed above plot area --> | |
| <color></color> <!-- [#DADADA] (hex color code) scrollbar color. Separate color codes with comas for gradient --> | |
| <alpha></alpha> <!-- [100] (Number) scrollbar alpha --> | |
| <bg_color></bg_color> <!-- [#F0F0F0] (hex color code) scroller background color. Separate color codes with comas for gradient --> | |
| <bg_alpha></bg_alpha> <!-- [100] (Number) scroller background alpha --> | |
| <height></height> <!-- [10] (Number) scroller height --> | |
| </scroller> | |
| <grid> <!-- GRID --> | |
| <x> <!-- vertical grid --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false](true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [4] (Number) approximate number of gridlines --> | |
| </x> | |
| <y_left> <!-- horizontal grid, Y left axis. Visible only if there is at least one graph assigned to left axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_left> | |
| <y_right> <!-- horizontal grid, Y right axis. Visible only if there is at least one graph assigned to right axis --> | |
| <enabled></enabled> <!-- [true] (true / false) --> | |
| <color></color> <!-- [#000000] (hex color code) --> | |
| <alpha></alpha> <!-- [15] (0 - 100) --> | |
| <dashed></dashed> <!-- [false] (true / false) --> | |
| <dash_length></dash_length> <!-- [5] (Number) --> | |
| <approx_count></approx_count> <!-- [10] (Number) approximate number of gridlines --> | |
| <fill_color></fill_color> <!-- [#FFFFFF] (hex color code) every second area between gridlines will be filled with this color (you will need to set fill_alpha > 0) --> | |
| <fill_alpha></fill_alpha> <!-- [0] (0 - 100) opacity of fill --> | |
| </y_right> | |
| </grid> | |
| <values> <!-- VALUES --> | |
| <x> <!-- x axis --> | |
| <enabled>false</enabled> <!-- [true] (true / false) --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [false] (true / false) to skip or not first value --> | |
| <skip_last></skip_last> <!-- [false] (true / false) to skip or not last value --> | |
| <color></color> <!-- [text_color] (hex color code) --> | |
| <text_size></text_size> <!-- [text_size] (Number) --> | |
| <inside></inside> <!-- [false] (true / false) if set to true, axis values will be displayed inside plot area. This setting will not work for values rotated by 1-89 degrees (0 and 90 only) --> | |
| </x> | |
| <y_left> <!-- y left axis --> | |
| <enabled>false</enabled> <!-- [true] (true / false) --> | |
| <reverse></reverse> <!-- [false] (true / false) whether to reverse this axis values or not. If set to true, values will start from biggest number and will end with a smallest number --> | |
| <rotate></rotate> <!-- [0] (0 - 90) angle of rotation. If you want to rotate by degree from 1 to 89, you must have font.swf file in fonts folder --> | |
| <min></min> <!-- [] (Number) minimum value of this axis. If empty, this value will be calculated automatically. --> | |
| <max></max> <!-- [] (Number) maximum value of this axis. If empty, this value will be calculated automatically --> | |
| <strict_min_max></strict_min_max> <!-- [false] (true / false) by default, if your values are bigger then defined max (or smaller then defined min), max and min is changed so that all the chart would fit to chart area. If you don't want this, set this option to true. --> | |
| <frequency></frequency> <!-- [1] (Number) how often values should be placed, 1 - near every gridline, 2 - near every second gridline... --> | |
| <skip_first></skip_first> <!-- [true] (true |
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)
(Sorry about that, but we can’t show files that are this big right now.)