简体   繁体   English

java.lang.SecurityException:禁止的包名称:java.lang

[英]java.lang.SecurityException: Prohibited package name: java.lang

I'm getting the following error when trying to build my very simple webservice project. 尝试构建非常简单的Web服务项目时出现以下错误。 I've given the build.xml, my java file and path values 我已经给出了build.xml,我的java文件和路径值

The class file is getting generated, but service is not getting generated. 正在生成类文件,但未生成服务。

Please help... It's bugging for a looooong time.. 请帮忙。。。

Thanks! 谢谢! :) :)

CLASSPATH=C:\\bea\\weblogic81\\server\\lib\\weblogic.jar;C:\\bea\\weblogic81\\server\\lib \\webservices.jar;C:\\bea\\weblogic81\\server\\lib\\ojdbc14.jar;C:\\j2sdk1.4.2_18\\jre\\l ib\\rt.jar;c:\\ant\\apache-ant-1.5.4\\lib\\ant.jar;c:\\ant\\apache-ant-1.5.4\\lib\\option al.jar; CLASSPATH = C:\\ bea \\ weblogic81 \\ server \\ lib \\ weblogic.jar; C:\\ bea \\ weblogic81 \\ server \\ lib \\ webservices.jar; C:\\ bea \\ weblogic81 \\ server \\ lib \\ ojdbc14.jar; C:\\ j2sdk1.4.2_18 \\ jre \\ l ib \\ rt.jar; c:\\ ant \\ apache-ant-1.5.4 \\ lib \\ ant.jar; c:\\ ant \\ apache-ant-1.5.4 \\ lib \\ option al 。罐;

Path=C:\\Program Files\\Reflection;C:\\oracle\\ora92\\bin;C:\\Program Files\\Oracle\\jre \\1.3.1\\bin;C:\\Program Files\\Oracle\\jre\\1.1.8\\bin;C:\\WINDOWS\\system32;C:\\WINDOWS; 路径= C:\\ Program Files \\ Reflection; C:\\ oracle \\ ora92 \\ bin; C:\\ Program Files \\ Oracle \\ jre \\ 1.3.1 \\ bin; C:\\ Program Files \\ Oracle \\ jre \\ 1.1.8 \\ bin ; C:\\窗口\\ system32; C:\\ WINDOWS; C:\\WINDOWS\\System32\\Wbem;C:\\Program Files\\Intel\\DMIX;C:\\Program Files\\Windows Im aging\\;C:\\j2sdk1.4.2_18\\bin;c:\\j2sdk1.4.2_18\\bin;c:\\ant\\apache-ant-1.5.4\\bin; C:\\ WINDOWS \\ System32 \\ Wbem; C:\\ Program Files \\ Intel \\ DMIX; C:\\ Program Files \\ Windows Imaging \\; C:\\ j2sdk1.4.2_18 \\ bin; c:\\ j2sdk1.4.2_18 \\ bin; C:\\蚂蚁\\ Apache的ANT-1.5.4 \\ BIN; PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH PATHEXT = .COM; .EXE; .BAT; .CMD; .VBS; .VBE; .JS; .JSE; .WSF; .WSH


UserModel.java UserModel.java

import java.sql.*;
import java.util.*;

public class UserModel
{


    Connection con=null;

    Statement st=null;
    Statement st1=null;
    ResultSet rs=null;
    String nm,age,course,address,mob,IdNum1;
    int IdNum,id;
    int x;
    int check=0;
    ArrayList list=new ArrayList();
    ArrayList eptylist=new ArrayList();
    UserModel() 
    {
    }

    public int insert(String name,String age,String course,String address,int Mob) throws  SQLException, ClassNotFoundException 

    {
        Class.forName("oracle.jdbc.driver.OracleDriver"); 
        Connection con=DriverManager.getConnection("jdbc:oracle:thin:@192.168.142.22:40401:MKTMRM9","mrm2","Marms*123.");

          st=con.createStatement();

          x= st.executeUpdate("insert into student values(seqno.nextval,'"+name+"','"+age+"','"+course+"','"+address+"','"+Mob+"')");

          if(x==1)
        {
        st1=con.createStatement();       
         rs=st.executeQuery("select seqno.currval from student");

          while(rs.next())
          {   

              IdNum=rs.getInt(1);

          }
        return IdNum;

        }
               else
        return 0;

    }   

    public ArrayList getDetails(int id1) throws  SQLException, ClassNotFoundException
    {
        Class.forName("oracle.jdbc.driver.OracleDriver"); 
        Connection con=DriverManager.getConnection("jdbc:oracle:thin:@192.168.142.22:40401:MKTMRM9","mrm2","Marms*123.");
        st=con.createStatement();
        rs=st.executeQuery("select * from student where StudentId="+id1);
        while(rs.next())
        {
            check++;
            id=rs.getInt(1);
            nm=rs.getString(2);
            age=rs.getString(3);
            course=rs.getString(4);
            address=rs.getString(5);
            mob=rs.getString(6);

        }

        list.add(new Integer(id));
        list.add(nm);
        list.add(age);
        list.add(course);
        list.add(address);
        list.add(mob);
        if(check!=0)
        return list;
        else 
        return eptylist; 
    }

}

build.xml build.xml文件

<?xml version="1.0"?> 
<project name="WebServiceServer" default="create" basedir=".">

<taskdef name="servicegen" classname="weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask"/>


<property name="src" value=".\src"/>
<property name="build" value=".\build"/>
<property name="namespace" value="http://localhost:7001/UserModel"/>

<target name="create">

<javac srcdir="${src}" destdir="${build}" includes="**/*.java">
</javac>


<servicegen
    destEar="myWebServer.ear"
    warName="mywebserver.war"
    contextURI="WebServiceServer">

    <service
        javaClassComponents="UserModel"
        targetNamespace="${namespace}"
        serviceName="UserModel"
        serviceURI="/UserModel"
        generateTypes="True"
        expandMethods="True"
        style="rpc">
    </service>

    <classpath>
        <pathelement path="${build}"/>
        <pathelement path="${java.class.path}"/>
        <pathelement path="{lib}/ojdbc14.jar"/>
    </classpath>

</servicegen>

</target>

</project>

error from console - while ant is run 控制台出现错误-运行ant时

Buildfile: build.xml

    create:
        [javac] Compiling 1 source file to C:\Documents and Settings\344756\New\MyWe
    b\WebServiceServer\build
    [servicegen] Generating service "UserModel" ...
    [servicegen] java.lang.SecurityException: Prohibited package name: java.lang
    [servicegen]    at java.lang.ClassLoader.defineClass(ClassLoader.java:524)
    [servicegen]    at java.security.SecureClassLoader.defineClass(SecureClassLoader
    .java:123)
    [servicegen]    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass
    (GenericClassLoader.java:476)
    [servicegen]    at weblogic.utils.classloaders.GenericClassLoader.findClass(Gene
    ricClassLoader.java:181)
    [servicegen]    at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
    [servicegen]    at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
    [servicegen]    at weblogic.utils.classloaders.GenericClassLoader.loadClass(Gene
    ricClassLoader.java:223)
    [servicegen]    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)

    [servicegen]    at java.lang.Class.forName0(Native Method)
    [servicegen]    at java.lang.Class.forName(Class.java:219)
    [servicegen]    at weblogic.xml.schema.binding.internal.codegen.Compiler.loadCla
    ss(Compiler.java:641)
    [servicegen]    at weblogic.xml.schema.binding.internal.codegen.Compiler.addToMa
    pping(Compiler.java:450)
    [servicegen]    at weblogic.xml.schema.binding.internal.codegen.Compiler.compile
    (Compiler.java:175)
    [servicegen]    at weblogic.xml.schema.binding.internal.XSDTypeMappingBuilder.ma
    pClass(XSDTypeMappingBuilder.java:89)
    [servicegen]    at weblogic.xml.schema.binding.internal.XSDTypeMappingBuilder.ma
    pClass(XSDTypeMappingBuilder.java:102)
    [servicegen]    at weblogic.xml.schema.binding.internal.TypeMappingBuilderBase.a
    ddMapping(TypeMappingBuilderBase.java:180)
    [servicegen]    at weblogic.ant.taskdefs.webservices.autotype.ComponentAutoTyper
    .addMapping(ComponentAutoTyper.java:88)
    [servicegen]    at weblogic.ant.taskdefs.webservices.autotype.ComponentAutoTyper
    .mapComponent(ComponentAutoTyper.java:141)
    [servicegen]    at weblogic.ant.taskdefs.webservices.autotype.JavaAutoTyper.run(
    JavaAutoTyper.java:81)
    [servicegen]    at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.r
    unAutoTyper(ServiceGenTask.java:367)
    [servicegen]    at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.g
    enerateService(ServiceGenTask.java:313)
    [servicegen]    at weblogic.ant.taskdefs.webservices.servicegen.ServiceGenTask.e
    xecute(ServiceGenTask.java:181)
    [servicegen]    at org.apache.tools.ant.Task.perform(Task.java:341)
    [servicegen]    at org.apache.tools.ant.Target.execute(Target.java:309)
    [servicegen]    at org.apache.tools.ant.Target.performTasks(Target.java:336)
    [servicegen]    at org.apache.tools.ant.Project.executeTarget(Project.java:1339)

    [servicegen]    at org.apache.tools.ant.Project.executeTargets(Project.java:1255
    )
    [servicegen]    at org.apache.tools.ant.Main.runBuild(Main.java:609)
    [servicegen]    at org.apache.tools.ant.Main.start(Main.java:196)
    [servicegen]    at org.apache.tools.ant.Main.main(Main.java:235)

    BUILD FAILED
    file:C:/Documents%20and%20Settings/344756/New/MyWeb/WebServiceServer/build.xml:2
    0: java.lang.SecurityException: Prohibited package name: java.lang

    Total time: 1 second

What package are your own classes in? 您自己的课程在哪个包中?

This error happens because it's forbidden to put your own classes in the package java.lang . 发生此错误是因为禁止将自己的类放入包java.lang It looks like you are trying to compile a class that's in the package java.lang . 看起来您正在尝试编译java.lang包中的类。

If your own classes are not in a package at all (you don't have a package statement at the top of your source files), then put them in a package. 如果您自己的类根本不在包中(源文件顶部没有package语句),则将它们放在包中。

If you make sure your project package name is not start with Java or javax, try to use the following way: 如果确保您的项目包名称不是以Java或javax开头,请尝试使用以下方式:

When I run: 当我跑步时:

mvn clean install     

Command in CLI, it shows build success, when I use Eclipse compile project, it shows CLI中的命令,它显示构建成功,当我使用Eclipse编译项目时,它显示

java.lang.SecurityException: Prohibited package name: java.lang.annotation java.lang.SecurityException:禁止的软件包名称:java.lang.annotation

But my parnter project was right, I think it's IDE or compile environment problem, when I downgrade jdk version from 1.8x to 1.7x, the problem is gone. 但是我的parnter项目是正确的,我认为这是IDE或编译环境问题,当我将jdk版本从1.8x降级到1.7x时,问题就消失了。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 线程“main”中的异常java.lang.SecurityException:禁止的包名:java.lang - Exception in thread “main” java.lang.SecurityException: Prohibited package name: java.lang MyClassLoader.defineClass java.lang.SecurityException:禁止的程序包名称:java.lang - MyClassLoader.defineClass java.lang.SecurityException: Prohibited package name: java.lang 为什么`java.lang.SecurityException:禁止包名:java`是必需的? - why `java.lang.SecurityException: Prohibited package name: java` is required? 运行jar文件get java.lang.SecurityException:禁止包名:java.sql - Run jar file get java.lang.SecurityException: Prohibited package name: java.sql 线程“main”中的异常java.lang.SecurityException:禁止包名:java.sql - Exception in thread "main" java.lang.SecurityException: Prohibited package name: java.sql Exception in thread “main” java.lang.SecurityException: Prohibited package name: java.io - Exception in thread “main” java.lang.SecurityException: Prohibited package name: java.io “java.lang.SecurityException:禁止的包名:java.sql”错误仅在Eclipse外部执行时发生 - “java.lang.SecurityException: Prohibited package name: java.sql” error happen only when executing outside of Eclipse java.lang.SecurityException: - java.lang.SecurityException: Java.lang.securityException - Java.lang.securityException 获取“ java.lang.SecurityException” - Getting “java.lang.SecurityException”
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM