Java版权案Google上诉被拒 甲骨文“坐等收钱”


  知识产权是相互相通的你造吗?简而言之,就好比你企业拥有一个专利产品,而这件产品还做了商标注册及版权保护,那么当他人侵权了你的专利权后,您就可以全方位的进行知识产权维权了。在近日所发生的谷歌VS甲骨文公司侵权案件中,就很好的诠释了这以情况,由本身的专利许可费用延伸至版权保护费用。最终甲骨文公司“笑到最后,坐等收钱”!具体是怎么回事,且看下文介绍!

  

  案件发展动向

  据悉,谷歌与甲骨文就Java编程语言的版权产生了诉讼,并备受各界人士关注。就在昨日,甲骨文公司赢得最终胜利:美国最高法院拒绝就此案受理谷歌的上诉。美国最高法院的裁定维护了此前的裁决,即允许甲骨文向使用其某些Java编程语言的公司收取专利许可费。对此,谷歌曾表示,它应该可以免费使用Java编程语言,而无需支付专利许可费。

  这起诉讼涉及Java编程语言是否应该以及在多大程度上获得版权保护。谷歌使用Java来设计其Android智能操作系统,该公司曾在一份法庭文件中表示,如果甲骨文在这起诉讼中取胜,将妨碍“大量创新”,因为软件开发者将无法自由地在对方已有工作成果的基础上进行开发。

  

  案件发生的起因

  在美国最高法院做出不受理谷歌上诉的裁定后,这起诉讼将返回到旧金山联邦法院,由该院就谷歌另外提出的“合理使用”的辩护观点举行更多庭审。

  周一,谷歌在一份声明中称:“我们将继续捍卫软件行业的‘互用性(Interoperability )’,后者促进了该行业的创新和竞争。”

  但甲骨文公司表示,有效的版权保护是软件开发的关键。甲骨文总法律顾问多里安·戴利(Dorian Daley)周一称,最高法院的裁定是“创新的胜利”。

  谷歌的Android操作系统可以说是目前全球最流行的智能手机平台。而甲骨文于2010年起诉谷歌,称谷歌的Android系统侵犯了其Java编程语言专利,并同时要求谷歌赔偿约10亿美元的损失。

  

  案件的争议所在

  对于这起诉讼的焦点主要在于,用于连接不同软件的应用程序接口(API)是否也受版权法的保护。

  此前,美国旧金山联邦法院的一名法官裁定,被谷歌抄袭的Java API不受版权保护,并且任何人都可以免费使用。但是这一裁决却被美国联邦巡回上诉法院所推翻,并称必须尊重软件的版权保护,“直到最高法院和议会另行做出决定”。

  对此,法律界的某些学者认为,如果API能够被认定为版权法保护的对象,那就会引发大量无聊的诉讼,并且不利于开发人员去开发使用API的应用。更重要的是,如果甲骨文胜诉,整个软件行业都会受到其影响,因为如果它们的API模仿了热门计算机程序尤其是JavaAPI,很多软件公司就会成为版权侵权诉讼的对象。很多公司必须投入大量资源来开发自己的API,而不是免费使用更成熟编程语言的API

  

  其实这种战役对双方都造成了相应影响,在美国股市周一交易中,谷歌和甲骨文的股价双双下跌。谷歌股价较上一交易日下跌了约1.91%,至521.52美元;甲骨文股价下跌了约1.39%,至40.42美元。

  在今年的早些时候,美国最高法院就是否受理谷歌的上诉还征询了奥巴马政府意见,后者建议最高法院不要受理。奥巴马政府表示,由于甲骨文Java编程语言获得版权保护可能对软件开发造成影响,这起诉讼受到有关各方严重关注,但这些问题可以通过谷歌“合理使用”的抗辩加以解决。

这里给出一个简单的 Java 上传文件漏洞修复代码示例,仅供参考: ```java import java.io.File; import java.io.IOException; import java.util.Arrays; import java.util.List; import java.util.UUID; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.Part; @WebServlet("/upload") public class FileUploadServlet extends HttpServlet { private static final long serialVersionUID = 1L; // 允许上传的文件类型 private static final List<String> allowedTypes = Arrays.asList("image/jpeg", "image/png", "image/gif"); // 允许上传的文件后缀名 private static final List<String> allowedExtensions = Arrays.asList(".jpg", ".jpeg", ".png", ".gif"); // 允许上传的文件最大大小,单位为字节 private static final long maxFileSize = 10 * 1024 * 1024; // 上传文件的存储路径 private static final String uploadPath = "/upload/"; protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); // 获取上传的文件 Part filePart = request.getPart("file"); String fileName = filePart.getSubmittedFileName(); String fileType = filePart.getContentType(); long fileSize = filePart.getSize(); // 检查文件类型是否合法 if (!allowedTypes.contains(fileType)) { response.getWriter().println("上传失败:不支持的文件类型!"); return; } // 检查文件后缀名是否合法 String extension = fileName.substring(fileName.lastIndexOf('.')); if (!allowedExtensions.contains(extension.toLowerCase())) { response.getWriter().println("上传失败:不支持的文件后缀名!"); return; } // 检查文件大小是否合法 if (fileSize > maxFileSize) { response.getWriter().println("上传失败:文件大小超过限制!"); return; } // 生成唯一的文件名 String newFileName = UUID.randomUUID().toString() + extension; // 上传文件到指定目录 String uploadDirPath = request.getServletContext().getRealPath(uploadPath); File uploadDir = new File(uploadDirPath); if (!uploadDir.exists()) { uploadDir.mkdir(); } File uploadedFile = new File(uploadDir, newFileName); filePart.write(uploadedFile.getAbsolutePath()); // 返回上传成功信息 response.getWriter().println("上传成功!"); } } ``` 以上代码实现了文件类型白名单过滤、文件名过滤、文件大小限制和上传文件存储路径限制等功能,可以有效防止常见的 Java 上传文件漏洞。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值